ethers-rs/ethers-solc/test-data/out/compiler-out-17.json

56266 lines
3.5 MiB

{
"contracts": {
"src/Contract.sol": {
"BasicToken": {
"abi": [
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "balances",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "maximumFee",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "basisPointsRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {
"balanceOf(address)": {
"details": "Gets the balance of the specified address.",
"params": {
"_owner": "The address to query the the balance of."
},
"return": "An uint representing the amount owned by the passed address."
},
"transfer(address,uint256)": {
"details": "transfer token for a specified address",
"params": {
"_to": "The address to transfer to.",
"_value": "The amount to be transferred."
}
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
}
},
"title": "Basic token"
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"_totalSupply()": "3eaaf86b",
"balanceOf(address)": "70a08231",
"balances(address)": "27e235e3",
"basisPointsRate()": "dd644f72",
"maximumFee()": "35390714",
"owner()": "8da5cb5b",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferOwnership(address)": "f2fde38b"
}
},
"metadata": "",
"userdoc": {
"methods": {}
}
},
"BlackList": {
"abi": [
{
"constant": false,
"inputs": [
{
"name": "_evilUser",
"type": "address"
}
],
"name": "addBlackList",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "balances",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "maximumFee",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_maker",
"type": "address"
}
],
"name": "getBlackListStatus",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getOwner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "basisPointsRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "isBlackListed",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_clearedUser",
"type": "address"
}
],
"name": "removeBlackList",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_blackListedUser",
"type": "address"
}
],
"name": "destroyBlackFunds",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_blackListedUser",
"type": "address"
},
{
"indexed": false,
"name": "_balance",
"type": "uint256"
}
],
"name": "DestroyedBlackFunds",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_user",
"type": "address"
}
],
"name": "AddedBlackList",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_user",
"type": "address"
}
],
"name": "RemovedBlackList",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {
"balanceOf(address)": {
"details": "Gets the balance of the specified address.",
"params": {
"_owner": "The address to query the the balance of."
},
"return": "An uint representing the amount owned by the passed address."
},
"transfer(address,uint256)": {
"details": "transfer token for a specified address",
"params": {
"_to": "The address to transfer to.",
"_value": "The amount to be transferred."
}
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
}
}
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"_totalSupply()": "3eaaf86b",
"addBlackList(address)": "0ecb93c0",
"balanceOf(address)": "70a08231",
"balances(address)": "27e235e3",
"basisPointsRate()": "dd644f72",
"destroyBlackFunds(address)": "f3bdc228",
"getBlackListStatus(address)": "59bf1abe",
"getOwner()": "893d20e8",
"isBlackListed(address)": "e47d6060",
"maximumFee()": "35390714",
"owner()": "8da5cb5b",
"removeBlackList(address)": "e4997dc5",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferOwnership(address)": "f2fde38b"
}
},
"metadata": "",
"userdoc": {
"methods": {
"getBlackListStatus(address)": {
"notice": "//// Getters to allow the same blacklist to be used also by other contracts (including upgraded Tether) ///////"
}
}
}
},
"ERC20": {
"abi": [
{
"constant": false,
"inputs": [
{
"name": "spender",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "from",
"type": "address"
},
{
"name": "to",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "who",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "to",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "owner",
"type": "address"
},
{
"name": "spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {},
"title": "ERC20 interface"
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"_totalSupply()": "3eaaf86b",
"allowance(address,address)": "dd62ed3e",
"approve(address,uint256)": "095ea7b3",
"balanceOf(address)": "70a08231",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferFrom(address,address,uint256)": "23b872dd"
}
},
"metadata": "",
"userdoc": {
"methods": {}
}
},
"ERC20Basic": {
"abi": [
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "who",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "to",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {},
"title": "ERC20Basic"
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"_totalSupply()": "3eaaf86b",
"balanceOf(address)": "70a08231",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb"
}
},
"metadata": "",
"userdoc": {
"methods": {}
}
},
"Ownable": {
"abi": [
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
}
],
"devdoc": {
"methods": {
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
}
},
"title": "Ownable"
},
"evm": {
"assembly": " /* \"src/Contract.sol\":1165:1888 contract Ownable {... */\n mstore(0x40, 0x60)\n /* \"src/Contract.sol\":1342:1403 function Ownable() public {... */\n jumpi(tag_1, iszero(callvalue))\n 0x0\n dup1\n revert\ntag_1:\n /* \"src/Contract.sol\":1378:1383 owner */\n 0x0\n /* \"src/Contract.sol\":1378:1396 owner = msg.sender */\n dup1\n sload\n sub(exp(0x2, 0xa0), 0x1)\n /* \"src/Contract.sol\":1386:1396 msg.sender */\n caller\n /* \"src/Contract.sol\":1378:1396 owner = msg.sender */\n and\n not(sub(exp(0x2, 0xa0), 0x1))\n swap1\n swap2\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":1165:1888 contract Ownable {... */\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x0\n codecopy\n 0x0\n return\nstop\n\nsub_0: assembly {\n /* \"src/Contract.sol\":1165:1888 contract Ownable {... */\n mstore(0x40, 0x60)\n jumpi(tag_1, lt(calldatasize, 0x4))\n and(div(calldataload(0x0), 0x100000000000000000000000000000000000000000000000000000000), 0xffffffff)\n 0x8da5cb5b\n dup2\n eq\n tag_2\n jumpi\n dup1\n 0xf2fde38b\n eq\n tag_3\n jumpi\n tag_1:\n 0x0\n dup1\n revert\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_2:\n jumpi(tag_4, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_4:\n tag_5\n jump(tag_6)\n tag_5:\n mload(0x40)\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_3:\n jumpi(tag_7, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_7:\n tag_8\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_9)\n tag_8:\n stop\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_6:\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0x0))\n dup2\n jump\t// out\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_9:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_11\n jumpi\n 0x0\n dup1\n revert\n tag_11:\n /* \"src/Contract.sol\":1814:1836 newOwner != address(0) */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n iszero\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_13\n jumpi\n /* \"src/Contract.sol\":1852:1857 owner */\n 0x0\n /* \"src/Contract.sol\":1852:1868 owner = newOwner */\n dup1\n sload\n 0xffffffffffffffffffffffff0000000000000000000000000000000000000000\n and\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_13:\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n pop\n jump\t// out\n\n auxdata: 0xa165627a7a72305820c6a93faac9eead78138000d369532624c4f3bbf41fe0af8c23367a32bb2196030029\n}\n",
"bytecode": {
"linkReferences": {},
"object": "6060604052341561000f57600080fd5b60008054600160a060020a033316600160a060020a031990911617905561018a8061003b6000396000f30060606040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638da5cb5b8114610050578063f2fde38b1461008c575b600080fd5b341561005b57600080fd5b6100636100ba565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561009757600080fd5b6100b873ffffffffffffffffffffffffffffffffffffffff600435166100d6565b005b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146100fe57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561015b57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b505600a165627a7a72305820c6a93faac9eead78138000d369532624c4f3bbf41fe0af8c23367a32bb2196030029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE CALLVALUE ISZERO PUSH2 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB CALLER AND PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE PUSH2 0x18A DUP1 PUSH2 0x3B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4B JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x8DA5CB5B DUP2 EQ PUSH2 0x50 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x8C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x5B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x63 PUSH2 0xBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xD6 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xFE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x15B JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc6 0xa9 0x3f 0xaa 0xc9 0xee 0xad PUSH25 0x138000D369532624C4F3BBF41FE0AF8C23367A32BB21960300 0x29 ",
"sourceMap": "1165:723:0:-;;;1342:61;;;;;;;;1378:5;:18;;-1:-1:-1;;;;;1386:10:0;1378:18;-1:-1:-1;;;;;;1378:18:0;;;;;;1165:723;;;;;;"
},
"deployedBytecode": {
"linkReferences": {},
"object": "60606040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638da5cb5b8114610050578063f2fde38b1461008c575b600080fd5b341561005b57600080fd5b6100636100ba565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561009757600080fd5b6100b873ffffffffffffffffffffffffffffffffffffffff600435166100d6565b005b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146100fe57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561015b57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b505600a165627a7a72305820c6a93faac9eead78138000d369532624c4f3bbf41fe0af8c23367a32bb2196030029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4B JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x8DA5CB5B DUP2 EQ PUSH2 0x50 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x8C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x5B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x63 PUSH2 0xBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xD6 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xFE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x15B JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc6 0xa9 0x3f 0xaa 0xc9 0xee 0xad PUSH25 0x138000D369532624C4F3BBF41FE0AF8C23367A32BB21960300 0x29 ",
"sourceMap": "1165:723:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;1188:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1738:147;;;;;;;;;;;;;;;;;;1188:20;;;;;;:::o;1738:147::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;1814:22;;;;1810:69;;1852:5;:16;;;;;;;;;;1810:69;1738:147;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "78800",
"executionCost": "20497",
"totalCost": "99297"
},
"external": {
"owner()": "388",
"transferOwnership(address)": "20654"
}
},
"legacyAssembly": {
".code": [
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "60"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "40"
},
{
"begin": 1165,
"end": 1888,
"name": "MSTORE"
},
{
"begin": 1342,
"end": 1403,
"name": "CALLVALUE"
},
{
"begin": 1342,
"end": 1403,
"name": "ISZERO"
},
{
"begin": 1342,
"end": 1403,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 1342,
"end": 1403,
"name": "JUMPI"
},
{
"begin": 1342,
"end": 1403,
"name": "PUSH",
"value": "0"
},
{
"begin": 1342,
"end": 1403,
"name": "DUP1"
},
{
"begin": 1342,
"end": 1403,
"name": "REVERT"
},
{
"begin": 1342,
"end": 1403,
"name": "tag",
"value": "1"
},
{
"begin": 1342,
"end": 1403,
"name": "JUMPDEST"
},
{
"begin": 1378,
"end": 1383,
"name": "PUSH",
"value": "0"
},
{
"begin": 1378,
"end": 1396,
"name": "DUP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": 1386,
"end": 1396,
"name": "CALLER"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": -1,
"end": -1,
"name": "NOT"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP2"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": 1378,
"end": 1396,
"name": "OR"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SSTORE"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH #[$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1165,
"end": 1888,
"name": "DUP1"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH [$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "0"
},
{
"begin": 1165,
"end": 1888,
"name": "CODECOPY"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "0"
},
{
"begin": 1165,
"end": 1888,
"name": "RETURN"
}
],
".data": {
"0": {
".auxdata": "a165627a7a72305820c6a93faac9eead78138000d369532624c4f3bbf41fe0af8c23367a32bb2196030029",
".code": [
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "60"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "40"
},
{
"begin": 1165,
"end": 1888,
"name": "MSTORE"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "4"
},
{
"begin": 1165,
"end": 1888,
"name": "CALLDATASIZE"
},
{
"begin": 1165,
"end": 1888,
"name": "LT"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 1165,
"end": 1888,
"name": "JUMPI"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "0"
},
{
"begin": 1165,
"end": 1888,
"name": "CALLDATALOAD"
},
{
"begin": 1165,
"end": 1888,
"name": "DIV"
},
{
"begin": 1165,
"end": 1888,
"name": "AND"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "8DA5CB5B"
},
{
"begin": 1165,
"end": 1888,
"name": "DUP2"
},
{
"begin": 1165,
"end": 1888,
"name": "EQ"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH [tag]",
"value": "2"
},
{
"begin": 1165,
"end": 1888,
"name": "JUMPI"
},
{
"begin": 1165,
"end": 1888,
"name": "DUP1"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "F2FDE38B"
},
{
"begin": 1165,
"end": 1888,
"name": "EQ"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH [tag]",
"value": "3"
},
{
"begin": 1165,
"end": 1888,
"name": "JUMPI"
},
{
"begin": 1165,
"end": 1888,
"name": "tag",
"value": "1"
},
{
"begin": 1165,
"end": 1888,
"name": "JUMPDEST"
},
{
"begin": 1165,
"end": 1888,
"name": "PUSH",
"value": "0"
},
{
"begin": 1165,
"end": 1888,
"name": "DUP1"
},
{
"begin": 1165,
"end": 1888,
"name": "REVERT"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "2"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "CALLVALUE"
},
{
"begin": 1188,
"end": 1208,
"name": "ISZERO"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "4"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPI"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP1"
},
{
"begin": 1188,
"end": 1208,
"name": "REVERT"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "4"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "5"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "5"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "40"
},
{
"begin": 1188,
"end": 1208,
"name": "MLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP1"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP2"
},
{
"begin": 1188,
"end": 1208,
"name": "AND"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP2"
},
{
"begin": 1188,
"end": 1208,
"name": "MSTORE"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "20"
},
{
"begin": 1188,
"end": 1208,
"name": "ADD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "40"
},
{
"begin": 1188,
"end": 1208,
"name": "MLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP1"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP2"
},
{
"begin": 1188,
"end": 1208,
"name": "SUB"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP1"
},
{
"begin": 1188,
"end": 1208,
"name": "RETURN"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "3"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLVALUE"
},
{
"begin": 1738,
"end": 1885,
"name": "ISZERO"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPI"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "0"
},
{
"begin": 1738,
"end": 1885,
"name": "DUP1"
},
{
"begin": 1738,
"end": 1885,
"name": "REVERT"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "7"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "4"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLDATALOAD"
},
{
"begin": 1738,
"end": 1885,
"name": "AND"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "8"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "STOP"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "6"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "SLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1188,
"end": 1208,
"name": "AND"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP2"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "9"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "11"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 1814,
"end": 1836,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1814,
"end": 1836,
"name": "DUP2"
},
{
"begin": 1814,
"end": 1836,
"name": "AND"
},
{
"begin": 1814,
"end": 1836,
"name": "ISZERO"
},
{
"begin": 1810,
"end": 1879,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPI"
},
{
"begin": 1852,
"end": 1857,
"name": "PUSH",
"value": "0"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SLOAD"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP4"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "OR"
},
{
"begin": 1852,
"end": 1868,
"name": "SWAP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SSTORE"
},
{
"begin": 1810,
"end": 1879,
"name": "tag",
"value": "13"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "POP"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP",
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"owner()": "8da5cb5b",
"transferOwnership(address)": "f2fde38b"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.4.18+commit.9cf6e910\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}],\"devdoc\":{\"methods\":{\"transferOwnership(address)\":{\"details\":\"Allows the current owner to transfer control of the contract to a newOwner.\",\"params\":{\"newOwner\":\"The address to transfer ownership to.\"}}},\"title\":\"Ownable\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/Contract.sol\":\"Ownable\"},\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":1000000},\"remappings\":[\":src/=src/\"]},\"sources\":{\"src/Contract.sol\":{\"keccak256\":\"0x3e0d611f53491f313ae035797ed7ecfd1dfd8db8fef8f82737e6f0cd86d71de7\",\"urls\":[\"bzzr://9c33025fa9d1b8389e4c7c9534a1d70fad91c6c2ad70eb5e4b7dc3a701a5f892\"]}},\"version\":1}",
"userdoc": {
"methods": {}
}
},
"Pausable": {
"abi": [
{
"constant": false,
"inputs": [],
"name": "unpause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "paused",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "pause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [],
"name": "Pause",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "Unpause",
"type": "event"
}
],
"devdoc": {
"methods": {
"pause()": {
"details": "called by the owner to pause, triggers stopped state"
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
},
"unpause()": {
"details": "called by the owner to unpause, returns to normal state"
}
},
"title": "Pausable"
},
"evm": {
"assembly": " /* \"src/Contract.sol\":7314:8059 contract Pausable is Ownable {... */\n mstore(0x40, 0x60)\n /* \"src/Contract.sol\":7405:7410 false */\n 0x0\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n dup1\n sload\n sub(exp(0x2, 0xa0), 0x1)\n /* \"src/Contract.sol\":1386:1396 msg.sender */\n caller\n /* \"src/Contract.sol\":1378:1396 owner = msg.sender */\n and\n not(sub(exp(0x2, 0xa8), 0x1))\n swap1\n swap2\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":7314:8059 contract Pausable is Ownable {... */\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x0\n codecopy\n 0x0\n return\nstop\n\nsub_0: assembly {\n /* \"src/Contract.sol\":7314:8059 contract Pausable is Ownable {... */\n mstore(0x40, 0x60)\n jumpi(tag_1, lt(calldatasize, 0x4))\n and(div(calldataload(0x0), 0x100000000000000000000000000000000000000000000000000000000), 0xffffffff)\n 0x3f4ba83a\n dup2\n eq\n tag_2\n jumpi\n dup1\n 0x5c975abb\n eq\n tag_3\n jumpi\n dup1\n 0x8456cb59\n eq\n tag_4\n jumpi\n dup1\n 0x8da5cb5b\n eq\n tag_5\n jumpi\n dup1\n 0xf2fde38b\n eq\n tag_6\n jumpi\n tag_1:\n 0x0\n dup1\n revert\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n tag_2:\n jumpi(tag_7, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_7:\n tag_8\n jump(tag_9)\n tag_8:\n stop\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n tag_3:\n jumpi(tag_10, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_10:\n tag_11\n jump(tag_12)\n tag_11:\n mload(0x40)\n swap1\n iszero\n iszero\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n tag_4:\n jumpi(tag_13, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_13:\n tag_8\n jump(tag_15)\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_5:\n jumpi(tag_16, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_16:\n tag_17\n jump(tag_18)\n tag_17:\n mload(0x40)\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_6:\n jumpi(tag_19, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_19:\n tag_8\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_21)\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n tag_9:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_23\n jumpi\n 0x0\n dup1\n revert\n tag_23:\n /* \"src/Contract.sol\":7705:7711 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7697:7712 require(paused) */\n iszero\n iszero\n tag_25\n jumpi\n 0x0\n dup1\n revert\n tag_25:\n /* \"src/Contract.sol\":8032:8037 false */\n 0x0\n /* \"src/Contract.sol\":8023:8037 paused = false */\n dup1\n sload\n 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff\n and\n swap1\n sstore\n /* \"src/Contract.sol\":8043:8052 Unpause() */\n 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n jump\t// out\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n tag_12:\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n tag_15:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_28\n jumpi\n 0x0\n dup1\n revert\n tag_28:\n /* \"src/Contract.sol\":7553:7559 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7552:7559 !paused */\n iszero\n /* \"src/Contract.sol\":7544:7560 require(!paused) */\n tag_30\n jumpi\n 0x0\n dup1\n revert\n tag_30:\n /* \"src/Contract.sol\":7857:7863 paused */\n 0x0\n /* \"src/Contract.sol\":7857:7870 paused = true */\n dup1\n sload\n 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff\n and\n 0x10000000000000000000000000000000000000000\n or\n swap1\n sstore\n /* \"src/Contract.sol\":7876:7883 Pause() */\n 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n jump\t// out\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_18:\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0x0))\n dup2\n jump\t// out\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_21:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_33\n jumpi\n 0x0\n dup1\n revert\n tag_33:\n /* \"src/Contract.sol\":1814:1836 newOwner != address(0) */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n iszero\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_35\n jumpi\n /* \"src/Contract.sol\":1852:1857 owner */\n 0x0\n /* \"src/Contract.sol\":1852:1868 owner = newOwner */\n dup1\n sload\n 0xffffffffffffffffffffffff0000000000000000000000000000000000000000\n and\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_35:\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n pop\n jump\t// out\n\n auxdata: 0xa165627a7a723058203eab31f3b2cbee25ec6b08cf0580afe43ebf9244126362b101da54fb9f11131b0029\n}\n",
"bytecode": {
"linkReferences": {},
"object": "606060405260008054600160a060020a033316600160a860020a031990911617905561037d806100306000396000f30060606040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633f4ba83a81146100715780635c975abb146100865780638456cb59146100ad5780638da5cb5b146100c0578063f2fde38b146100fc575b600080fd5b341561007c57600080fd5b610084610128565b005b341561009157600080fd5b6100996101cf565b604051901515815260200160405180910390f35b34156100b857600080fd5b6100846101f0565b34156100cb57600080fd5b6100d36102ad565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010757600080fd5b61008473ffffffffffffffffffffffffffffffffffffffff600435166102c9565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461015057600080fd5b60005474010000000000000000000000000000000000000000900460ff16151561017957600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60005474010000000000000000000000000000000000000000900460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461021857600080fd5b60005474010000000000000000000000000000000000000000900460ff161561024057600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146102f157600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561034e57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b505600a165627a7a723058203eab31f3b2cbee25ec6b08cf0580afe43ebf9244126362b101da54fb9f11131b0029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB CALLER AND PUSH1 0x1 PUSH1 0xA8 PUSH1 0x2 EXP SUB NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE PUSH2 0x37D DUP1 PUSH2 0x30 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x6C JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x3F4BA83A DUP2 EQ PUSH2 0x71 JUMPI DUP1 PUSH4 0x5C975ABB EQ PUSH2 0x86 JUMPI DUP1 PUSH4 0x8456CB59 EQ PUSH2 0xAD JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0xC0 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xFC JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH2 0x128 JUMP JUMPDEST STOP JUMPDEST CALLVALUE ISZERO PUSH2 0x91 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x99 PUSH2 0x1CF JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0xB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH2 0x1F0 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0xCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3 PUSH2 0x2AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x107 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x2C9 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x150 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO PUSH2 0x179 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 SSTORE PUSH32 0x7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x218 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x240 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH21 0x10000000000000000000000000000000000000000 OR SWAP1 SSTORE PUSH32 0x6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x2F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x34E JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 RETURNDATACOPY 0xab BALANCE RETURN 0xb2 0xcb 0xee 0x25 0xec PUSH12 0x8CF0580AFE43EBF92441263 PUSH3 0xB101DA SLOAD CREATE2 SWAP16 GT SGT 0x1b STOP 0x29 ",
"sourceMap": "7314:745:0:-;;;7405:5;7384:26;;-1:-1:-1;;;;;1386:10:0;1378:18;-1:-1:-1;;;;;;1378:18:0;;;;;;7314:745;;;;;;"
},
"deployedBytecode": {
"linkReferences": {},
"object": "60606040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633f4ba83a81146100715780635c975abb146100865780638456cb59146100ad5780638da5cb5b146100c0578063f2fde38b146100fc575b600080fd5b341561007c57600080fd5b610084610128565b005b341561009157600080fd5b6100996101cf565b604051901515815260200160405180910390f35b34156100b857600080fd5b6100846101f0565b34156100cb57600080fd5b6100d36102ad565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010757600080fd5b61008473ffffffffffffffffffffffffffffffffffffffff600435166102c9565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461015057600080fd5b60005474010000000000000000000000000000000000000000900460ff16151561017957600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60005474010000000000000000000000000000000000000000900460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461021857600080fd5b60005474010000000000000000000000000000000000000000900460ff161561024057600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146102f157600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561034e57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b505600a165627a7a723058203eab31f3b2cbee25ec6b08cf0580afe43ebf9244126362b101da54fb9f11131b0029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x6C JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x3F4BA83A DUP2 EQ PUSH2 0x71 JUMPI DUP1 PUSH4 0x5C975ABB EQ PUSH2 0x86 JUMPI DUP1 PUSH4 0x8456CB59 EQ PUSH2 0xAD JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0xC0 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xFC JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH2 0x128 JUMP JUMPDEST STOP JUMPDEST CALLVALUE ISZERO PUSH2 0x91 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x99 PUSH2 0x1CF JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0xB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH2 0x1F0 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0xCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD3 PUSH2 0x2AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x107 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x84 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x2C9 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x150 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO PUSH2 0x179 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 SSTORE PUSH32 0x7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x218 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x240 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH21 0x10000000000000000000000000000000000000000 OR SWAP1 SSTORE PUSH32 0x6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x2F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x34E JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 RETURNDATACOPY 0xab BALANCE RETURN 0xb2 0xcb 0xee 0x25 0xec PUSH12 0x8CF0580AFE43EBF92441263 PUSH3 0xB101DA SLOAD CREATE2 SWAP16 GT SGT 0x1b STOP 0x29 ",
"sourceMap": "7314:745:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7970:87;;;;;;;;;;;;;;7384:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7803:85;;;;;;;;;;;;1188:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1738:147;;;;;;;;;;;;;;;;7970:87;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;7705:6;;;;;;;7697:15;;;;;;;;8032:5;8023:14;;;;;;8043:9;;;;;;;;;;7970:87::o;7384:26::-;;;;;;;;;:::o;7803:85::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;7553:6;;;;;;;7552:7;7544:16;;;;;;7857:6;:13;;;;;;;;7876:7;;;;;;;;;;7803:85::o;1188:20::-;;;;;;:::o;1738:147::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;1814:22;;;;1810:69;;1852:5;:16;;;;;;;;;;1810:69;1738:147;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "178600",
"executionCost": "20569",
"totalCost": "199169"
},
"external": {
"owner()": "454",
"pause()": "21644",
"paused()": "418",
"transferOwnership(address)": "20720",
"unpause()": "21597"
}
},
"legacyAssembly": {
".code": [
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "60"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "40"
},
{
"begin": 7314,
"end": 8059,
"name": "MSTORE"
},
{
"begin": 7405,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP1"
},
{
"begin": 7384,
"end": 7410,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": 1386,
"end": 1396,
"name": "CALLER"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A8"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": -1,
"end": -1,
"name": "NOT"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP2"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": 1378,
"end": 1396,
"name": "OR"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SSTORE"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH #[$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "0"
},
{
"begin": 7314,
"end": 8059,
"name": "CODECOPY"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "0"
},
{
"begin": 7314,
"end": 8059,
"name": "RETURN"
}
],
".data": {
"0": {
".auxdata": "a165627a7a723058203eab31f3b2cbee25ec6b08cf0580afe43ebf9244126362b101da54fb9f11131b0029",
".code": [
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "60"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "40"
},
{
"begin": 7314,
"end": 8059,
"name": "MSTORE"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "4"
},
{
"begin": 7314,
"end": 8059,
"name": "CALLDATASIZE"
},
{
"begin": 7314,
"end": 8059,
"name": "LT"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "0"
},
{
"begin": 7314,
"end": 8059,
"name": "CALLDATALOAD"
},
{
"begin": 7314,
"end": 8059,
"name": "DIV"
},
{
"begin": 7314,
"end": 8059,
"name": "AND"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "3F4BA83A"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP2"
},
{
"begin": 7314,
"end": 8059,
"name": "EQ"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "2"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "5C975ABB"
},
{
"begin": 7314,
"end": 8059,
"name": "EQ"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "3"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "8456CB59"
},
{
"begin": 7314,
"end": 8059,
"name": "EQ"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "4"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "8DA5CB5B"
},
{
"begin": 7314,
"end": 8059,
"name": "EQ"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "5"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "F2FDE38B"
},
{
"begin": 7314,
"end": 8059,
"name": "EQ"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPI"
},
{
"begin": 7314,
"end": 8059,
"name": "tag",
"value": "1"
},
{
"begin": 7314,
"end": 8059,
"name": "JUMPDEST"
},
{
"begin": 7314,
"end": 8059,
"name": "PUSH",
"value": "0"
},
{
"begin": 7314,
"end": 8059,
"name": "DUP1"
},
{
"begin": 7314,
"end": 8059,
"name": "REVERT"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "2"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 7970,
"end": 8057,
"name": "CALLVALUE"
},
{
"begin": 7970,
"end": 8057,
"name": "ISZERO"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPI"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH",
"value": "0"
},
{
"begin": 7970,
"end": 8057,
"name": "DUP1"
},
{
"begin": 7970,
"end": 8057,
"name": "REVERT"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "7"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMP"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "8"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 7970,
"end": 8057,
"name": "STOP"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "3"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "CALLVALUE"
},
{
"begin": 7384,
"end": 7410,
"name": "ISZERO"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPI"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP1"
},
{
"begin": 7384,
"end": 7410,
"name": "REVERT"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "10"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "12"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMP"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "11"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "40"
},
{
"begin": 7384,
"end": 7410,
"name": "MLOAD"
},
{
"begin": 7384,
"end": 7410,
"name": "SWAP1"
},
{
"begin": 7384,
"end": 7410,
"name": "ISZERO"
},
{
"begin": 7384,
"end": 7410,
"name": "ISZERO"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP2"
},
{
"begin": 7384,
"end": 7410,
"name": "MSTORE"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "20"
},
{
"begin": 7384,
"end": 7410,
"name": "ADD"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "40"
},
{
"begin": 7384,
"end": 7410,
"name": "MLOAD"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP1"
},
{
"begin": 7384,
"end": 7410,
"name": "SWAP2"
},
{
"begin": 7384,
"end": 7410,
"name": "SUB"
},
{
"begin": 7384,
"end": 7410,
"name": "SWAP1"
},
{
"begin": 7384,
"end": 7410,
"name": "RETURN"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "4"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 7803,
"end": 7888,
"name": "CALLVALUE"
},
{
"begin": 7803,
"end": 7888,
"name": "ISZERO"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPI"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH",
"value": "0"
},
{
"begin": 7803,
"end": 7888,
"name": "DUP1"
},
{
"begin": 7803,
"end": 7888,
"name": "REVERT"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "13"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "15"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMP"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "5"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "CALLVALUE"
},
{
"begin": 1188,
"end": 1208,
"name": "ISZERO"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "16"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPI"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP1"
},
{
"begin": 1188,
"end": 1208,
"name": "REVERT"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "16"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "17"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "18"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "17"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "40"
},
{
"begin": 1188,
"end": 1208,
"name": "MLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP1"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP2"
},
{
"begin": 1188,
"end": 1208,
"name": "AND"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP2"
},
{
"begin": 1188,
"end": 1208,
"name": "MSTORE"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "20"
},
{
"begin": 1188,
"end": 1208,
"name": "ADD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "40"
},
{
"begin": 1188,
"end": 1208,
"name": "MLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP1"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP2"
},
{
"begin": 1188,
"end": 1208,
"name": "SUB"
},
{
"begin": 1188,
"end": 1208,
"name": "SWAP1"
},
{
"begin": 1188,
"end": 1208,
"name": "RETURN"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "6"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLVALUE"
},
{
"begin": 1738,
"end": 1885,
"name": "ISZERO"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "19"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPI"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "0"
},
{
"begin": 1738,
"end": 1885,
"name": "DUP1"
},
{
"begin": 1738,
"end": 1885,
"name": "REVERT"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "19"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "4"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLDATALOAD"
},
{
"begin": 1738,
"end": 1885,
"name": "AND"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "21"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "9"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "23"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "23"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "0"
},
{
"begin": 7705,
"end": 7711,
"name": "SLOAD"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7705,
"end": 7711,
"name": "SWAP1"
},
{
"begin": 7705,
"end": 7711,
"name": "DIV"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7705,
"end": 7711,
"name": "AND"
},
{
"begin": 7697,
"end": 7712,
"name": "ISZERO"
},
{
"begin": 7697,
"end": 7712,
"name": "ISZERO"
},
{
"begin": 7697,
"end": 7712,
"name": "PUSH [tag]",
"value": "25"
},
{
"begin": 7697,
"end": 7712,
"name": "JUMPI"
},
{
"begin": 7697,
"end": 7712,
"name": "PUSH",
"value": "0"
},
{
"begin": 7697,
"end": 7712,
"name": "DUP1"
},
{
"begin": 7697,
"end": 7712,
"name": "REVERT"
},
{
"begin": 7697,
"end": 7712,
"name": "tag",
"value": "25"
},
{
"begin": 7697,
"end": 7712,
"name": "JUMPDEST"
},
{
"begin": 8032,
"end": 8037,
"name": "PUSH",
"value": "0"
},
{
"begin": 8023,
"end": 8037,
"name": "DUP1"
},
{
"begin": 8023,
"end": 8037,
"name": "SLOAD"
},
{
"begin": 8023,
"end": 8037,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8023,
"end": 8037,
"name": "AND"
},
{
"begin": 8023,
"end": 8037,
"name": "SWAP1"
},
{
"begin": 8023,
"end": 8037,
"name": "SSTORE"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "40"
},
{
"begin": 8043,
"end": 8052,
"name": "MLOAD"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "40"
},
{
"begin": 8043,
"end": 8052,
"name": "MLOAD"
},
{
"begin": 8043,
"end": 8052,
"name": "DUP1"
},
{
"begin": 8043,
"end": 8052,
"name": "SWAP2"
},
{
"begin": 8043,
"end": 8052,
"name": "SUB"
},
{
"begin": 8043,
"end": 8052,
"name": "SWAP1"
},
{
"begin": 8043,
"end": 8052,
"name": "LOG1"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "12"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "SLOAD"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7384,
"end": 7410,
"name": "SWAP1"
},
{
"begin": 7384,
"end": 7410,
"name": "DIV"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7384,
"end": 7410,
"name": "AND"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP2"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "15"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "28"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "28"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "0"
},
{
"begin": 7553,
"end": 7559,
"name": "SLOAD"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7553,
"end": 7559,
"name": "SWAP1"
},
{
"begin": 7553,
"end": 7559,
"name": "DIV"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7553,
"end": 7559,
"name": "AND"
},
{
"begin": 7552,
"end": 7559,
"name": "ISZERO"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH [tag]",
"value": "30"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPI"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH",
"value": "0"
},
{
"begin": 7544,
"end": 7560,
"name": "DUP1"
},
{
"begin": 7544,
"end": 7560,
"name": "REVERT"
},
{
"begin": 7544,
"end": 7560,
"name": "tag",
"value": "30"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPDEST"
},
{
"begin": 7857,
"end": 7863,
"name": "PUSH",
"value": "0"
},
{
"begin": 7857,
"end": 7870,
"name": "DUP1"
},
{
"begin": 7857,
"end": 7870,
"name": "SLOAD"
},
{
"begin": 7857,
"end": 7870,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 7857,
"end": 7870,
"name": "AND"
},
{
"begin": 7857,
"end": 7870,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7857,
"end": 7870,
"name": "OR"
},
{
"begin": 7857,
"end": 7870,
"name": "SWAP1"
},
{
"begin": 7857,
"end": 7870,
"name": "SSTORE"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "40"
},
{
"begin": 7876,
"end": 7883,
"name": "MLOAD"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "40"
},
{
"begin": 7876,
"end": 7883,
"name": "MLOAD"
},
{
"begin": 7876,
"end": 7883,
"name": "DUP1"
},
{
"begin": 7876,
"end": 7883,
"name": "SWAP2"
},
{
"begin": 7876,
"end": 7883,
"name": "SUB"
},
{
"begin": 7876,
"end": 7883,
"name": "SWAP1"
},
{
"begin": 7876,
"end": 7883,
"name": "LOG1"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "18"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "SLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1188,
"end": 1208,
"name": "AND"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP2"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "21"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "33"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "33"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 1814,
"end": 1836,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1814,
"end": 1836,
"name": "DUP2"
},
{
"begin": 1814,
"end": 1836,
"name": "AND"
},
{
"begin": 1814,
"end": 1836,
"name": "ISZERO"
},
{
"begin": 1810,
"end": 1879,
"name": "PUSH [tag]",
"value": "35"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPI"
},
{
"begin": 1852,
"end": 1857,
"name": "PUSH",
"value": "0"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SLOAD"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP4"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "OR"
},
{
"begin": 1852,
"end": 1868,
"name": "SWAP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SSTORE"
},
{
"begin": 1810,
"end": 1879,
"name": "tag",
"value": "35"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "POP"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP",
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"owner()": "8da5cb5b",
"pause()": "8456cb59",
"paused()": "5c975abb",
"transferOwnership(address)": "f2fde38b",
"unpause()": "3f4ba83a"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.4.18+commit.9cf6e910\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Pause\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpause\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"pause()\":{\"details\":\"called by the owner to pause, triggers stopped state\"},\"transferOwnership(address)\":{\"details\":\"Allows the current owner to transfer control of the contract to a newOwner.\",\"params\":{\"newOwner\":\"The address to transfer ownership to.\"}},\"unpause()\":{\"details\":\"called by the owner to unpause, returns to normal state\"}},\"title\":\"Pausable\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/Contract.sol\":\"Pausable\"},\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":1000000},\"remappings\":[\":src/=src/\"]},\"sources\":{\"src/Contract.sol\":{\"keccak256\":\"0x3e0d611f53491f313ae035797ed7ecfd1dfd8db8fef8f82737e6f0cd86d71de7\",\"urls\":[\"bzzr://9c33025fa9d1b8389e4c7c9534a1d70fad91c6c2ad70eb5e4b7dc3a701a5f892\"]}},\"version\":1}",
"userdoc": {
"methods": {}
}
},
"SafeMath": {
"abi": [],
"devdoc": {
"methods": {},
"title": "SafeMath"
},
"evm": {
"assembly": " /* \"src/Contract.sol\":183:973 library SafeMath {... */\n mstore(0x40, 0x60)\n jumpi(tag_1, iszero(callvalue))\n 0x0\n dup1\n revert\ntag_1:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x0\n codecopy\n 0x0\n return\nstop\n\nsub_0: assembly {\n /* \"src/Contract.sol\":183:973 library SafeMath {... */\n mstore(0x40, 0x60)\n 0x0\n dup1\n revert\n\n auxdata: 0xa165627a7a723058208676802f00cec3d9fa1405b82d7c8e5a9d71b9518ae049545240c1777a6e8e790029\n}\n",
"bytecode": {
"linkReferences": {},
"object": "60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a723058208676802f00cec3d9fa1405b82d7c8e5a9d71b9518ae049545240c1777a6e8e790029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE CALLVALUE ISZERO PUSH1 0xE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x35 DUP1 PUSH1 0x1B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 DUP7 PUSH23 0x802F00CEC3D9FA1405B82D7C8E5A9D71B9518AE0495452 BLOCKHASH 0xc1 PUSH24 0x7A6E8E790029000000000000000000000000000000000000 ",
"sourceMap": "183:790:0:-;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"linkReferences": {},
"object": "6060604052600080fd00a165627a7a723058208676802f00cec3d9fa1405b82d7c8e5a9d71b9518ae049545240c1777a6e8e790029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 DUP7 PUSH23 0x802F00CEC3D9FA1405B82D7C8E5A9D71B9518AE0495452 BLOCKHASH 0xc1 PUSH24 0x7A6E8E790029000000000000000000000000000000000000 ",
"sourceMap": "183:790:0:-;;;;;"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "10600",
"executionCost": "61",
"totalCost": "10661"
},
"internal": {
"add(uint256,uint256)": "infinite",
"div(uint256,uint256)": "infinite",
"mul(uint256,uint256)": "infinite",
"sub(uint256,uint256)": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "60"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "40"
},
{
"begin": 183,
"end": 973,
"name": "MSTORE"
},
{
"begin": 183,
"end": 973,
"name": "CALLVALUE"
},
{
"begin": 183,
"end": 973,
"name": "ISZERO"
},
{
"begin": 183,
"end": 973,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 183,
"end": 973,
"name": "JUMPI"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "0"
},
{
"begin": 183,
"end": 973,
"name": "DUP1"
},
{
"begin": 183,
"end": 973,
"name": "REVERT"
},
{
"begin": 183,
"end": 973,
"name": "tag",
"value": "1"
},
{
"begin": 183,
"end": 973,
"name": "JUMPDEST"
},
{
"begin": 183,
"end": 973,
"name": "PUSH #[$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 183,
"end": 973,
"name": "DUP1"
},
{
"begin": 183,
"end": 973,
"name": "PUSH [$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "0"
},
{
"begin": 183,
"end": 973,
"name": "CODECOPY"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "0"
},
{
"begin": 183,
"end": 973,
"name": "RETURN"
}
],
".data": {
"0": {
".auxdata": "a165627a7a723058208676802f00cec3d9fa1405b82d7c8e5a9d71b9518ae049545240c1777a6e8e790029",
".code": [
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "60"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "40"
},
{
"begin": 183,
"end": 973,
"name": "MSTORE"
},
{
"begin": 183,
"end": 973,
"name": "PUSH",
"value": "0"
},
{
"begin": 183,
"end": 973,
"name": "DUP1"
},
{
"begin": 183,
"end": 973,
"name": "REVERT"
}
]
}
}
},
"methodIdentifiers": {}
},
"metadata": "{\"compiler\":{\"version\":\"0.4.18+commit.9cf6e910\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{},\"title\":\"SafeMath\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/Contract.sol\":\"SafeMath\"},\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":1000000},\"remappings\":[\":src/=src/\"]},\"sources\":{\"src/Contract.sol\":{\"keccak256\":\"0x3e0d611f53491f313ae035797ed7ecfd1dfd8db8fef8f82737e6f0cd86d71de7\",\"urls\":[\"bzzr://9c33025fa9d1b8389e4c7c9534a1d70fad91c6c2ad70eb5e4b7dc3a701a5f892\"]}},\"version\":1}",
"userdoc": {
"methods": {}
}
},
"StandardToken": {
"abi": [
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "balances",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "maximumFee",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "address"
}
],
"name": "allowed",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "remaining",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "basisPointsRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "MAX_UINT",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {
"allowance(address,address)": {
"details": "Function to check the amount of tokens than an owner allowed to a spender.",
"params": {
"_owner": "address The address which owns the funds.",
"_spender": "address The address which will spend the funds."
},
"return": "A uint specifying the amount of tokens still available for the spender."
},
"approve(address,uint256)": {
"details": "Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.",
"params": {
"_spender": "The address which will spend the funds.",
"_value": "The amount of tokens to be spent."
}
},
"balanceOf(address)": {
"details": "Gets the balance of the specified address.",
"params": {
"_owner": "The address to query the the balance of."
},
"return": "An uint representing the amount owned by the passed address."
},
"transfer(address,uint256)": {
"details": "transfer token for a specified address",
"params": {
"_to": "The address to transfer to.",
"_value": "The amount to be transferred."
}
},
"transferFrom(address,address,uint256)": {
"details": "Transfer tokens from one address to another",
"params": {
"_from": "address The address which you want to send tokens from",
"_to": "address The address which you want to transfer to",
"_value": "uint the amount of tokens to be transferred"
}
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
}
},
"title": "Standard ERC20 token"
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"MAX_UINT()": "e5b5019a",
"_totalSupply()": "3eaaf86b",
"allowance(address,address)": "dd62ed3e",
"allowed(address,address)": "5c658165",
"approve(address,uint256)": "095ea7b3",
"balanceOf(address)": "70a08231",
"balances(address)": "27e235e3",
"basisPointsRate()": "dd644f72",
"maximumFee()": "35390714",
"owner()": "8da5cb5b",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferFrom(address,address,uint256)": "23b872dd",
"transferOwnership(address)": "f2fde38b"
}
},
"metadata": "",
"userdoc": {
"methods": {}
}
},
"TetherToken": {
"abi": [
{
"constant": true,
"inputs": [],
"name": "name",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_upgradedAddress",
"type": "address"
}
],
"name": "deprecate",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "deprecated",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_evilUser",
"type": "address"
}
],
"name": "addBlackList",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "upgradedAddress",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "balances",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "decimals",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "maximumFee",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "unpause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_maker",
"type": "address"
}
],
"name": "getBlackListStatus",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "address"
}
],
"name": "allowed",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "paused",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "who",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "pause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getOwner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "symbol",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newBasisPoints",
"type": "uint256"
},
{
"name": "newMaxFee",
"type": "uint256"
}
],
"name": "setParams",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "amount",
"type": "uint256"
}
],
"name": "issue",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "amount",
"type": "uint256"
}
],
"name": "redeem",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "remaining",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "basisPointsRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "isBlackListed",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_clearedUser",
"type": "address"
}
],
"name": "removeBlackList",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "MAX_UINT",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_blackListedUser",
"type": "address"
}
],
"name": "destroyBlackFunds",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"name": "_initialSupply",
"type": "uint256"
},
{
"name": "_name",
"type": "string"
},
{
"name": "_symbol",
"type": "string"
},
{
"name": "_decimals",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "amount",
"type": "uint256"
}
],
"name": "Issue",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "amount",
"type": "uint256"
}
],
"name": "Redeem",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "newAddress",
"type": "address"
}
],
"name": "Deprecate",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "feeBasisPoints",
"type": "uint256"
},
{
"indexed": false,
"name": "maxFee",
"type": "uint256"
}
],
"name": "Params",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_blackListedUser",
"type": "address"
},
{
"indexed": false,
"name": "_balance",
"type": "uint256"
}
],
"name": "DestroyedBlackFunds",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_user",
"type": "address"
}
],
"name": "AddedBlackList",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_user",
"type": "address"
}
],
"name": "RemovedBlackList",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "Pause",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "Unpause",
"type": "event"
}
],
"devdoc": {
"methods": {
"pause()": {
"details": "called by the owner to pause, triggers stopped state"
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
},
"unpause()": {
"details": "called by the owner to unpause, returns to normal state"
}
}
},
"evm": {
"assembly": " /* \"src/Contract.sol\":9728:14509 contract TetherToken is Pausable, StandardToken, BlackList {... */\n mstore(0x40, 0x60)\n /* \"src/Contract.sol\":7405:7410 false */\n 0x0\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n dup1\n sload\n not(mul(0xff, exp(0x2, 0xa0)))\n and\n dup2\n sstore\n /* \"src/Contract.sol\":3041:3072 uint public basisPointsRate = 0 */\n 0x3\n dup2\n swap1\n sstore\n /* \"src/Contract.sol\":3078:3104 uint public maximumFee = 0 */\n 0x4\n sstore\n /* \"src/Contract.sol\":10223:10512 function TetherToken(uint _initialSupply, string _name, string _symbol, uint _decimals) public {... */\n jumpi(tag_1, iszero(callvalue))\n 0x0\n dup1\n revert\ntag_1:\n mload(0x40)\n sub(codesize, bytecodeSize)\n dup1\n bytecodeSize\n dup4\n codecopy\n dup2\n add\n 0x40\n mstore\n dup1\n dup1\n mload\n swap2\n swap1\n 0x20\n add\n dup1\n mload\n dup3\n add\n swap2\n swap1\n 0x20\n add\n dup1\n mload\n dup3\n add\n swap2\n swap1\n 0x20\n add\n dup1\n mload\n /* \"src/Contract.sol\":1378:1383 owner */\n 0x0\n /* \"src/Contract.sol\":1378:1396 owner = msg.sender */\n dup1\n sload\n not(sub(exp(0x2, 0xa0), 0x1))\n and\n /* \"src/Contract.sol\":1386:1396 msg.sender */\n caller\n sub(exp(0x2, 0xa0), 0x1)\n /* \"src/Contract.sol\":1378:1396 owner = msg.sender */\n and\n or\n swap1\n sstore\n 0x1\n /* \"src/Contract.sol\":10328:10357 _totalSupply = _initialSupply */\n dup7\n swap1\n sstore\n /* \"src/Contract.sol\":10223:10512 function TetherToken(uint _initialSupply, string _name, string _symbol, uint _decimals) public {... */\n swap2\n pop\n /* \"src/Contract.sol\":10367:10371 name */\n 0x7\n swap1\n pop\n /* \"src/Contract.sol\":10374:10379 _name */\n dup4\n dup1\n /* \"src/Contract.sol\":10367:10379 name = _name */\n mload\n tag_6\n swap3\n swap2\n 0x20\n add\n swap1\n jump\t// in(tag_7)\ntag_6:\n pop\n /* \"src/Contract.sol\":10389:10395 symbol */\n 0x8\n /* \"src/Contract.sol\":10398:10405 _symbol */\n dup3\n dup1\n /* \"src/Contract.sol\":10389:10405 symbol = _symbol */\n mload\n tag_8\n swap3\n swap2\n 0x20\n add\n swap1\n jump\t// in(tag_7)\ntag_8:\n pop\n /* \"src/Contract.sol\":10415:10423 decimals */\n 0x9\n /* \"src/Contract.sol\":10415:10435 decimals = _decimals */\n sstore\n pop\n pop\n /* \"src/Contract.sol\":10445:10460 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":10454:10459 owner */\n dup1\n sload\n sub(exp(0x2, 0xa0), 0x1)\n and\n /* \"src/Contract.sol\":10445:10460 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":10445:10453 balances */\n 0x2\n /* \"src/Contract.sol\":10445:10460 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n /* \"src/Contract.sol\":10445:10477 balances[owner] = _initialSupply */\n sstore\n /* \"src/Contract.sol\":10487:10497 deprecated */\n 0xa\n /* \"src/Contract.sol\":10487:10505 deprecated = false */\n dup1\n sload\n not(mul(0xff, exp(0x2, 0xa0)))\n and\n swap1\n sstore\n /* \"src/Contract.sol\":9728:14509 contract TetherToken is Pausable, StandardToken, BlackList {... */\n jump(tag_9)\ntag_7:\n dup3\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n swap1\n 0x0\n mstore\n keccak256(0x0, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n 0x1f\n lt\n tag_11\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_13)\ntag_11:\n dup3\n dup1\n add\n 0x1\n add\n dup6\n sstore\n dup3\n iszero\n tag_13\n jumpi\n swap2\n dup3\n add\ntag_12:\n dup3\n dup2\n gt\n iszero\n tag_13\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x1\n add\n swap1\n jump(tag_12)\ntag_13:\n pop\n tag_14\n swap3\n swap2\n pop\n jump\t// in(tag_15)\ntag_14:\n pop\n swap1\n jump\t// out\ntag_15:\n tag_16\n swap2\n swap1\ntag_17:\n dup1\n dup3\n gt\n iszero\n tag_14\n jumpi\n 0x0\n dup2\n sstore\n 0x1\n add\n jump(tag_17)\ntag_16:\n swap1\n jump\t// out\ntag_9:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x0\n codecopy\n 0x0\n return\nstop\n\nsub_0: assembly {\n /* \"src/Contract.sol\":9728:14509 contract TetherToken is Pausable, StandardToken, BlackList {... */\n mstore(0x40, 0x60)\n jumpi(tag_1, lt(calldatasize, 0x4))\n and(div(calldataload(0x0), 0x100000000000000000000000000000000000000000000000000000000), 0xffffffff)\n 0x6fdde03\n dup2\n eq\n tag_2\n jumpi\n dup1\n 0x753c30c\n eq\n tag_3\n jumpi\n dup1\n 0x95ea7b3\n eq\n tag_4\n jumpi\n dup1\n 0xe136b19\n eq\n tag_5\n jumpi\n dup1\n 0xecb93c0\n eq\n tag_6\n jumpi\n dup1\n 0x18160ddd\n eq\n tag_7\n jumpi\n dup1\n 0x23b872dd\n eq\n tag_8\n jumpi\n dup1\n 0x26976e3f\n eq\n tag_9\n jumpi\n dup1\n 0x27e235e3\n eq\n tag_10\n jumpi\n dup1\n 0x313ce567\n eq\n tag_11\n jumpi\n dup1\n 0x35390714\n eq\n tag_12\n jumpi\n dup1\n 0x3eaaf86b\n eq\n tag_13\n jumpi\n dup1\n 0x3f4ba83a\n eq\n tag_14\n jumpi\n dup1\n 0x59bf1abe\n eq\n tag_15\n jumpi\n dup1\n 0x5c658165\n eq\n tag_16\n jumpi\n dup1\n 0x5c975abb\n eq\n tag_17\n jumpi\n dup1\n 0x70a08231\n eq\n tag_18\n jumpi\n dup1\n 0x8456cb59\n eq\n tag_19\n jumpi\n dup1\n 0x893d20e8\n eq\n tag_20\n jumpi\n dup1\n 0x8da5cb5b\n eq\n tag_21\n jumpi\n dup1\n 0x95d89b41\n eq\n tag_22\n jumpi\n dup1\n 0xa9059cbb\n eq\n tag_23\n jumpi\n dup1\n 0xc0324c77\n eq\n tag_24\n jumpi\n dup1\n 0xcc872b66\n eq\n tag_25\n jumpi\n dup1\n 0xdb006a75\n eq\n tag_26\n jumpi\n dup1\n 0xdd62ed3e\n eq\n tag_27\n jumpi\n dup1\n 0xdd644f72\n eq\n tag_28\n jumpi\n dup1\n 0xe47d6060\n eq\n tag_29\n jumpi\n dup1\n 0xe4997dc5\n eq\n tag_30\n jumpi\n dup1\n 0xe5b5019a\n eq\n tag_31\n jumpi\n dup1\n 0xf2fde38b\n eq\n tag_32\n jumpi\n dup1\n 0xf3bdc228\n eq\n tag_33\n jumpi\n tag_1:\n 0x0\n dup1\n revert\n /* \"src/Contract.sol\":9794:9812 string public name */\n tag_2:\n jumpi(tag_34, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_34:\n tag_35\n jump(tag_36)\n tag_35:\n mload(0x40)\n 0x20\n dup1\n dup3\n mstore\n dup2\n swap1\n dup2\n add\n dup4\n dup2\n dup2\n mload\n dup2\n mstore\n 0x20\n add\n swap2\n pop\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n dup1\n dup4\n dup4\n /* \"--CODEGEN--\":23:24 */\n 0x0\n /* \"--CODEGEN--\":8:108 */\n tag_37:\n /* \"--CODEGEN--\":33:36 */\n dup4\n /* \"--CODEGEN--\":30:31 */\n dup2\n /* \"--CODEGEN--\":27:29 */\n lt\n /* \"--CODEGEN--\":8:108 */\n iszero\n tag_38\n jumpi\n /* \"--CODEGEN--\":99:100 */\n dup1\n /* \"--CODEGEN--\":94:97 */\n dup3\n /* \"--CODEGEN--\":90:93 */\n add\n /* \"--CODEGEN--\":84:89 */\n mload\n /* \"--CODEGEN--\":71:74 */\n dup4\n dup3\n add\n /* \"--CODEGEN--\":64:70 */\n mstore\n /* \"--CODEGEN--\":52:54 */\n 0x20\n /* \"--CODEGEN--\":45:48 */\n add\n /* \"--CODEGEN--\":8:108 */\n jump(tag_37)\n tag_38:\n /* \"--CODEGEN--\":12:26 */\n pop\n /* \"--CODEGEN--\":3:112 */\n pop\n pop\n pop\n swap1\n pop\n swap1\n dup2\n add\n swap1\n 0x1f\n and\n dup1\n iszero\n tag_40\n jumpi\n dup1\n dup3\n sub\n dup1\n mload\n 0x1\n dup4\n 0x20\n sub\n 0x100\n exp\n sub\n not\n and\n dup2\n mstore\n 0x20\n add\n swap2\n pop\n tag_40:\n pop\n swap3\n pop\n pop\n pop\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":12480:12657 function deprecate(address _upgradedAddress) public onlyOwner {... */\n tag_3:\n jumpi(tag_41, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_41:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_43)\n tag_42:\n stop\n /* \"src/Contract.sol\":11752:12048 function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {... */\n tag_4:\n jumpi(tag_44, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_44:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n calldataload(0x24)\n jump(tag_46)\n /* \"src/Contract.sol\":9906:9928 bool public deprecated */\n tag_5:\n jumpi(tag_47, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_47:\n tag_48\n jump(tag_49)\n tag_48:\n mload(0x40)\n swap1\n iszero\n iszero\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":8505:8647 function addBlackList (address _evilUser) public onlyOwner {... */\n tag_6:\n jumpi(tag_50, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_50:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_52)\n /* \"src/Contract.sol\":12720:12932 function totalSupply() public constant returns (uint) {... */\n tag_7:\n jumpi(tag_53, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_53:\n tag_54\n jump(tag_55)\n tag_54:\n mload(0x40)\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":10995:11350 function transferFrom(address _from, address _to, uint _value) public whenNotPaused {... */\n tag_8:\n jumpi(tag_56, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_56:\n tag_42\n 0xffffffffffffffffffffffffffffffffffffffff\n calldataload(0x4)\n dup2\n and\n swap1\n calldataload(0x24)\n and\n calldataload(0x44)\n jump(tag_58)\n /* \"src/Contract.sol\":9870:9900 address public upgradedAddress */\n tag_9:\n jumpi(tag_59, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_59:\n tag_60\n jump(tag_61)\n tag_60:\n mload(0x40)\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"src/Contract.sol\":2916:2956 mapping(address => uint) public balances */\n tag_10:\n jumpi(tag_62, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_62:\n tag_54\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_64)\n /* \"src/Contract.sol\":9844:9864 uint public decimals */\n tag_11:\n jumpi(tag_65, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_65:\n tag_54\n jump(tag_67)\n /* \"src/Contract.sol\":3078:3104 uint public maximumFee = 0 */\n tag_12:\n jumpi(tag_68, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_68:\n tag_54\n jump(tag_70)\n /* \"src/Contract.sol\":2043:2067 uint public _totalSupply */\n tag_13:\n jumpi(tag_71, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_71:\n tag_54\n jump(tag_73)\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n tag_14:\n jumpi(tag_74, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_74:\n tag_42\n jump(tag_76)\n /* \"src/Contract.sol\":8229:8351 function getBlackListStatus(address _maker) external constant returns (bool) {... */\n tag_15:\n jumpi(tag_77, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_77:\n tag_48\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_79)\n /* \"src/Contract.sol\":4652:4713 mapping (address => mapping (address => uint)) public allowed */\n tag_16:\n jumpi(tag_80, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_80:\n tag_54\n 0xffffffffffffffffffffffffffffffffffffffff\n calldataload(0x4)\n dup2\n and\n swap1\n calldataload(0x24)\n and\n jump(tag_82)\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n tag_17:\n jumpi(tag_83, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_83:\n tag_48\n jump(tag_85)\n /* \"src/Contract.sol\":11432:11670 function balanceOf(address who) public constant returns (uint) {... */\n tag_18:\n jumpi(tag_86, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_86:\n tag_54\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_88)\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n tag_19:\n jumpi(tag_89, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_89:\n tag_42\n jump(tag_91)\n /* \"src/Contract.sol\":8357:8442 function getOwner() external constant returns (address) {... */\n tag_20:\n jumpi(tag_92, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_92:\n tag_60\n jump(tag_94)\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_21:\n jumpi(tag_95, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_95:\n tag_60\n jump(tag_97)\n /* \"src/Contract.sol\":9818:9838 string public symbol */\n tag_22:\n jumpi(tag_98, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_98:\n tag_35\n jump(tag_100)\n /* \"src/Contract.sol\":10594:10913 function transfer(address _to, uint _value) public whenNotPaused {... */\n tag_23:\n jumpi(tag_105, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_105:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n calldataload(0x24)\n jump(tag_107)\n /* \"src/Contract.sol\":13809:14187 function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner {... */\n tag_24:\n jumpi(tag_108, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_108:\n tag_42\n calldataload(0x4)\n calldataload(0x24)\n jump(tag_110)\n /* \"src/Contract.sol\":13090:13349 function issue(uint amount) public onlyOwner {... */\n tag_25:\n jumpi(tag_111, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_111:\n tag_42\n calldataload(0x4)\n jump(tag_113)\n /* \"src/Contract.sol\":13573:13803 function redeem(uint amount) public onlyOwner {... */\n tag_26:\n jumpi(tag_114, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_114:\n tag_42\n calldataload(0x4)\n jump(tag_116)\n /* \"src/Contract.sol\":12130:12417 function allowance(address _owner, address _spender) public constant returns (uint remaining) {... */\n tag_27:\n jumpi(tag_117, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_117:\n tag_54\n 0xffffffffffffffffffffffffffffffffffffffff\n calldataload(0x4)\n dup2\n and\n swap1\n calldataload(0x24)\n and\n jump(tag_119)\n /* \"src/Contract.sol\":3041:3072 uint public basisPointsRate = 0 */\n tag_28:\n jumpi(tag_120, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_120:\n tag_54\n jump(tag_122)\n /* \"src/Contract.sol\":8448:8494 mapping (address => bool) public isBlackListed */\n tag_29:\n jumpi(tag_123, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_123:\n tag_48\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_125)\n /* \"src/Contract.sol\":8653:8810 function removeBlackList (address _clearedUser) public onlyOwner {... */\n tag_30:\n jumpi(tag_126, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_126:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_128)\n /* \"src/Contract.sol\":4720:4762 uint public constant MAX_UINT = 2**256 - 1 */\n tag_31:\n jumpi(tag_129, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_129:\n tag_54\n jump(tag_131)\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_32:\n jumpi(tag_132, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_132:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_134)\n /* \"src/Contract.sol\":8816:9134 function destroyBlackFunds (address _blackListedUser) public onlyOwner {... */\n tag_33:\n jumpi(tag_135, iszero(callvalue))\n 0x0\n dup1\n revert\n tag_135:\n tag_42\n and(calldataload(0x4), 0xffffffffffffffffffffffffffffffffffffffff)\n jump(tag_137)\n /* \"src/Contract.sol\":9794:9812 string public name */\n tag_36:\n 0x7\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n dup1\n iszero\n tag_138\n jumpi\n dup1\n 0x1f\n lt\n tag_139\n jumpi\n 0x100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_138)\n tag_139:\n dup3\n add\n swap2\n swap1\n 0x0\n mstore\n keccak256(0x0, 0x20)\n swap1\n tag_140:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x1\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_140\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_138:\n pop\n pop\n pop\n pop\n pop\n dup2\n jump\t// out\n /* \"src/Contract.sol\":12480:12657 function deprecate(address _upgradedAddress) public onlyOwner {... */\n tag_43:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_142\n jumpi\n 0x0\n dup1\n revert\n tag_142:\n /* \"src/Contract.sol\":12552:12562 deprecated */\n 0xa\n /* \"src/Contract.sol\":12552:12569 deprecated = true */\n dup1\n sload\n 0x10000000000000000000000000000000000000000\n 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n or\n /* \"src/Contract.sol\":12579:12613 upgradedAddress = _upgradedAddress */\n 0xffffffffffffffffffffffff0000000000000000000000000000000000000000\n and\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":12623:12650 Deprecate(_upgradedAddress) */\n 0xcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e\n /* \"src/Contract.sol\":12579:12613 upgradedAddress = _upgradedAddress */\n dup2\n /* \"src/Contract.sol\":12623:12650 Deprecate(_upgradedAddress) */\n mload(0x40)\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":12480:12657 function deprecate(address _upgradedAddress) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":11752:12048 function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {... */\n tag_46:\n /* \"src/Contract.sol\":11823:11829 2 * 32 */\n 0x40\n /* \"src/Contract.sol\":3251:3259 size + 4 */\n 0x44\n /* \"src/Contract.sol\":3233:3241 msg.data */\n calldatasize\n /* \"src/Contract.sol\":3233:3259 msg.data.length < size + 4 */\n lt\n /* \"src/Contract.sol\":3231:3260 !(msg.data.length < size + 4) */\n iszero\n /* \"src/Contract.sol\":3223:3261 require(!(msg.data.length < size + 4)) */\n tag_145\n jumpi\n 0x0\n dup1\n revert\n tag_145:\n /* \"src/Contract.sol\":11845:11855 deprecated */\n sload(0xa)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":11841:12042 if (deprecated) {... */\n iszero\n tag_147\n jumpi\n /* \"src/Contract.sol\":11900:11915 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":11878:11932 UpgradedStandardToken(upgradedAddress).approveByLegacy */\n 0xaee92d33\n /* \"src/Contract.sol\":11933:11943 msg.sender */\n caller\n /* \"src/Contract.sol\":11945:11953 _spender */\n dup6\n /* \"src/Contract.sol\":11955:11961 _value */\n dup6\n /* \"src/Contract.sol\":11878:11962 UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value) */\n mload(0x40)\n 0x100000000000000000000000000000000000000000000000000000000\n 0xffffffff\n dup7\n and\n mul\n dup2\n mstore\n 0xffffffffffffffffffffffffffffffffffffffff\n swap4\n dup5\n and\n 0x4\n dup3\n add\n mstore\n swap2\n swap1\n swap3\n and\n 0x24\n dup3\n add\n mstore\n 0x44\n dup2\n add\n swap2\n swap1\n swap2\n mstore\n 0x64\n add\n 0x0\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_148\n jumpi\n 0x0\n dup1\n revert\n tag_148:\n sub(gas, 0x2c6)\n call\n iszero\n iszero\n tag_149\n jumpi\n 0x0\n dup1\n revert\n tag_149:\n pop\n pop\n pop\n /* \"src/Contract.sol\":11871:11962 return UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value) */\n jump(tag_151)\n /* \"src/Contract.sol\":11841:12042 if (deprecated) {... */\n tag_147:\n /* \"src/Contract.sol\":12000:12031 super.approve(_spender, _value) */\n tag_151\n /* \"src/Contract.sol\":12014:12022 _spender */\n dup4\n /* \"src/Contract.sol\":12024:12030 _value */\n dup4\n /* \"src/Contract.sol\":12000:12013 super.approve */\n tag_152\n /* \"src/Contract.sol\":12000:12031 super.approve(_spender, _value) */\n jump\t// in\n tag_151:\n /* \"src/Contract.sol\":11752:12048 function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {... */\n pop\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":9906:9928 bool public deprecated */\n tag_49:\n sload(0xa)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"src/Contract.sol\":8505:8647 function addBlackList (address _evilUser) public onlyOwner {... */\n tag_52:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_154\n jumpi\n 0x0\n dup1\n revert\n tag_154:\n /* \"src/Contract.sol\":8574:8598 isBlackListed[_evilUser] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":8574:8587 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":8574:8598 isBlackListed[_evilUser] */\n 0x20\n mstore\n 0x40\n swap1\n dup2\n swap1\n keccak256\n /* \"src/Contract.sol\":8574:8605 isBlackListed[_evilUser] = true */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00\n and\n /* \"src/Contract.sol\":8601:8605 true */\n 0x1\n /* \"src/Contract.sol\":8574:8605 isBlackListed[_evilUser] = true */\n or\n swap1\n sstore\n /* \"src/Contract.sol\":8615:8640 AddedBlackList(_evilUser) */\n 0x42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc\n swap1\n /* \"src/Contract.sol\":8588:8597 _evilUser */\n dup3\n swap1\n /* \"src/Contract.sol\":8615:8640 AddedBlackList(_evilUser) */\n mload\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":8505:8647 function addBlackList (address _evilUser) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":12720:12932 function totalSupply() public constant returns (uint) {... */\n tag_55:\n /* \"src/Contract.sol\":12788:12798 deprecated */\n sload(0xa)\n /* \"src/Contract.sol\":12768:12772 uint */\n 0x0\n swap1\n /* \"src/Contract.sol\":12788:12798 deprecated */\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":12784:12926 if (deprecated) {... */\n iszero\n tag_157\n jumpi\n /* \"src/Contract.sol\":12835:12850 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":12821:12863 StandardToken(upgradedAddress).totalSupply */\n 0x18160ddd\n /* \"src/Contract.sol\":12835:12850 upgradedAddress */\n 0x0\n /* \"src/Contract.sol\":12821:12865 StandardToken(upgradedAddress).totalSupply() */\n add(0x20, mload(0x40))\n mstore\n mload(0x40)\n dup2\n 0xffffffff\n and\n 0x100000000000000000000000000000000000000000000000000000000\n mul\n dup2\n mstore\n 0x4\n add\n 0x20\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_158\n jumpi\n 0x0\n dup1\n revert\n tag_158:\n sub(gas, 0x2c6)\n call\n iszero\n iszero\n tag_159\n jumpi\n 0x0\n dup1\n revert\n tag_159:\n pop\n pop\n pop\n mload(0x40)\n dup1\n mload\n swap1\n pop\n /* \"src/Contract.sol\":12814:12865 return StandardToken(upgradedAddress).totalSupply() */\n swap1\n pop\n jump(tag_160)\n /* \"src/Contract.sol\":12784:12926 if (deprecated) {... */\n tag_157:\n pop\n /* \"src/Contract.sol\":12903:12915 _totalSupply */\n sload(0x1)\n /* \"src/Contract.sol\":12784:12926 if (deprecated) {... */\n tag_160:\n /* \"src/Contract.sol\":12720:12932 function totalSupply() public constant returns (uint) {... */\n swap1\n jump\t// out\n /* \"src/Contract.sol\":10995:11350 function transferFrom(address _from, address _to, uint _value) public whenNotPaused {... */\n tag_58:\n /* \"src/Contract.sol\":7553:7559 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7552:7559 !paused */\n iszero\n /* \"src/Contract.sol\":7544:7560 require(!paused) */\n tag_162\n jumpi\n 0x0\n dup1\n revert\n tag_162:\n /* \"src/Contract.sol\":11098:11118 isBlackListed[_from] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":11098:11111 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":11098:11118 isBlackListed[_from] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n 0xff\n and\n /* \"src/Contract.sol\":11097:11118 !isBlackListed[_from] */\n iszero\n /* \"src/Contract.sol\":11089:11119 require(!isBlackListed[_from]) */\n tag_164\n jumpi\n 0x0\n dup1\n revert\n tag_164:\n /* \"src/Contract.sol\":11133:11143 deprecated */\n sload(0xa)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":11129:11344 if (deprecated) {... */\n iszero\n tag_165\n jumpi\n /* \"src/Contract.sol\":11188:11203 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":11166:11225 UpgradedStandardToken(upgradedAddress).transferFromByLegacy */\n 0x8b477adb\n /* \"src/Contract.sol\":11226:11236 msg.sender */\n caller\n /* \"src/Contract.sol\":11238:11243 _from */\n dup6\n /* \"src/Contract.sol\":11245:11248 _to */\n dup6\n /* \"src/Contract.sol\":11250:11256 _value */\n dup6\n /* \"src/Contract.sol\":11166:11257 UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value) */\n mload(0x40)\n 0x100000000000000000000000000000000000000000000000000000000\n 0xffffffff\n dup8\n and\n mul\n dup2\n mstore\n 0xffffffffffffffffffffffffffffffffffffffff\n swap5\n dup6\n and\n 0x4\n dup3\n add\n mstore\n swap3\n dup5\n and\n 0x24\n dup5\n add\n mstore\n swap3\n and\n 0x44\n dup3\n add\n mstore\n 0x64\n dup2\n add\n swap2\n swap1\n swap2\n mstore\n 0x84\n add\n 0x0\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_148\n jumpi\n 0x0\n dup1\n revert\n /* \"src/Contract.sol\":11129:11344 if (deprecated) {... */\n tag_165:\n /* \"src/Contract.sol\":11295:11333 super.transferFrom(_from, _to, _value) */\n tag_151\n /* \"src/Contract.sol\":11314:11319 _from */\n dup4\n /* \"src/Contract.sol\":11321:11324 _to */\n dup4\n /* \"src/Contract.sol\":11326:11332 _value */\n dup4\n /* \"src/Contract.sol\":11295:11313 super.transferFrom */\n tag_170\n /* \"src/Contract.sol\":11295:11333 super.transferFrom(_from, _to, _value) */\n jump\t// in\n /* \"src/Contract.sol\":9870:9900 address public upgradedAddress */\n tag_61:\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n dup2\n jump\t// out\n /* \"src/Contract.sol\":2916:2956 mapping(address => uint) public balances */\n tag_64:\n mstore(0x20, 0x2)\n 0x0\n swap1\n dup2\n mstore\n 0x40\n swap1\n keccak256\n sload\n dup2\n jump\t// out\n /* \"src/Contract.sol\":9844:9864 uint public decimals */\n tag_67:\n sload(0x9)\n dup2\n jump\t// out\n /* \"src/Contract.sol\":3078:3104 uint public maximumFee = 0 */\n tag_70:\n sload(0x4)\n dup2\n jump\t// out\n /* \"src/Contract.sol\":2043:2067 uint public _totalSupply */\n tag_73:\n sload(0x1)\n dup2\n jump\t// out\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n tag_76:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_172\n jumpi\n 0x0\n dup1\n revert\n tag_172:\n /* \"src/Contract.sol\":7705:7711 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7697:7712 require(paused) */\n iszero\n iszero\n tag_174\n jumpi\n 0x0\n dup1\n revert\n tag_174:\n /* \"src/Contract.sol\":8032:8037 false */\n 0x0\n /* \"src/Contract.sol\":8023:8037 paused = false */\n dup1\n sload\n 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff\n and\n swap1\n sstore\n /* \"src/Contract.sol\":8043:8052 Unpause() */\n 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":7970:8057 function unpause() onlyOwner whenPaused public {... */\n jump\t// out\n /* \"src/Contract.sol\":8229:8351 function getBlackListStatus(address _maker) external constant returns (bool) {... */\n tag_79:\n /* \"src/Contract.sol\":8323:8344 isBlackListed[_maker] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n /* \"src/Contract.sol\":8300:8304 bool */\n 0x0\n /* \"src/Contract.sol\":8323:8344 isBlackListed[_maker] */\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":8323:8336 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":8323:8344 isBlackListed[_maker] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n 0xff\n and\n /* \"src/Contract.sol\":8229:8351 function getBlackListStatus(address _maker) external constant returns (bool) {... */\n tag_176:\n swap2\n swap1\n pop\n jump\t// out\n /* \"src/Contract.sol\":4652:4713 mapping (address => mapping (address => uint)) public allowed */\n tag_82:\n 0x5\n 0x20\n swap1\n dup2\n mstore\n 0x0\n swap3\n dup4\n mstore\n 0x40\n dup1\n dup5\n keccak256\n swap1\n swap2\n mstore\n swap1\n dup3\n mstore\n swap1\n keccak256\n sload\n dup2\n jump\t// out\n /* \"src/Contract.sol\":7384:7410 bool public paused = false */\n tag_85:\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"src/Contract.sol\":11432:11670 function balanceOf(address who) public constant returns (uint) {... */\n tag_88:\n /* \"src/Contract.sol\":11509:11519 deprecated */\n sload(0xa)\n /* \"src/Contract.sol\":11489:11493 uint */\n 0x0\n swap1\n /* \"src/Contract.sol\":11509:11519 deprecated */\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":11505:11664 if (deprecated) {... */\n iszero\n tag_178\n jumpi\n /* \"src/Contract.sol\":11564:11579 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":11542:11590 UpgradedStandardToken(upgradedAddress).balanceOf */\n 0x70a08231\n /* \"src/Contract.sol\":11591:11594 who */\n dup4\n /* \"src/Contract.sol\":11564:11579 upgradedAddress */\n 0x0\n /* \"src/Contract.sol\":11542:11595 UpgradedStandardToken(upgradedAddress).balanceOf(who) */\n add(0x20, mload(0x40))\n mstore\n mload(0x40)\n 0x100000000000000000000000000000000000000000000000000000000\n 0xffffffff\n dup5\n and\n mul\n dup2\n mstore\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n 0x4\n dup3\n add\n mstore\n 0x24\n add\n 0x20\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_179\n jumpi\n 0x0\n dup1\n revert\n tag_179:\n sub(gas, 0x2c6)\n call\n iszero\n iszero\n tag_180\n jumpi\n 0x0\n dup1\n revert\n tag_180:\n pop\n pop\n pop\n mload(0x40)\n dup1\n mload\n swap1\n pop\n /* \"src/Contract.sol\":11535:11595 return UpgradedStandardToken(upgradedAddress).balanceOf(who) */\n swap1\n pop\n jump(tag_176)\n /* \"src/Contract.sol\":11505:11664 if (deprecated) {... */\n tag_178:\n /* \"src/Contract.sol\":11633:11653 super.balanceOf(who) */\n tag_182\n /* \"src/Contract.sol\":11649:11652 who */\n dup3\n /* \"src/Contract.sol\":11633:11648 super.balanceOf */\n tag_183\n /* \"src/Contract.sol\":11633:11653 super.balanceOf(who) */\n jump\t// in\n tag_182:\n /* \"src/Contract.sol\":11626:11653 return super.balanceOf(who) */\n swap1\n pop\n jump(tag_176)\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n tag_91:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_185\n jumpi\n 0x0\n dup1\n revert\n tag_185:\n /* \"src/Contract.sol\":7553:7559 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7552:7559 !paused */\n iszero\n /* \"src/Contract.sol\":7544:7560 require(!paused) */\n tag_187\n jumpi\n 0x0\n dup1\n revert\n tag_187:\n /* \"src/Contract.sol\":7857:7863 paused */\n 0x0\n /* \"src/Contract.sol\":7857:7870 paused = true */\n dup1\n sload\n 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff\n and\n 0x10000000000000000000000000000000000000000\n or\n swap1\n sstore\n /* \"src/Contract.sol\":7876:7883 Pause() */\n 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":7803:7888 function pause() onlyOwner whenNotPaused public {... */\n jump\t// out\n /* \"src/Contract.sol\":8357:8442 function getOwner() external constant returns (address) {... */\n tag_94:\n /* \"src/Contract.sol\":8404:8411 address */\n 0x0\n /* \"src/Contract.sol\":8430:8435 owner */\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":8357:8442 function getOwner() external constant returns (address) {... */\n swap1\n jump\t// out\n /* \"src/Contract.sol\":1188:1208 address public owner */\n tag_97:\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0x0))\n dup2\n jump\t// out\n /* \"src/Contract.sol\":9818:9838 string public symbol */\n tag_100:\n 0x8\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n dup1\n iszero\n tag_138\n jumpi\n dup1\n 0x1f\n lt\n tag_139\n jumpi\n 0x100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_138)\n /* \"src/Contract.sol\":10594:10913 function transfer(address _to, uint _value) public whenNotPaused {... */\n tag_107:\n /* \"src/Contract.sol\":7553:7559 paused */\n sload(0x0)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":7552:7559 !paused */\n iszero\n /* \"src/Contract.sol\":7544:7560 require(!paused) */\n tag_194\n jumpi\n 0x0\n dup1\n revert\n tag_194:\n /* \"src/Contract.sol\":10678:10703 isBlackListed[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":10692:10702 msg.sender */\n caller\n /* \"src/Contract.sol\":10678:10703 isBlackListed[msg.sender] */\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":10678:10691 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":10678:10703 isBlackListed[msg.sender] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n 0xff\n and\n /* \"src/Contract.sol\":10677:10703 !isBlackListed[msg.sender] */\n iszero\n /* \"src/Contract.sol\":10669:10704 require(!isBlackListed[msg.sender]) */\n tag_196\n jumpi\n 0x0\n dup1\n revert\n tag_196:\n /* \"src/Contract.sol\":10718:10728 deprecated */\n sload(0xa)\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":10714:10907 if (deprecated) {... */\n iszero\n tag_197\n jumpi\n /* \"src/Contract.sol\":10773:10788 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":10751:10806 UpgradedStandardToken(upgradedAddress).transferByLegacy */\n 0x6e18980a\n /* \"src/Contract.sol\":10807:10817 msg.sender */\n caller\n /* \"src/Contract.sol\":10819:10822 _to */\n dup5\n /* \"src/Contract.sol\":10824:10830 _value */\n dup5\n /* \"src/Contract.sol\":10751:10831 UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value) */\n mload(0x40)\n 0x100000000000000000000000000000000000000000000000000000000\n 0xffffffff\n dup7\n and\n mul\n dup2\n mstore\n 0xffffffffffffffffffffffffffffffffffffffff\n swap4\n dup5\n and\n 0x4\n dup3\n add\n mstore\n swap2\n swap1\n swap3\n and\n 0x24\n dup3\n add\n mstore\n 0x44\n dup2\n add\n swap2\n swap1\n swap2\n mstore\n 0x64\n add\n 0x0\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_198\n jumpi\n 0x0\n dup1\n revert\n tag_198:\n sub(gas, 0x2c6)\n call\n iszero\n iszero\n tag_199\n jumpi\n 0x0\n dup1\n revert\n tag_199:\n pop\n pop\n pop\n /* \"src/Contract.sol\":10744:10831 return UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value) */\n jump(tag_201)\n /* \"src/Contract.sol\":10714:10907 if (deprecated) {... */\n tag_197:\n /* \"src/Contract.sol\":10869:10896 super.transfer(_to, _value) */\n tag_201\n /* \"src/Contract.sol\":10884:10887 _to */\n dup3\n /* \"src/Contract.sol\":10889:10895 _value */\n dup3\n /* \"src/Contract.sol\":10869:10883 super.transfer */\n tag_202\n /* \"src/Contract.sol\":10869:10896 super.transfer(_to, _value) */\n jump\t// in\n tag_201:\n /* \"src/Contract.sol\":10594:10913 function transfer(address _to, uint _value) public whenNotPaused {... */\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":13809:14187 function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner {... */\n tag_110:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_204\n jumpi\n 0x0\n dup1\n revert\n tag_204:\n /* \"src/Contract.sol\":14005:14007 20 */\n 0x14\n /* \"src/Contract.sol\":13988:14007 newBasisPoints < 20 */\n dup3\n lt\n /* \"src/Contract.sol\":13980:14008 require(newBasisPoints < 20) */\n tag_206\n jumpi\n 0x0\n dup1\n revert\n tag_206:\n /* \"src/Contract.sol\":14038:14040 50 */\n 0x32\n /* \"src/Contract.sol\":14026:14040 newMaxFee < 50 */\n dup2\n lt\n /* \"src/Contract.sol\":14018:14041 require(newMaxFee < 50) */\n tag_207\n jumpi\n 0x0\n dup1\n revert\n tag_207:\n /* \"src/Contract.sol\":14052:14067 basisPointsRate */\n 0x3\n /* \"src/Contract.sol\":14052:14084 basisPointsRate = newBasisPoints */\n dup3\n swap1\n sstore\n /* \"src/Contract.sol\":14125:14133 decimals */\n sload(0x9)\n /* \"src/Contract.sol\":14107:14134 newMaxFee.mul(10**decimals) */\n tag_208\n swap1\n /* \"src/Contract.sol\":14107:14116 newMaxFee */\n dup3\n swap1\n /* \"src/Contract.sol\":14121:14123 10 */\n 0xa\n /* \"src/Contract.sol\":14121:14133 10**decimals */\n exp\n /* \"src/Contract.sol\":14107:14134 newMaxFee.mul(10**decimals) */\n 0xffffffff\n /* \"src/Contract.sol\":14107:14120 newMaxFee.mul */\n tag_209\n /* \"src/Contract.sol\":14107:14134 newMaxFee.mul(10**decimals) */\n and\n jump\t// in\n tag_208:\n /* \"src/Contract.sol\":14094:14104 maximumFee */\n 0x4\n /* \"src/Contract.sol\":14094:14134 maximumFee = newMaxFee.mul(10**decimals) */\n dup2\n swap1\n sstore\n /* \"src/Contract.sol\":14152:14167 basisPointsRate */\n sload(0x3)\n /* \"src/Contract.sol\":14145:14180 Params(basisPointsRate, maximumFee) */\n 0xb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e\n swap2\n mload(0x40)\n swap2\n dup3\n mstore\n 0x20\n dup3\n add\n mstore\n 0x40\n swap1\n dup2\n add\n swap1\n mload\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":13809:14187 function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner {... */\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":13090:13349 function issue(uint amount) public onlyOwner {... */\n tag_113:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_211\n jumpi\n 0x0\n dup1\n revert\n tag_211:\n /* \"src/Contract.sol\":13177:13189 _totalSupply */\n sload(0x1)\n /* \"src/Contract.sol\":13153:13174 _totalSupply + amount */\n dup2\n dup2\n add\n /* \"src/Contract.sol\":13153:13189 _totalSupply + amount > _totalSupply */\n gt\n /* \"src/Contract.sol\":13145:13190 require(_totalSupply + amount > _totalSupply) */\n tag_213\n jumpi\n 0x0\n dup1\n revert\n tag_213:\n /* \"src/Contract.sol\":13235:13250 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":13244:13249 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":13235:13250 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":13235:13243 balances */\n 0x2\n /* \"src/Contract.sol\":13235:13250 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":13208:13232 balances[owner] + amount */\n dup2\n dup2\n add\n /* \"src/Contract.sol\":13208:13250 balances[owner] + amount > balances[owner] */\n gt\n /* \"src/Contract.sol\":13200:13251 require(balances[owner] + amount > balances[owner]) */\n tag_214\n jumpi\n 0x0\n dup1\n revert\n tag_214:\n /* \"src/Contract.sol\":13262:13277 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":13271:13276 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":13262:13277 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":13262:13270 balances */\n 0x2\n /* \"src/Contract.sol\":13262:13277 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n dup2\n swap1\n keccak256\n /* \"src/Contract.sol\":13262:13287 balances[owner] += amount */\n dup1\n sload\n dup4\n add\n swap1\n sstore\n /* \"src/Contract.sol\":13271:13276 owner */\n 0x1\n /* \"src/Contract.sol\":13297:13319 _totalSupply += amount */\n dup1\n sload\n dup4\n add\n swap1\n sstore\n /* \"src/Contract.sol\":13329:13342 Issue(amount) */\n 0xcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a\n swap1\n /* \"src/Contract.sol\":13281:13287 amount */\n dup3\n swap1\n /* \"src/Contract.sol\":13329:13342 Issue(amount) */\n mload\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":13090:13349 function issue(uint amount) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":13573:13803 function redeem(uint amount) public onlyOwner {... */\n tag_116:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_216\n jumpi\n 0x0\n dup1\n revert\n tag_216:\n /* \"src/Contract.sol\":13637:13649 _totalSupply */\n sload(0x1)\n /* \"src/Contract.sol\":13637:13659 _totalSupply >= amount */\n dup2\n swap1\n lt\n iszero\n /* \"src/Contract.sol\":13629:13660 require(_totalSupply >= amount) */\n tag_218\n jumpi\n 0x0\n dup1\n revert\n tag_218:\n /* \"src/Contract.sol\":13678:13693 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":13687:13692 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":13678:13693 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":13678:13686 balances */\n 0x2\n /* \"src/Contract.sol\":13678:13693 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":13678:13703 balances[owner] >= amount */\n dup2\n swap1\n lt\n iszero\n /* \"src/Contract.sol\":13670:13704 require(balances[owner] >= amount) */\n tag_219\n jumpi\n 0x0\n dup1\n revert\n tag_219:\n /* \"src/Contract.sol\":13715:13727 _totalSupply */\n 0x1\n /* \"src/Contract.sol\":13715:13737 _totalSupply -= amount */\n dup1\n sload\n dup3\n swap1\n sub\n swap1\n sstore\n /* \"src/Contract.sol\":13715:13727 _totalSupply */\n 0x0\n /* \"src/Contract.sol\":13756:13761 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":13747:13762 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":13747:13755 balances */\n 0x2\n /* \"src/Contract.sol\":13747:13762 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n dup2\n swap1\n keccak256\n /* \"src/Contract.sol\":13747:13772 balances[owner] -= amount */\n dup1\n sload\n dup4\n swap1\n sub\n swap1\n sstore\n /* \"src/Contract.sol\":13782:13796 Redeem(amount) */\n 0x702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a44\n swap1\n /* \"src/Contract.sol\":13731:13737 amount */\n dup3\n swap1\n /* \"src/Contract.sol\":13782:13796 Redeem(amount) */\n mload\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":13573:13803 function redeem(uint amount) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":12130:12417 function allowance(address _owner, address _spender) public constant returns (uint remaining) {... */\n tag_119:\n /* \"src/Contract.sol\":12238:12248 deprecated */\n sload(0xa)\n /* \"src/Contract.sol\":12208:12222 uint remaining */\n 0x0\n swap1\n /* \"src/Contract.sol\":12238:12248 deprecated */\n 0x10000000000000000000000000000000000000000\n swap1\n div\n 0xff\n and\n /* \"src/Contract.sol\":12234:12411 if (deprecated) {... */\n iszero\n tag_221\n jumpi\n /* \"src/Contract.sol\":12285:12300 upgradedAddress */\n and(0xffffffffffffffffffffffffffffffffffffffff, sload(0xa))\n /* \"src/Contract.sol\":12271:12311 StandardToken(upgradedAddress).allowance */\n 0xdd62ed3e\n /* \"src/Contract.sol\":12312:12318 _owner */\n dup5\n /* \"src/Contract.sol\":12320:12328 _spender */\n dup5\n /* \"src/Contract.sol\":12285:12300 upgradedAddress */\n 0x0\n /* \"src/Contract.sol\":12271:12329 StandardToken(upgradedAddress).allowance(_owner, _spender) */\n add(0x20, mload(0x40))\n mstore\n mload(0x40)\n 0x100000000000000000000000000000000000000000000000000000000\n 0xffffffff\n dup6\n and\n mul\n dup2\n mstore\n 0xffffffffffffffffffffffffffffffffffffffff\n swap3\n dup4\n and\n 0x4\n dup3\n add\n mstore\n swap2\n and\n 0x24\n dup3\n add\n mstore\n 0x44\n add\n 0x20\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x0\n dup8\n dup1\n extcodesize\n iszero\n iszero\n tag_222\n jumpi\n 0x0\n dup1\n revert\n tag_222:\n sub(gas, 0x2c6)\n call\n iszero\n iszero\n tag_223\n jumpi\n 0x0\n dup1\n revert\n tag_223:\n pop\n pop\n pop\n mload(0x40)\n dup1\n mload\n swap1\n pop\n /* \"src/Contract.sol\":12264:12329 return StandardToken(upgradedAddress).allowance(_owner, _spender) */\n swap1\n pop\n jump(tag_224)\n /* \"src/Contract.sol\":12234:12411 if (deprecated) {... */\n tag_221:\n /* \"src/Contract.sol\":12367:12400 super.allowance(_owner, _spender) */\n tag_225\n /* \"src/Contract.sol\":12383:12389 _owner */\n dup4\n /* \"src/Contract.sol\":12391:12399 _spender */\n dup4\n /* \"src/Contract.sol\":12367:12382 super.allowance */\n tag_226\n /* \"src/Contract.sol\":12367:12400 super.allowance(_owner, _spender) */\n jump\t// in\n tag_225:\n /* \"src/Contract.sol\":12360:12400 return super.allowance(_owner, _spender) */\n swap1\n pop\n /* \"src/Contract.sol\":12234:12411 if (deprecated) {... */\n tag_224:\n /* \"src/Contract.sol\":12130:12417 function allowance(address _owner, address _spender) public constant returns (uint remaining) {... */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":3041:3072 uint public basisPointsRate = 0 */\n tag_122:\n sload(0x3)\n dup2\n jump\t// out\n /* \"src/Contract.sol\":8448:8494 mapping (address => bool) public isBlackListed */\n tag_125:\n mstore(0x20, 0x6)\n 0x0\n swap1\n dup2\n mstore\n 0x40\n swap1\n keccak256\n sload\n 0xff\n and\n dup2\n jump\t// out\n /* \"src/Contract.sol\":8653:8810 function removeBlackList (address _clearedUser) public onlyOwner {... */\n tag_128:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_228\n jumpi\n 0x0\n dup1\n revert\n tag_228:\n /* \"src/Contract.sol\":8728:8755 isBlackListed[_clearedUser] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n /* \"src/Contract.sol\":8758:8763 false */\n 0x0\n /* \"src/Contract.sol\":8728:8755 isBlackListed[_clearedUser] */\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":8728:8741 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":8728:8755 isBlackListed[_clearedUser] */\n 0x20\n mstore\n 0x40\n swap1\n dup2\n swap1\n keccak256\n /* \"src/Contract.sol\":8728:8763 isBlackListed[_clearedUser] = false */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00\n and\n swap1\n sstore\n /* \"src/Contract.sol\":8773:8803 RemovedBlackList(_clearedUser) */\n 0xd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c\n swap1\n /* \"src/Contract.sol\":8742:8754 _clearedUser */\n dup3\n swap1\n /* \"src/Contract.sol\":8773:8803 RemovedBlackList(_clearedUser) */\n mload\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap2\n and\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":8653:8810 function removeBlackList (address _clearedUser) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":4720:4762 uint public constant MAX_UINT = 2**256 - 1 */\n tag_131:\n /* \"src/Contract.sol\":4752:4762 2**256 - 1 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":4720:4762 uint public constant MAX_UINT = 2**256 - 1 */\n dup2\n jump\t// out\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_134:\n /* \"src/Contract.sol\":1546:1551 owner */\n sload(0x0)\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_231\n jumpi\n 0x0\n dup1\n revert\n tag_231:\n /* \"src/Contract.sol\":1814:1836 newOwner != address(0) */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup2\n and\n iszero\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_233\n jumpi\n /* \"src/Contract.sol\":1852:1857 owner */\n 0x0\n /* \"src/Contract.sol\":1852:1868 owner = newOwner */\n dup1\n sload\n 0xffffffffffffffffffffffff0000000000000000000000000000000000000000\n and\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n or\n swap1\n sstore\n /* \"src/Contract.sol\":1810:1879 if (newOwner != address(0)) {... */\n tag_233:\n /* \"src/Contract.sol\":1738:1885 function transferOwnership(address newOwner) public onlyOwner {... */\n pop\n jump\t// out\n /* \"src/Contract.sol\":8816:9134 function destroyBlackFunds (address _blackListedUser) public onlyOwner {... */\n tag_137:\n /* \"src/Contract.sol\":8947:8962 uint dirtyFunds */\n 0x0\n /* \"src/Contract.sol\":1546:1551 owner */\n dup1\n sload\n /* \"src/Contract.sol\":1532:1542 msg.sender */\n caller\n /* \"src/Contract.sol\":1546:1551 owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n swap1\n dup2\n and\n /* \"src/Contract.sol\":1546:1551 owner */\n swap2\n and\n /* \"src/Contract.sol\":1532:1551 msg.sender == owner */\n eq\n /* \"src/Contract.sol\":1524:1552 require(msg.sender == owner) */\n tag_235\n jumpi\n 0x0\n dup1\n revert\n tag_235:\n /* \"src/Contract.sol\":8905:8936 isBlackListed[_blackListedUser] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup3\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":8905:8918 isBlackListed */\n 0x6\n /* \"src/Contract.sol\":8905:8936 isBlackListed[_blackListedUser] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n 0xff\n and\n /* \"src/Contract.sol\":8897:8937 require(isBlackListed[_blackListedUser]) */\n iszero\n iszero\n tag_237\n jumpi\n 0x0\n dup1\n revert\n tag_237:\n /* \"src/Contract.sol\":8965:8992 balanceOf(_blackListedUser) */\n tag_238\n /* \"src/Contract.sol\":8975:8991 _blackListedUser */\n dup3\n /* \"src/Contract.sol\":8965:8974 balanceOf */\n tag_88\n /* \"src/Contract.sol\":8965:8992 balanceOf(_blackListedUser) */\n jump\t// in\n tag_238:\n /* \"src/Contract.sol\":9002:9028 balances[_blackListedUser] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup4\n and\n /* \"src/Contract.sol\":9031:9032 0 */\n 0x0\n /* \"src/Contract.sol\":9002:9028 balances[_blackListedUser] */\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":9002:9010 balances */\n 0x2\n /* \"src/Contract.sol\":9002:9028 balances[_blackListedUser] */\n 0x20\n mstore\n 0x40\n dup1\n dup3\n keccak256\n /* \"src/Contract.sol\":9002:9032 balances[_blackListedUser] = 0 */\n swap2\n swap1\n swap2\n sstore\n /* \"src/Contract.sol\":9042:9054 _totalSupply */\n 0x1\n /* \"src/Contract.sol\":9042:9068 _totalSupply -= dirtyFunds */\n dup1\n sload\n dup4\n swap1\n sub\n swap1\n sstore\n /* \"src/Contract.sol\":8947:8992 uint dirtyFunds = balanceOf(_blackListedUser) */\n swap1\n swap2\n pop\n /* \"src/Contract.sol\":9078:9127 DestroyedBlackFunds(_blackListedUser, dirtyFunds) */\n 0x61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c6\n swap1\n /* \"src/Contract.sol\":9011:9027 _blackListedUser */\n dup4\n swap1\n /* \"src/Contract.sol\":8947:8992 uint dirtyFunds = balanceOf(_blackListedUser) */\n dup4\n swap1\n /* \"src/Contract.sol\":9078:9127 DestroyedBlackFunds(_blackListedUser, dirtyFunds) */\n mload\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n swap3\n and\n dup3\n mstore\n 0x20\n dup3\n add\n mstore\n 0x40\n swap1\n dup2\n add\n swap1\n mload\n dup1\n swap2\n sub\n swap1\n log1\n /* \"src/Contract.sol\":8816:9134 function destroyBlackFunds (address _blackListedUser) public onlyOwner {... */\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":6164:6727 function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {... */\n tag_152:\n /* \"src/Contract.sol\":6235:6241 2 * 32 */\n 0x40\n /* \"src/Contract.sol\":3251:3259 size + 4 */\n 0x44\n /* \"src/Contract.sol\":3233:3241 msg.data */\n calldatasize\n /* \"src/Contract.sol\":3233:3259 msg.data.length < size + 4 */\n lt\n /* \"src/Contract.sol\":3231:3260 !(msg.data.length < size + 4) */\n iszero\n /* \"src/Contract.sol\":3223:3261 require(!(msg.data.length < size + 4)) */\n tag_240\n jumpi\n 0x0\n dup1\n revert\n tag_240:\n /* \"src/Contract.sol\":6569:6580 _value != 0 */\n dup2\n iszero\n dup1\n iszero\n swap1\n /* \"src/Contract.sol\":6568:6621 (_value != 0) && (allowed[msg.sender][_spender] != 0) */\n tag_242\n jumpi\n pop\n /* \"src/Contract.sol\":6586:6605 allowed[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":6594:6604 msg.sender */\n caller\n /* \"src/Contract.sol\":6586:6605 allowed[msg.sender] */\n dup2\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":6586:6593 allowed */\n 0x5\n /* \"src/Contract.sol\":6586:6605 allowed[msg.sender] */\n 0x20\n swap1\n dup2\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":6586:6615 allowed[msg.sender][_spender] */\n swap4\n dup8\n and\n dup4\n mstore\n swap3\n swap1\n mstore\n keccak256\n sload\n /* \"src/Contract.sol\":6586:6620 allowed[msg.sender][_spender] != 0 */\n iszero\n iszero\n /* \"src/Contract.sol\":6568:6621 (_value != 0) && (allowed[msg.sender][_spender] != 0) */\n tag_242:\n /* \"src/Contract.sol\":6566:6622 !((_value != 0) && (allowed[msg.sender][_spender] != 0)) */\n iszero\n /* \"src/Contract.sol\":6558:6623 require(!((_value != 0) && (allowed[msg.sender][_spender] != 0))) */\n tag_243\n jumpi\n 0x0\n dup1\n revert\n tag_243:\n /* \"src/Contract.sol\":6634:6653 allowed[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":6642:6652 msg.sender */\n caller\n /* \"src/Contract.sol\":6634:6653 allowed[msg.sender] */\n dup2\n and\n 0x0\n dup2\n dup2\n mstore\n /* \"src/Contract.sol\":6634:6641 allowed */\n 0x5\n /* \"src/Contract.sol\":6634:6653 allowed[msg.sender] */\n 0x20\n swap1\n dup2\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":6634:6663 allowed[msg.sender][_spender] */\n swap5\n dup9\n and\n dup1\n dup5\n mstore\n swap5\n swap1\n swap2\n mstore\n swap1\n dup2\n swap1\n keccak256\n /* \"src/Contract.sol\":6634:6672 allowed[msg.sender][_spender] = _value */\n dup6\n swap1\n sstore\n /* \"src/Contract.sol\":6682:6720 Approval(msg.sender, _spender, _value) */\n 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925\n swap1\n /* \"src/Contract.sol\":6666:6672 _value */\n dup6\n swap1\n /* \"src/Contract.sol\":6682:6720 Approval(msg.sender, _spender, _value) */\n mload\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"src/Contract.sol\":6164:6727 function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {... */\n pop\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":5044:5924 function transferFrom(address _from, address _to, uint _value) public onlyPayloadSize(3 * 32) {... */\n tag_170:\n /* \"src/Contract.sol\":5148:5162 var _allowance */\n 0x0\n dup1\n dup1\n /* \"src/Contract.sol\":5130:5136 3 * 32 */\n 0x60\n /* \"src/Contract.sol\":3251:3259 size + 4 */\n 0x64\n /* \"src/Contract.sol\":3233:3241 msg.data */\n calldatasize\n /* \"src/Contract.sol\":3233:3259 msg.data.length < size + 4 */\n lt\n /* \"src/Contract.sol\":3231:3260 !(msg.data.length < size + 4) */\n iszero\n /* \"src/Contract.sol\":3223:3261 require(!(msg.data.length < size + 4)) */\n tag_245\n jumpi\n 0x0\n dup1\n revert\n tag_245:\n /* \"src/Contract.sol\":5165:5179 allowed[_from] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup1\n dup9\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":5165:5172 allowed */\n 0x5\n /* \"src/Contract.sol\":5165:5179 allowed[_from] */\n 0x20\n swap1\n dup2\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":5180:5190 msg.sender */\n caller\n /* \"src/Contract.sol\":5165:5191 allowed[_from][msg.sender] */\n swap1\n swap5\n and\n dup4\n mstore\n swap3\n swap1\n mstore\n keccak256\n sload\n /* \"src/Contract.sol\":5380:5395 basisPointsRate */\n sload(0x3)\n /* \"src/Contract.sol\":5165:5191 allowed[_from][msg.sender] */\n swap1\n swap5\n pop\n /* \"src/Contract.sol\":5368:5408 (_value.mul(basisPointsRate)).div(10000) */\n tag_247\n swap1\n /* \"src/Contract.sol\":5402:5407 10000 */\n 0x2710\n swap1\n /* \"src/Contract.sol\":5369:5396 _value.mul(basisPointsRate) */\n tag_248\n swap1\n /* \"src/Contract.sol\":5369:5375 _value */\n dup9\n swap1\n /* \"src/Contract.sol\":5369:5396 _value.mul(basisPointsRate) */\n 0xffffffff\n /* \"src/Contract.sol\":5369:5379 _value.mul */\n tag_209\n /* \"src/Contract.sol\":5369:5396 _value.mul(basisPointsRate) */\n and\n jump\t// in\n tag_248:\n /* \"src/Contract.sol\":5368:5401 (_value.mul(basisPointsRate)).div */\n swap1\n /* \"src/Contract.sol\":5368:5408 (_value.mul(basisPointsRate)).div(10000) */\n 0xffffffff\n /* \"src/Contract.sol\":5368:5401 (_value.mul(basisPointsRate)).div */\n tag_249\n /* \"src/Contract.sol\":5368:5408 (_value.mul(basisPointsRate)).div(10000) */\n and\n jump\t// in\n tag_247:\n /* \"src/Contract.sol\":5357:5408 uint fee = (_value.mul(basisPointsRate)).div(10000) */\n swap3\n pop\n /* \"src/Contract.sol\":5428:5438 maximumFee */\n sload(0x4)\n /* \"src/Contract.sol\":5422:5425 fee */\n dup4\n /* \"src/Contract.sol\":5422:5438 fee > maximumFee */\n gt\n /* \"src/Contract.sol\":5418:5481 if (fee > maximumFee) {... */\n iszero\n tag_250\n jumpi\n /* \"src/Contract.sol\":5460:5470 maximumFee */\n sload(0x4)\n /* \"src/Contract.sol\":5454:5470 fee = maximumFee */\n swap3\n pop\n /* \"src/Contract.sol\":5418:5481 if (fee > maximumFee) {... */\n tag_250:\n /* \"src/Contract.sol\":4752:4762 2**256 - 1 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":5494:5504 _allowance */\n dup5\n /* \"src/Contract.sol\":5494:5515 _allowance < MAX_UINT */\n lt\n /* \"src/Contract.sol\":5490:5593 if (_allowance < MAX_UINT) {... */\n iszero\n tag_251\n jumpi\n /* \"src/Contract.sol\":5560:5582 _allowance.sub(_value) */\n tag_252\n /* \"src/Contract.sol\":5560:5570 _allowance */\n dup5\n /* \"src/Contract.sol\":5575:5581 _value */\n dup7\n /* \"src/Contract.sol\":5560:5582 _allowance.sub(_value) */\n 0xffffffff\n /* \"src/Contract.sol\":5560:5574 _allowance.sub */\n tag_253\n /* \"src/Contract.sol\":5560:5582 _allowance.sub(_value) */\n and\n jump\t// in\n tag_252:\n /* \"src/Contract.sol\":5531:5545 allowed[_from] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup1\n dup10\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":5531:5538 allowed */\n 0x5\n /* \"src/Contract.sol\":5531:5545 allowed[_from] */\n 0x20\n swap1\n dup2\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":5546:5556 msg.sender */\n caller\n /* \"src/Contract.sol\":5531:5557 allowed[_from][msg.sender] */\n swap1\n swap5\n and\n dup4\n mstore\n swap3\n swap1\n mstore\n keccak256\n /* \"src/Contract.sol\":5531:5582 allowed[_from][msg.sender] = _allowance.sub(_value) */\n sstore\n /* \"src/Contract.sol\":5490:5593 if (_allowance < MAX_UINT) {... */\n tag_251:\n /* \"src/Contract.sol\":5620:5635 _value.sub(fee) */\n tag_254\n /* \"src/Contract.sol\":5620:5626 _value */\n dup6\n /* \"src/Contract.sol\":5631:5634 fee */\n dup5\n /* \"src/Contract.sol\":5620:5635 _value.sub(fee) */\n 0xffffffff\n /* \"src/Contract.sol\":5620:5630 _value.sub */\n tag_253\n /* \"src/Contract.sol\":5620:5635 _value.sub(fee) */\n and\n jump\t// in\n tag_254:\n /* \"src/Contract.sol\":5663:5678 balances[_from] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup9\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":5663:5671 balances */\n 0x2\n /* \"src/Contract.sol\":5663:5678 balances[_from] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":5602:5635 uint sendAmount = _value.sub(fee) */\n swap1\n swap3\n pop\n /* \"src/Contract.sol\":5663:5690 balances[_from].sub(_value) */\n tag_255\n swap1\n /* \"src/Contract.sol\":5683:5689 _value */\n dup7\n /* \"src/Contract.sol\":5663:5690 balances[_from].sub(_value) */\n 0xffffffff\n /* \"src/Contract.sol\":5663:5682 balances[_from].sub */\n tag_253\n /* \"src/Contract.sol\":5663:5690 balances[_from].sub(_value) */\n and\n jump\t// in\n tag_255:\n /* \"src/Contract.sol\":5645:5660 balances[_from] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup1\n dup10\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":5645:5653 balances */\n 0x2\n /* \"src/Contract.sol\":5645:5660 balances[_from] */\n 0x20\n mstore\n 0x40\n dup1\n dup3\n keccak256\n /* \"src/Contract.sol\":5645:5690 balances[_from] = balances[_from].sub(_value) */\n swap4\n swap1\n swap4\n sstore\n /* \"src/Contract.sol\":5716:5729 balances[_to] */\n swap1\n dup9\n and\n dup2\n mstore\n keccak256\n sload\n /* \"src/Contract.sol\":5716:5745 balances[_to].add(sendAmount) */\n tag_256\n swap1\n /* \"src/Contract.sol\":5734:5744 sendAmount */\n dup4\n /* \"src/Contract.sol\":5716:5745 balances[_to].add(sendAmount) */\n 0xffffffff\n /* \"src/Contract.sol\":5716:5733 balances[_to].add */\n tag_257\n /* \"src/Contract.sol\":5716:5745 balances[_to].add(sendAmount) */\n and\n jump\t// in\n tag_256:\n /* \"src/Contract.sol\":5700:5713 balances[_to] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup8\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":5700:5708 balances */\n 0x2\n /* \"src/Contract.sol\":5700:5713 balances[_to] */\n 0x20\n mstore\n 0x40\n dup2\n keccak256\n /* \"src/Contract.sol\":5700:5745 balances[_to] = balances[_to].add(sendAmount) */\n swap2\n swap1\n swap2\n sstore\n /* \"src/Contract.sol\":5759:5766 fee > 0 */\n dup4\n gt\n /* \"src/Contract.sol\":5755:5876 if (fee > 0) {... */\n iszero\n tag_258\n jumpi\n /* \"src/Contract.sol\":5800:5815 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":5809:5814 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":5800:5815 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":5800:5808 balances */\n 0x2\n /* \"src/Contract.sol\":5800:5815 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":5800:5824 balances[owner].add(fee) */\n tag_259\n swap1\n /* \"src/Contract.sol\":5820:5823 fee */\n dup5\n /* \"src/Contract.sol\":5800:5824 balances[owner].add(fee) */\n 0xffffffff\n /* \"src/Contract.sol\":5800:5819 balances[owner].add */\n tag_257\n /* \"src/Contract.sol\":5800:5824 balances[owner].add(fee) */\n and\n jump\t// in\n tag_259:\n /* \"src/Contract.sol\":5782:5797 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":5791:5796 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n dup2\n and\n /* \"src/Contract.sol\":5782:5797 balances[owner] */\n dup3\n mstore\n /* \"src/Contract.sol\":5782:5790 balances */\n 0x2\n /* \"src/Contract.sol\":5782:5797 balances[owner] */\n 0x20\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":5782:5824 balances[owner] = balances[owner].add(fee) */\n swap4\n swap1\n swap4\n sstore\n /* \"src/Contract.sol\":5854:5859 owner */\n swap1\n sload\n dup2\n and\n swap2\n /* \"src/Contract.sol\":5838:5865 Transfer(_from, owner, fee) */\n swap1\n dup10\n and\n swap1\n 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\n swap1\n /* \"src/Contract.sol\":5861:5864 fee */\n dup7\n swap1\n /* \"src/Contract.sol\":5838:5865 Transfer(_from, owner, fee) */\n mload\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"src/Contract.sol\":5755:5876 if (fee > 0) {... */\n tag_258:\n /* \"src/Contract.sol\":5901:5904 _to */\n dup6\n /* \"src/Contract.sol\":5885:5917 Transfer(_from, _to, sendAmount) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":5894:5899 _from */\n dup8\n /* \"src/Contract.sol\":5885:5917 Transfer(_from, _to, sendAmount) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\n /* \"src/Contract.sol\":5906:5916 sendAmount */\n dup5\n /* \"src/Contract.sol\":5885:5917 Transfer(_from, _to, sendAmount) */\n mload(0x40)\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"src/Contract.sol\":5044:5924 function transferFrom(address _from, address _to, uint _value) public onlyPayloadSize(3 * 32) {... */\n pop\n pop\n pop\n pop\n pop\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":4216:4330 function balanceOf(address _owner) public constant returns (uint balance) {... */\n tag_183:\n /* \"src/Contract.sol\":4307:4323 balances[_owner] */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":4276:4288 uint balance */\n 0x0\n /* \"src/Contract.sol\":4307:4323 balances[_owner] */\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":4307:4315 balances */\n 0x2\n /* \"src/Contract.sol\":4307:4323 balances[_owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n swap1\n /* \"src/Contract.sol\":4216:4330 function balanceOf(address _owner) public constant returns (uint balance) {... */\n jump\t// out\n /* \"src/Contract.sol\":3445:4005 function transfer(address _to, uint _value) public onlyPayloadSize(2 * 32) {... */\n tag_202:\n /* \"src/Contract.sol\":3530:3538 uint fee */\n 0x0\n dup1\n /* \"src/Contract.sol\":3512:3518 2 * 32 */\n 0x40\n /* \"src/Contract.sol\":3251:3259 size + 4 */\n 0x44\n /* \"src/Contract.sol\":3233:3241 msg.data */\n calldatasize\n /* \"src/Contract.sol\":3233:3259 msg.data.length < size + 4 */\n lt\n /* \"src/Contract.sol\":3231:3260 !(msg.data.length < size + 4) */\n iszero\n /* \"src/Contract.sol\":3223:3261 require(!(msg.data.length < size + 4)) */\n tag_262\n jumpi\n 0x0\n dup1\n revert\n tag_262:\n /* \"src/Contract.sol\":3541:3581 (_value.mul(basisPointsRate)).div(10000) */\n tag_264\n /* \"src/Contract.sol\":3575:3580 10000 */\n 0x2710\n /* \"src/Contract.sol\":3542:3569 _value.mul(basisPointsRate) */\n tag_248\n /* \"src/Contract.sol\":3553:3568 basisPointsRate */\n sload(0x3)\n /* \"src/Contract.sol\":3542:3548 _value */\n dup8\n /* \"src/Contract.sol\":3542:3552 _value.mul */\n tag_209\n swap1\n /* \"src/Contract.sol\":3542:3569 _value.mul(basisPointsRate) */\n swap2\n swap1\n 0xffffffff\n and\n jump\t// in\n /* \"src/Contract.sol\":3541:3581 (_value.mul(basisPointsRate)).div(10000) */\n tag_264:\n /* \"src/Contract.sol\":3530:3581 uint fee = (_value.mul(basisPointsRate)).div(10000) */\n swap3\n pop\n /* \"src/Contract.sol\":3601:3611 maximumFee */\n sload(0x4)\n /* \"src/Contract.sol\":3595:3598 fee */\n dup4\n /* \"src/Contract.sol\":3595:3611 fee > maximumFee */\n gt\n /* \"src/Contract.sol\":3591:3654 if (fee > maximumFee) {... */\n iszero\n tag_266\n jumpi\n /* \"src/Contract.sol\":3633:3643 maximumFee */\n sload(0x4)\n /* \"src/Contract.sol\":3627:3643 fee = maximumFee */\n swap3\n pop\n /* \"src/Contract.sol\":3591:3654 if (fee > maximumFee) {... */\n tag_266:\n /* \"src/Contract.sol\":3681:3696 _value.sub(fee) */\n tag_267\n /* \"src/Contract.sol\":3681:3687 _value */\n dup5\n /* \"src/Contract.sol\":3692:3695 fee */\n dup5\n /* \"src/Contract.sol\":3681:3696 _value.sub(fee) */\n 0xffffffff\n /* \"src/Contract.sol\":3681:3691 _value.sub */\n tag_253\n /* \"src/Contract.sol\":3681:3696 _value.sub(fee) */\n and\n jump\t// in\n tag_267:\n /* \"src/Contract.sol\":3729:3749 balances[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":3738:3748 msg.sender */\n caller\n /* \"src/Contract.sol\":3729:3749 balances[msg.sender] */\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":3729:3737 balances */\n 0x2\n /* \"src/Contract.sol\":3729:3749 balances[msg.sender] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":3663:3696 uint sendAmount = _value.sub(fee) */\n swap1\n swap3\n pop\n /* \"src/Contract.sol\":3729:3761 balances[msg.sender].sub(_value) */\n tag_268\n swap1\n /* \"src/Contract.sol\":3754:3760 _value */\n dup6\n /* \"src/Contract.sol\":3729:3761 balances[msg.sender].sub(_value) */\n 0xffffffff\n /* \"src/Contract.sol\":3729:3753 balances[msg.sender].sub */\n tag_253\n /* \"src/Contract.sol\":3729:3761 balances[msg.sender].sub(_value) */\n and\n jump\t// in\n tag_268:\n /* \"src/Contract.sol\":3706:3726 balances[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"src/Contract.sol\":3715:3725 msg.sender */\n caller\n /* \"src/Contract.sol\":3706:3726 balances[msg.sender] */\n dup2\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":3706:3714 balances */\n 0x2\n /* \"src/Contract.sol\":3706:3726 balances[msg.sender] */\n 0x20\n mstore\n 0x40\n dup1\n dup3\n keccak256\n /* \"src/Contract.sol\":3706:3761 balances[msg.sender] = balances[msg.sender].sub(_value) */\n swap4\n swap1\n swap4\n sstore\n /* \"src/Contract.sol\":3787:3800 balances[_to] */\n swap1\n dup8\n and\n dup2\n mstore\n keccak256\n sload\n /* \"src/Contract.sol\":3787:3816 balances[_to].add(sendAmount) */\n tag_269\n swap1\n /* \"src/Contract.sol\":3805:3815 sendAmount */\n dup4\n /* \"src/Contract.sol\":3787:3816 balances[_to].add(sendAmount) */\n 0xffffffff\n /* \"src/Contract.sol\":3787:3804 balances[_to].add */\n tag_257\n /* \"src/Contract.sol\":3787:3816 balances[_to].add(sendAmount) */\n and\n jump\t// in\n tag_269:\n /* \"src/Contract.sol\":3771:3784 balances[_to] */\n 0xffffffffffffffffffffffffffffffffffffffff\n dup7\n and\n 0x0\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":3771:3779 balances */\n 0x2\n /* \"src/Contract.sol\":3771:3784 balances[_to] */\n 0x20\n mstore\n 0x40\n dup2\n keccak256\n /* \"src/Contract.sol\":3771:3816 balances[_to] = balances[_to].add(sendAmount) */\n swap2\n swap1\n swap2\n sstore\n /* \"src/Contract.sol\":3830:3837 fee > 0 */\n dup4\n gt\n /* \"src/Contract.sol\":3826:3952 if (fee > 0) {... */\n iszero\n tag_270\n jumpi\n /* \"src/Contract.sol\":3871:3886 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":3880:3885 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":3871:3886 balances[owner] */\n dup2\n mstore\n /* \"src/Contract.sol\":3871:3879 balances */\n 0x2\n /* \"src/Contract.sol\":3871:3886 balances[owner] */\n 0x20\n mstore\n 0x40\n swap1\n keccak256\n sload\n /* \"src/Contract.sol\":3871:3895 balances[owner].add(fee) */\n tag_271\n swap1\n /* \"src/Contract.sol\":3891:3894 fee */\n dup5\n /* \"src/Contract.sol\":3871:3895 balances[owner].add(fee) */\n 0xffffffff\n /* \"src/Contract.sol\":3871:3890 balances[owner].add */\n tag_257\n /* \"src/Contract.sol\":3871:3895 balances[owner].add(fee) */\n and\n jump\t// in\n tag_271:\n /* \"src/Contract.sol\":3853:3868 balances[owner] */\n 0x0\n /* \"src/Contract.sol\":3862:3867 owner */\n dup1\n sload\n 0xffffffffffffffffffffffffffffffffffffffff\n swap1\n dup2\n and\n /* \"src/Contract.sol\":3853:3868 balances[owner] */\n dup3\n mstore\n /* \"src/Contract.sol\":3853:3861 balances */\n 0x2\n /* \"src/Contract.sol\":3853:3868 balances[owner] */\n 0x20\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":3853:3895 balances[owner] = balances[owner].add(fee) */\n swap4\n swap1\n swap4\n sstore\n /* \"src/Contract.sol\":3930:3935 owner */\n swap1\n sload\n dup2\n and\n swap2\n /* \"src/Contract.sol\":3918:3928 msg.sender */\n caller\n /* \"src/Contract.sol\":3909:3941 Transfer(msg.sender, owner, fee) */\n swap1\n swap2\n and\n swap1\n 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\n swap1\n /* \"src/Contract.sol\":3937:3940 fee */\n dup7\n swap1\n /* \"src/Contract.sol\":3909:3941 Transfer(msg.sender, owner, fee) */\n mload\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"src/Contract.sol\":3826:3952 if (fee > 0) {... */\n tag_270:\n /* \"src/Contract.sol\":3982:3985 _to */\n dup5\n /* \"src/Contract.sol\":3961:3998 Transfer(msg.sender, _to, sendAmount) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"src/Contract.sol\":3970:3980 msg.sender */\n caller\n /* \"src/Contract.sol\":3961:3998 Transfer(msg.sender, _to, sendAmount) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\n /* \"src/Contract.sol\":3987:3997 sendAmount */\n dup5\n /* \"src/Contract.sol\":3961:3998 Transfer(msg.sender, _to, sendAmount) */\n mload(0x40)\n swap1\n dup2\n mstore\n 0x20\n add\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"src/Contract.sol\":3445:4005 function transfer(address _to, uint _value) public onlyPayloadSize(2 * 32) {... */\n pop\n pop\n pop\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":206:407 function mul(uint256 a, uint256 b) internal pure returns (uint256) {... */\n tag_209:\n /* \"src/Contract.sol\":264:271 uint256 */\n 0x0\n dup1\n /* \"src/Contract.sol\":287:293 a == 0 */\n dup4\n iszero\n /* \"src/Contract.sol\":283:328 if (a == 0) {... */\n iszero\n tag_273\n jumpi\n /* \"src/Contract.sol\":316:317 0 */\n 0x0\n /* \"src/Contract.sol\":309:317 return 0 */\n swap2\n pop\n jump(tag_272)\n /* \"src/Contract.sol\":283:328 if (a == 0) {... */\n tag_273:\n pop\n /* \"src/Contract.sol\":349:354 a * b */\n dup3\n dup3\n mul\n /* \"src/Contract.sol\":353:354 b */\n dup3\n /* \"src/Contract.sol\":349:350 a */\n dup5\n /* \"src/Contract.sol\":349:354 a * b */\n dup3\n /* \"src/Contract.sol\":371:376 c / a */\n dup2\n iszero\n iszero\n tag_274\n jumpi\n invalid\n tag_274:\n div\n /* \"src/Contract.sol\":371:381 c / a == b */\n eq\n /* \"src/Contract.sol\":364:382 assert(c / a == b) */\n tag_275\n jumpi\n invalid\n tag_275:\n /* \"src/Contract.sol\":399:400 c */\n dup1\n /* \"src/Contract.sol\":392:400 return c */\n swap2\n pop\n /* \"src/Contract.sol\":206:407 function mul(uint256 a, uint256 b) internal pure returns (uint256) {... */\n tag_272:\n pop\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":7052:7195 function allowance(address _owner, address _spender) public constant returns (uint remaining) {... */\n tag_226:\n /* \"src/Contract.sol\":7163:7178 allowed[_owner] */\n 0xffffffffffffffffffffffffffffffffffffffff\n swap2\n dup3\n and\n /* \"src/Contract.sol\":7130:7144 uint remaining */\n 0x0\n /* \"src/Contract.sol\":7163:7178 allowed[_owner] */\n swap1\n dup2\n mstore\n /* \"src/Contract.sol\":7163:7170 allowed */\n 0x5\n /* \"src/Contract.sol\":7163:7178 allowed[_owner] */\n 0x20\n swap1\n dup2\n mstore\n 0x40\n dup1\n dup4\n keccak256\n /* \"src/Contract.sol\":7163:7188 allowed[_owner][_spender] */\n swap4\n swap1\n swap5\n and\n dup3\n mstore\n swap2\n swap1\n swap2\n mstore\n keccak256\n sload\n swap1\n /* \"src/Contract.sol\":7052:7195 function allowance(address _owner, address _spender) public constant returns (uint remaining) {... */\n jump\t// out\n /* \"src/Contract.sol\":413:696 function div(uint256 a, uint256 b) internal pure returns (uint256) {... */\n tag_249:\n /* \"src/Contract.sol\":471:478 uint256 */\n 0x0\n /* \"src/Contract.sol\":568:577 uint256 c */\n dup1\n /* \"src/Contract.sol\":584:585 b */\n dup3\n /* \"src/Contract.sol\":580:581 a */\n dup5\n /* \"src/Contract.sol\":580:585 a / b */\n dup2\n iszero\n iszero\n tag_278\n jumpi\n invalid\n tag_278:\n div\n swap5\n /* \"src/Contract.sol\":413:696 function div(uint256 a, uint256 b) internal pure returns (uint256) {... */\n swap4\n pop\n pop\n pop\n pop\n jump\t// out\n /* \"src/Contract.sol\":702:822 function sub(uint256 a, uint256 b) internal pure returns (uint256) {... */\n tag_253:\n /* \"src/Contract.sol\":760:767 uint256 */\n 0x0\n /* \"src/Contract.sol\":786:792 b <= a */\n dup3\n dup3\n gt\n iszero\n /* \"src/Contract.sol\":779:793 assert(b <= a) */\n tag_280\n jumpi\n invalid\n tag_280:\n pop\n /* \"src/Contract.sol\":810:815 a - b */\n swap1\n sub\n swap1\n /* \"src/Contract.sol\":702:822 function sub(uint256 a, uint256 b) internal pure returns (uint256) {... */\n jump\t// out\n /* \"src/Contract.sol\":828:971 function add(uint256 a, uint256 b) internal pure returns (uint256) {... */\n tag_257:\n /* \"src/Contract.sol\":886:893 uint256 */\n 0x0\n /* \"src/Contract.sol\":917:922 a + b */\n dup3\n dup3\n add\n /* \"src/Contract.sol\":939:945 c >= a */\n dup4\n dup2\n lt\n iszero\n /* \"src/Contract.sol\":932:946 assert(c >= a) */\n tag_275\n jumpi\n invalid\n\n auxdata: 0xa165627a7a72305820c6c7ec5e3bee0b2db470f633175dd5c4c1900658f43d73e4f34ffa2e46d86ab80029\n}\n",
"bytecode": {
"linkReferences": {},
"object": "60606040526000805460a060020a60ff0219168155600381905560045534156200002857600080fd5b60405162001e2f38038062001e2f833981016040528080519190602001805182019190602001805182019190602001805160008054600160a060020a03191633600160a060020a0316179055600186905591506007905083805162000092929160200190620000dd565b506008828051620000a8929160200190620000dd565b50600955505060008054600160a060020a0316815260026020526040902055600a805460a060020a60ff021916905562000182565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200012057805160ff191683800117855562000150565b8280016001018555821562000150579182015b828111156200015057825182559160200191906001019062000133565b506200015e92915062000162565b5090565b6200017f91905b808211156200015e576000815560010162000169565b90565b611c9d80620001926000396000f3006060604052600436106101955763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461019a5780630753c30c14610224578063095ea7b3146102525780630e136b19146102815780630ecb93c0146102a857806318160ddd146102d457806323b872dd146102f957806326976e3f1461032e57806327e235e31461036a578063313ce5671461039657806335390714146103a95780633eaaf86b146103bc5780633f4ba83a146103cf57806359bf1abe146103e25780635c6581651461040e5780635c975abb1461044057806370a08231146104535780638456cb591461047f578063893d20e8146104925780638da5cb5b146104a557806395d89b41146104b8578063a9059cbb146104cb578063c0324c77146104fa578063cc872b6614610513578063db006a7514610529578063dd62ed3e1461053f578063dd644f7214610571578063e47d606014610584578063e4997dc5146105b0578063e5b5019a146105dc578063f2fde38b146105ef578063f3bdc2281461061b575b600080fd5b34156101a557600080fd5b6101ad610647565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e95780820151838201526020016101d1565b50505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022f57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166106e5565b005b341561025d57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166024356107d5565b341561028c57600080fd5b6102946108c6565b604051901515815260200160405180910390f35b34156102b357600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166108e7565b34156102df57600080fd5b6102e76109ac565b60405190815260200160405180910390f35b341561030457600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435610a6a565b341561033957600080fd5b610341610b90565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561037557600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043516610bac565b34156103a157600080fd5b6102e7610bbe565b34156103b457600080fd5b6102e7610bc4565b34156103c757600080fd5b6102e7610bca565b34156103da57600080fd5b610250610bd0565b34156103ed57600080fd5b61029473ffffffffffffffffffffffffffffffffffffffff60043516610c77565b341561041957600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043581169060243516610ca6565b341561044b57600080fd5b610294610cc3565b341561045e57600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043516610ce4565b341561048a57600080fd5b610250610dc8565b341561049d57600080fd5b610341610e85565b34156104b057600080fd5b610341610ea1565b34156104c357600080fd5b6101ad610ebd565b34156104d657600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff60043516602435610f28565b341561050557600080fd5b610250600435602435611063565b341561051e57600080fd5b610250600435611106565b341561053457600080fd5b6102506004356111dc565b341561054a57600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff600435811690602435166112b4565b341561057c57600080fd5b6102e76113a3565b341561058f57600080fd5b61029473ffffffffffffffffffffffffffffffffffffffff600435166113a9565b34156105bb57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166113be565b34156105e757600080fd5b6102e7611480565b34156105fa57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166114a4565b341561062657600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff6004351661152c565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dd5780601f106106b2576101008083540402835291602001916106dd565b820191906000526020600020905b8154815290600101906020018083116106c057829003601f168201915b505050505081565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461070d57600080fd5b600a8054740100000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909116177fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790557fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e8160405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b604060443610156107e557600080fd5b600a5474010000000000000000000000000000000000000000900460ff16156108b757600a5473ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561089e57600080fd5b6102c65a03f115156108af57600080fd5b5050506108c1565b6108c1838361161e565b505050565b600a5474010000000000000000000000000000000000000000900460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461090f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81166000908152600660205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc9082905173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b600a5460009074010000000000000000000000000000000000000000900460ff1615610a6257600a5473ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610a4057600080fd5b6102c65a03f11515610a5157600080fd5b505050604051805190509050610a67565b506001545b90565b60005474010000000000000000000000000000000000000000900460ff1615610a9257600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526006602052604090205460ff1615610ac557600080fd5b600a5474010000000000000000000000000000000000000000900460ff1615610b8557600a5473ffffffffffffffffffffffffffffffffffffffff16638b477adb338585856040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff94851660048201529284166024840152921660448201526064810191909152608401600060405180830381600087803b151561089e57600080fd5b6108c18383836116ea565b600a5473ffffffffffffffffffffffffffffffffffffffff1681565b60026020526000908152604090205481565b60095481565b60045481565b60015481565b6000543373ffffffffffffffffffffffffffffffffffffffff908116911614610bf857600080fd5b60005474010000000000000000000000000000000000000000900460ff161515610c2157600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b73ffffffffffffffffffffffffffffffffffffffff811660009081526006602052604090205460ff165b919050565b600560209081526000928352604080842090915290825290205481565b60005474010000000000000000000000000000000000000000900460ff1681565b600a5460009074010000000000000000000000000000000000000000900460ff1615610db857600a5473ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff841602815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381600087803b1515610d9657600080fd5b6102c65a03f11515610da757600080fd5b505050604051805190509050610ca1565b610dc1826119a0565b9050610ca1565b6000543373ffffffffffffffffffffffffffffffffffffffff908116911614610df057600080fd5b60005474010000000000000000000000000000000000000000900460ff1615610e1857600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dd5780601f106106b2576101008083540402835291602001916106dd565b60005474010000000000000000000000000000000000000000900460ff1615610f5057600080fd5b73ffffffffffffffffffffffffffffffffffffffff331660009081526006602052604090205460ff1615610f8357600080fd5b600a5474010000000000000000000000000000000000000000900460ff161561105557600a5473ffffffffffffffffffffffffffffffffffffffff16636e18980a3384846040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561103c57600080fd5b6102c65a03f1151561104d57600080fd5b50505061105f565b61105f82826119c8565b5050565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461108b57600080fd5b6014821061109857600080fd5b603281106110a557600080fd5b60038290556009546110c1908290600a0a63ffffffff611bcb16565b60048190556003547fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e9160405191825260208201526040908101905180910390a15050565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461112e57600080fd5b6001548181011161113e57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020548181011161117157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409081902080548301905560018054830190557fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a9082905190815260200160405180910390a150565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461120457600080fd5b6001548190101561121457600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020548190101561124757600080fd5b6001805482900390556000805473ffffffffffffffffffffffffffffffffffffffff1681526002602052604090819020805483900390557f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a449082905190815260200160405180910390a150565b600a5460009074010000000000000000000000000000000000000000900460ff161561139057600a5473ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff851602815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401602060405180830381600087803b151561136e57600080fd5b6102c65a03f1151561137f57600080fd5b50505060405180519050905061139d565b61139a8383611c01565b90505b92915050565b60035481565b60066020526000908152604090205460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146113e657600080fd5b73ffffffffffffffffffffffffffffffffffffffff81166000908152600660205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c9082905173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146114cc57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561152957600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b50565b600080543373ffffffffffffffffffffffffffffffffffffffff90811691161461155557600080fd5b73ffffffffffffffffffffffffffffffffffffffff821660009081526006602052604090205460ff16151561158957600080fd5b61159282610ce4565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260026020526040808220919091556001805483900390559091507f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c690839083905173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a15050565b6040604436101561162e57600080fd5b811580159061166e575073ffffffffffffffffffffffffffffffffffffffff33811660009081526005602090815260408083209387168352929052205415155b1561167857600080fd5b73ffffffffffffffffffffffffffffffffffffffff338116600081815260056020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a3505050565b60008080606060643610156116fe57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600560209081526040808320339094168352929052205460035490945061175d906127109061175190889063ffffffff611bcb16565b9063ffffffff611c3916565b925060045483111561176f5760045492505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8410156117dc576117a7848663ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff808916600090815260056020908152604080832033909416835292905220555b6117ec858463ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260026020526040902054909250611825908663ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff8089166000908152600260205260408082209390935590881681522054611867908363ffffffff611c6216565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812091909155831115611936576000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020546118cd908463ffffffff611c6216565b6000805473ffffffffffffffffffffffffffffffffffffffff908116825260026020526040808320939093559054811691908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350505050505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b600080604060443610156119db57600080fd5b6119f661271061175160035487611bcb90919063ffffffff16565b9250600454831115611a085760045492505b611a18848463ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff3316600090815260026020526040902054909250611a51908563ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff3381166000908152600260205260408082209390935590871681522054611a93908363ffffffff611c6216565b73ffffffffffffffffffffffffffffffffffffffff8616600090815260026020526040812091909155831115611b63576000805473ffffffffffffffffffffffffffffffffffffffff16815260026020526040902054611af9908463ffffffff611c6216565b6000805473ffffffffffffffffffffffffffffffffffffffff90811682526002602052604080832093909355905481169133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35050505050565b600080831515611bde5760009150611bfa565b50828202828482811515611bee57fe5b0414611bf657fe5b8091505b5092915050565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205490565b6000808284811515611c4757fe5b04949350505050565b600082821115611c5c57fe5b50900390565b600082820183811015611bf657fe00a165627a7a72305820c6c7ec5e3bee0b2db470f633175dd5c4c1900658f43d73e4f34ffa2e46d86ab80029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 SLOAD PUSH1 0xA0 PUSH1 0x2 EXP PUSH1 0xFF MUL NOT AND DUP2 SSTORE PUSH1 0x3 DUP2 SWAP1 SSTORE PUSH1 0x4 SSTORE CALLVALUE ISZERO PUSH3 0x28 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x1E2F CODESIZE SUB DUP1 PUSH3 0x1E2F DUP4 CODECOPY DUP2 ADD PUSH1 0x40 MSTORE DUP1 DUP1 MLOAD SWAP2 SWAP1 PUSH1 0x20 ADD DUP1 MLOAD DUP3 ADD SWAP2 SWAP1 PUSH1 0x20 ADD DUP1 MLOAD DUP3 ADD SWAP2 SWAP1 PUSH1 0x20 ADD DUP1 MLOAD PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB NOT AND CALLER PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND OR SWAP1 SSTORE PUSH1 0x1 DUP7 SWAP1 SSTORE SWAP2 POP PUSH1 0x7 SWAP1 POP DUP4 DUP1 MLOAD PUSH3 0x92 SWAP3 SWAP2 PUSH1 0x20 ADD SWAP1 PUSH3 0xDD JUMP JUMPDEST POP PUSH1 0x8 DUP3 DUP1 MLOAD PUSH3 0xA8 SWAP3 SWAP2 PUSH1 0x20 ADD SWAP1 PUSH3 0xDD JUMP JUMPDEST POP PUSH1 0x9 SSTORE POP POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0xA0 PUSH1 0x2 EXP SUB AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SSTORE PUSH1 0xA DUP1 SLOAD PUSH1 0xA0 PUSH1 0x2 EXP PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH3 0x182 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH1 0x1F LT PUSH3 0x120 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0x150 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0x150 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0x150 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0x133 JUMP JUMPDEST POP PUSH3 0x15E SWAP3 SWAP2 POP PUSH3 0x162 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH3 0x17F SWAP2 SWAP1 JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0x15E JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x169 JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH2 0x1C9D DUP1 PUSH3 0x192 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x195 JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x6FDDE03 DUP2 EQ PUSH2 0x19A JUMPI DUP1 PUSH4 0x753C30C EQ PUSH2 0x224 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x252 JUMPI DUP1 PUSH4 0xE136B19 EQ PUSH2 0x281 JUMPI DUP1 PUSH4 0xECB93C0 EQ PUSH2 0x2A8 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x2D4 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F9 JUMPI DUP1 PUSH4 0x26976E3F EQ PUSH2 0x32E JUMPI DUP1 PUSH4 0x27E235E3 EQ PUSH2 0x36A JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x396 JUMPI DUP1 PUSH4 0x35390714 EQ PUSH2 0x3A9 JUMPI DUP1 PUSH4 0x3EAAF86B EQ PUSH2 0x3BC JUMPI DUP1 PUSH4 0x3F4BA83A EQ PUSH2 0x3CF JUMPI DUP1 PUSH4 0x59BF1ABE EQ PUSH2 0x3E2 JUMPI DUP1 PUSH4 0x5C658165 EQ PUSH2 0x40E JUMPI DUP1 PUSH4 0x5C975ABB EQ PUSH2 0x440 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x453 JUMPI DUP1 PUSH4 0x8456CB59 EQ PUSH2 0x47F JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x492 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x4A5 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x4B8 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x4CB JUMPI DUP1 PUSH4 0xC0324C77 EQ PUSH2 0x4FA JUMPI DUP1 PUSH4 0xCC872B66 EQ PUSH2 0x513 JUMPI DUP1 PUSH4 0xDB006A75 EQ PUSH2 0x529 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x53F JUMPI DUP1 PUSH4 0xDD644F72 EQ PUSH2 0x571 JUMPI DUP1 PUSH4 0xE47D6060 EQ PUSH2 0x584 JUMPI DUP1 PUSH4 0xE4997DC5 EQ PUSH2 0x5B0 JUMPI DUP1 PUSH4 0xE5B5019A EQ PUSH2 0x5DC JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x5EF JUMPI DUP1 PUSH4 0xF3BDC228 EQ PUSH2 0x61B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x1A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1AD PUSH2 0x647 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP1 DUP3 MSTORE DUP2 SWAP1 DUP2 ADD DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E9 JUMPI DUP1 DUP3 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x1D1 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x216 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x22F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x6E5 JUMP JUMPDEST STOP JUMPDEST CALLVALUE ISZERO PUSH2 0x25D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH1 0x24 CALLDATALOAD PUSH2 0x7D5 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x28C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH2 0x8C6 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x2B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x8E7 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x2DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x304 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH1 0x44 CALLDATALOAD PUSH2 0xA6A JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x339 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xB90 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x375 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xBAC JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBBE JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBC4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBCA JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3DA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH2 0xBD0 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3ED JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xC77 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x419 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH2 0xCA6 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x44B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH2 0xCC3 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x45E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xCE4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x48A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH2 0xDC8 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x49D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xE85 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4B0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xEA1 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1AD PUSH2 0xEBD JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4D6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH1 0x24 CALLDATALOAD PUSH2 0xF28 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x505 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH1 0x24 CALLDATALOAD PUSH2 0x1063 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x51E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH2 0x1106 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH2 0x11DC JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x54A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH2 0x12B4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x57C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x13A3 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x58F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x13A9 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x13BE JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x1480 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x14A4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x626 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x152C JUMP JUMPDEST PUSH1 0x7 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 ISZERO PUSH2 0x6DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DD JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C0 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x70D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA DUP1 SLOAD PUSH21 0x10000000000000000000000000000000000000000 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND OR PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE PUSH32 0xCC358699805E9A8B7F77B522628C7CB9ABD07D9EFB86B6FB616AF1609036A99E DUP2 PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x7E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x8B7 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xAEE92D33 CALLER DUP6 DUP6 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP7 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP4 DUP5 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x64 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x89E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x8AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH2 0x8C1 JUMP JUMPDEST PUSH2 0x8C1 DUP4 DUP4 PUSH2 0x161E JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x90F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 AND PUSH1 0x1 OR SWAP1 SSTORE PUSH32 0x42E160154868087D6BFDC0CA23D96A1C1CFA32F1B72BA9BA27B69B98A0D819DC SWAP1 DUP3 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xA62 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x18160DDD PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH29 0x100000000000000000000000000000000000000000000000000000000 MUL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0xA40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0xA51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0xA67 JUMP JUMPDEST POP PUSH1 0x1 SLOAD JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xA92 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xAC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xB85 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8B477ADB CALLER DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP8 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP5 DUP6 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP3 DUP5 AND PUSH1 0x24 DUP5 ADD MSTORE SWAP3 AND PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x84 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x89E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x8C1 DUP4 DUP4 DUP4 PUSH2 0x16EA JUMP JUMPDEST PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xBF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO PUSH2 0xC21 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 SSTORE PUSH32 0x7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x0 SWAP3 DUP4 MSTORE PUSH1 0x40 DUP1 DUP5 KECCAK256 SWAP1 SWAP2 MSTORE SWAP1 DUP3 MSTORE SWAP1 KECCAK256 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xDB8 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 DUP4 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP5 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0xD96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0xDA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0xCA1 JUMP JUMPDEST PUSH2 0xDC1 DUP3 PUSH2 0x19A0 JUMP JUMPDEST SWAP1 POP PUSH2 0xCA1 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xDF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xE18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH21 0x10000000000000000000000000000000000000000 OR SWAP1 SSTORE PUSH32 0x6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 ISZERO PUSH2 0x6DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DD JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xF50 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xF83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1055 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6E18980A CALLER DUP5 DUP5 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP7 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP4 DUP5 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x64 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x103C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH2 0x105F JUMP JUMPDEST PUSH2 0x105F DUP3 DUP3 PUSH2 0x19C8 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x108B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x14 DUP3 LT PUSH2 0x1098 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x32 DUP2 LT PUSH2 0x10A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3 DUP3 SWAP1 SSTORE PUSH1 0x9 SLOAD PUSH2 0x10C1 SWAP1 DUP3 SWAP1 PUSH1 0xA EXP PUSH4 0xFFFFFFFF PUSH2 0x1BCB AND JUMP JUMPDEST PUSH1 0x4 DUP2 SWAP1 SSTORE PUSH1 0x3 SLOAD PUSH32 0xB044A1E409EAC5C48E5AF22D4AF52670DD1A99059537A78B31B48C6500A6354E SWAP2 PUSH1 0x40 MLOAD SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 SWAP1 DUP2 ADD SWAP1 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x112E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SLOAD DUP2 DUP2 ADD GT PUSH2 0x113E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 ADD GT PUSH2 0x1171 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD DUP4 ADD SWAP1 SSTORE PUSH1 0x1 DUP1 SLOAD DUP4 ADD SWAP1 SSTORE PUSH32 0xCB8241ADB0C3FDB35B70C24CE35C5EB0C17AF7431C99F827D44A445CA624176A SWAP1 DUP3 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x1204 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SLOAD DUP2 SWAP1 LT ISZERO PUSH2 0x1214 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 SWAP1 LT ISZERO PUSH2 0x1247 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP3 SWAP1 SUB SWAP1 SSTORE PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD DUP4 SWAP1 SUB SWAP1 SSTORE PUSH32 0x702D5967F45F6513A38FFC42D6BA9BF230BD40E8F53B16363C7EB4FD2DEB9A44 SWAP1 DUP3 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1390 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xDD62ED3E DUP5 DUP5 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP6 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP3 DUP4 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x136E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x137F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0x139D JUMP JUMPDEST PUSH2 0x139A DUP4 DUP4 PUSH2 0x1C01 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x3 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x13E6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 AND SWAP1 SSTORE PUSH32 0xD7E9EC6E6ECD65492DCE6BF513CD6867560D49544421D0783DDF06E76C24470C SWAP1 DUP3 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x14CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x1529 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x1555 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH2 0x1589 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1592 DUP3 PUSH2 0xCE4 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE PUSH1 0x1 DUP1 SLOAD DUP4 SWAP1 SUB SWAP1 SSTORE SWAP1 SWAP2 POP PUSH32 0x61E6E66B0D6339B2980AECC6CCC0039736791F0CCDE9ED512E789A7FBDD698C6 SWAP1 DUP4 SWAP1 DUP4 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 SWAP1 DUP2 ADD SWAP1 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x162E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x166E JUMPI POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 DUP8 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1678 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP5 DUP9 AND DUP1 DUP5 MSTORE SWAP5 SWAP1 SWAP2 MSTORE SWAP1 DUP2 SWAP1 KECCAK256 DUP6 SWAP1 SSTORE PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 SWAP1 DUP6 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x60 PUSH1 0x64 CALLDATASIZE LT ISZERO PUSH2 0x16FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER SWAP1 SWAP5 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD PUSH1 0x3 SLOAD SWAP1 SWAP5 POP PUSH2 0x175D SWAP1 PUSH2 0x2710 SWAP1 PUSH2 0x1751 SWAP1 DUP9 SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1BCB AND JUMP JUMPDEST SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1C39 AND JUMP JUMPDEST SWAP3 POP PUSH1 0x4 SLOAD DUP4 GT ISZERO PUSH2 0x176F JUMPI PUSH1 0x4 SLOAD SWAP3 POP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 LT ISZERO PUSH2 0x17DC JUMPI PUSH2 0x17A7 DUP5 DUP7 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER SWAP1 SWAP5 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SSTORE JUMPDEST PUSH2 0x17EC DUP6 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP3 POP PUSH2 0x1825 SWAP1 DUP7 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 DUP9 AND DUP2 MSTORE KECCAK256 SLOAD PUSH2 0x1867 SWAP1 DUP4 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE DUP4 GT ISZERO PUSH2 0x1936 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0x18CD SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 SLOAD DUP2 AND SWAP2 SWAP1 DUP10 AND SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 DUP7 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x19DB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x19F6 PUSH2 0x2710 PUSH2 0x1751 PUSH1 0x3 SLOAD DUP8 PUSH2 0x1BCB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP3 POP PUSH1 0x4 SLOAD DUP4 GT ISZERO PUSH2 0x1A08 JUMPI PUSH1 0x4 SLOAD SWAP3 POP JUMPDEST PUSH2 0x1A18 DUP5 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP3 POP PUSH2 0x1A51 SWAP1 DUP6 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 DUP8 AND DUP2 MSTORE KECCAK256 SLOAD PUSH2 0x1A93 SWAP1 DUP4 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE DUP4 GT ISZERO PUSH2 0x1B63 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0x1AF9 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 SLOAD DUP2 AND SWAP2 CALLER SWAP1 SWAP2 AND SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 DUP7 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 ISZERO ISZERO PUSH2 0x1BDE JUMPI PUSH1 0x0 SWAP2 POP PUSH2 0x1BFA JUMP JUMPDEST POP DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 ISZERO ISZERO PUSH2 0x1BEE JUMPI INVALID JUMPDEST DIV EQ PUSH2 0x1BF6 JUMPI INVALID JUMPDEST DUP1 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 DUP5 DUP2 ISZERO ISZERO PUSH2 0x1C47 JUMPI INVALID JUMPDEST DIV SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x1C5C JUMPI INVALID JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x1BF6 JUMPI INVALID STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc6 0xc7 0xec 0x5e EXTCODESIZE 0xee SIGNEXTEND 0x2d 0xb4 PUSH17 0xF633175DD5C4C1900658F43D73E4F34FFA 0x2e 0x46 0xd8 PUSH11 0xB800290000000000000000 ",
"sourceMap": "9728:4781:0:-;;;7405:5;7384:26;;-1:-1:-1;;;;;;7384:26:0;;;3041:31;;;;3078:26;;10223:289;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1378:5;:18;;-1:-1:-1;;;;;;1378:18:0;1386:10;-1:-1:-1;;;;;1378:18:0;;;;-1:-1:-1;10328:29:0;;;10223:289;-1:-1:-1;10367:4:0;;-1:-1:-1;10374:5:0;;10367:12;;;;;;;;:::i;:::-;-1:-1:-1;10389:6:0;10398:7;;10389:16;;;;;;;;:::i;:::-;-1:-1:-1;10415:8:0;:20;-1:-1:-1;;10445:15:0;10454:5;;-1:-1:-1;;;;;10454:5:0;10445:15;;:8;:15;;;;;:32;10487:10;:18;;-1:-1:-1;;;;;;10487:18:0;;;9728:4781;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9728:4781:0;;;-1:-1:-1;9728:4781:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;"
},
"deployedBytecode": {
"linkReferences": {},
"object": "6060604052600436106101955763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461019a5780630753c30c14610224578063095ea7b3146102525780630e136b19146102815780630ecb93c0146102a857806318160ddd146102d457806323b872dd146102f957806326976e3f1461032e57806327e235e31461036a578063313ce5671461039657806335390714146103a95780633eaaf86b146103bc5780633f4ba83a146103cf57806359bf1abe146103e25780635c6581651461040e5780635c975abb1461044057806370a08231146104535780638456cb591461047f578063893d20e8146104925780638da5cb5b146104a557806395d89b41146104b8578063a9059cbb146104cb578063c0324c77146104fa578063cc872b6614610513578063db006a7514610529578063dd62ed3e1461053f578063dd644f7214610571578063e47d606014610584578063e4997dc5146105b0578063e5b5019a146105dc578063f2fde38b146105ef578063f3bdc2281461061b575b600080fd5b34156101a557600080fd5b6101ad610647565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e95780820151838201526020016101d1565b50505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022f57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166106e5565b005b341561025d57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166024356107d5565b341561028c57600080fd5b6102946108c6565b604051901515815260200160405180910390f35b34156102b357600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166108e7565b34156102df57600080fd5b6102e76109ac565b60405190815260200160405180910390f35b341561030457600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435610a6a565b341561033957600080fd5b610341610b90565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561037557600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043516610bac565b34156103a157600080fd5b6102e7610bbe565b34156103b457600080fd5b6102e7610bc4565b34156103c757600080fd5b6102e7610bca565b34156103da57600080fd5b610250610bd0565b34156103ed57600080fd5b61029473ffffffffffffffffffffffffffffffffffffffff60043516610c77565b341561041957600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043581169060243516610ca6565b341561044b57600080fd5b610294610cc3565b341561045e57600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff60043516610ce4565b341561048a57600080fd5b610250610dc8565b341561049d57600080fd5b610341610e85565b34156104b057600080fd5b610341610ea1565b34156104c357600080fd5b6101ad610ebd565b34156104d657600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff60043516602435610f28565b341561050557600080fd5b610250600435602435611063565b341561051e57600080fd5b610250600435611106565b341561053457600080fd5b6102506004356111dc565b341561054a57600080fd5b6102e773ffffffffffffffffffffffffffffffffffffffff600435811690602435166112b4565b341561057c57600080fd5b6102e76113a3565b341561058f57600080fd5b61029473ffffffffffffffffffffffffffffffffffffffff600435166113a9565b34156105bb57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166113be565b34156105e757600080fd5b6102e7611480565b34156105fa57600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff600435166114a4565b341561062657600080fd5b61025073ffffffffffffffffffffffffffffffffffffffff6004351661152c565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dd5780601f106106b2576101008083540402835291602001916106dd565b820191906000526020600020905b8154815290600101906020018083116106c057829003601f168201915b505050505081565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461070d57600080fd5b600a8054740100000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909116177fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790557fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e8160405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b604060443610156107e557600080fd5b600a5474010000000000000000000000000000000000000000900460ff16156108b757600a5473ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561089e57600080fd5b6102c65a03f115156108af57600080fd5b5050506108c1565b6108c1838361161e565b505050565b600a5474010000000000000000000000000000000000000000900460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461090f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81166000908152600660205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc9082905173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b600a5460009074010000000000000000000000000000000000000000900460ff1615610a6257600a5473ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610a4057600080fd5b6102c65a03f11515610a5157600080fd5b505050604051805190509050610a67565b506001545b90565b60005474010000000000000000000000000000000000000000900460ff1615610a9257600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526006602052604090205460ff1615610ac557600080fd5b600a5474010000000000000000000000000000000000000000900460ff1615610b8557600a5473ffffffffffffffffffffffffffffffffffffffff16638b477adb338585856040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff94851660048201529284166024840152921660448201526064810191909152608401600060405180830381600087803b151561089e57600080fd5b6108c18383836116ea565b600a5473ffffffffffffffffffffffffffffffffffffffff1681565b60026020526000908152604090205481565b60095481565b60045481565b60015481565b6000543373ffffffffffffffffffffffffffffffffffffffff908116911614610bf857600080fd5b60005474010000000000000000000000000000000000000000900460ff161515610c2157600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b73ffffffffffffffffffffffffffffffffffffffff811660009081526006602052604090205460ff165b919050565b600560209081526000928352604080842090915290825290205481565b60005474010000000000000000000000000000000000000000900460ff1681565b600a5460009074010000000000000000000000000000000000000000900460ff1615610db857600a5473ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff841602815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381600087803b1515610d9657600080fd5b6102c65a03f11515610da757600080fd5b505050604051805190509050610ca1565b610dc1826119a0565b9050610ca1565b6000543373ffffffffffffffffffffffffffffffffffffffff908116911614610df057600080fd5b60005474010000000000000000000000000000000000000000900460ff1615610e1857600080fd5b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dd5780601f106106b2576101008083540402835291602001916106dd565b60005474010000000000000000000000000000000000000000900460ff1615610f5057600080fd5b73ffffffffffffffffffffffffffffffffffffffff331660009081526006602052604090205460ff1615610f8357600080fd5b600a5474010000000000000000000000000000000000000000900460ff161561105557600a5473ffffffffffffffffffffffffffffffffffffffff16636e18980a3384846040517c010000000000000000000000000000000000000000000000000000000063ffffffff861602815273ffffffffffffffffffffffffffffffffffffffff93841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561103c57600080fd5b6102c65a03f1151561104d57600080fd5b50505061105f565b61105f82826119c8565b5050565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461108b57600080fd5b6014821061109857600080fd5b603281106110a557600080fd5b60038290556009546110c1908290600a0a63ffffffff611bcb16565b60048190556003547fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e9160405191825260208201526040908101905180910390a15050565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461112e57600080fd5b6001548181011161113e57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020548181011161117157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409081902080548301905560018054830190557fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a9082905190815260200160405180910390a150565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461120457600080fd5b6001548190101561121457600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020548190101561124757600080fd5b6001805482900390556000805473ffffffffffffffffffffffffffffffffffffffff1681526002602052604090819020805483900390557f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a449082905190815260200160405180910390a150565b600a5460009074010000000000000000000000000000000000000000900460ff161561139057600a5473ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff851602815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401602060405180830381600087803b151561136e57600080fd5b6102c65a03f1151561137f57600080fd5b50505060405180519050905061139d565b61139a8383611c01565b90505b92915050565b60035481565b60066020526000908152604090205460ff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146113e657600080fd5b73ffffffffffffffffffffffffffffffffffffffff81166000908152600660205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c9082905173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a150565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146114cc57600080fd5b73ffffffffffffffffffffffffffffffffffffffff81161561152957600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b50565b600080543373ffffffffffffffffffffffffffffffffffffffff90811691161461155557600080fd5b73ffffffffffffffffffffffffffffffffffffffff821660009081526006602052604090205460ff16151561158957600080fd5b61159282610ce4565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260026020526040808220919091556001805483900390559091507f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c690839083905173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a15050565b6040604436101561162e57600080fd5b811580159061166e575073ffffffffffffffffffffffffffffffffffffffff33811660009081526005602090815260408083209387168352929052205415155b1561167857600080fd5b73ffffffffffffffffffffffffffffffffffffffff338116600081815260056020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a3505050565b60008080606060643610156116fe57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600560209081526040808320339094168352929052205460035490945061175d906127109061175190889063ffffffff611bcb16565b9063ffffffff611c3916565b925060045483111561176f5760045492505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8410156117dc576117a7848663ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff808916600090815260056020908152604080832033909416835292905220555b6117ec858463ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260026020526040902054909250611825908663ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff8089166000908152600260205260408082209390935590881681522054611867908363ffffffff611c6216565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812091909155831115611936576000805473ffffffffffffffffffffffffffffffffffffffff168152600260205260409020546118cd908463ffffffff611c6216565b6000805473ffffffffffffffffffffffffffffffffffffffff908116825260026020526040808320939093559054811691908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350505050505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b600080604060443610156119db57600080fd5b6119f661271061175160035487611bcb90919063ffffffff16565b9250600454831115611a085760045492505b611a18848463ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff3316600090815260026020526040902054909250611a51908563ffffffff611c5016565b73ffffffffffffffffffffffffffffffffffffffff3381166000908152600260205260408082209390935590871681522054611a93908363ffffffff611c6216565b73ffffffffffffffffffffffffffffffffffffffff8616600090815260026020526040812091909155831115611b63576000805473ffffffffffffffffffffffffffffffffffffffff16815260026020526040902054611af9908463ffffffff611c6216565b6000805473ffffffffffffffffffffffffffffffffffffffff90811682526002602052604080832093909355905481169133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35050505050565b600080831515611bde5760009150611bfa565b50828202828482811515611bee57fe5b0414611bf657fe5b8091505b5092915050565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205490565b6000808284811515611c4757fe5b04949350505050565b600082821115611c5c57fe5b50900390565b600082820183811015611bf657fe00a165627a7a72305820c6c7ec5e3bee0b2db470f633175dd5c4c1900658f43d73e4f34ffa2e46d86ab80029",
"opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x195 JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x6FDDE03 DUP2 EQ PUSH2 0x19A JUMPI DUP1 PUSH4 0x753C30C EQ PUSH2 0x224 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x252 JUMPI DUP1 PUSH4 0xE136B19 EQ PUSH2 0x281 JUMPI DUP1 PUSH4 0xECB93C0 EQ PUSH2 0x2A8 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x2D4 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F9 JUMPI DUP1 PUSH4 0x26976E3F EQ PUSH2 0x32E JUMPI DUP1 PUSH4 0x27E235E3 EQ PUSH2 0x36A JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x396 JUMPI DUP1 PUSH4 0x35390714 EQ PUSH2 0x3A9 JUMPI DUP1 PUSH4 0x3EAAF86B EQ PUSH2 0x3BC JUMPI DUP1 PUSH4 0x3F4BA83A EQ PUSH2 0x3CF JUMPI DUP1 PUSH4 0x59BF1ABE EQ PUSH2 0x3E2 JUMPI DUP1 PUSH4 0x5C658165 EQ PUSH2 0x40E JUMPI DUP1 PUSH4 0x5C975ABB EQ PUSH2 0x440 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x453 JUMPI DUP1 PUSH4 0x8456CB59 EQ PUSH2 0x47F JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x492 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x4A5 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x4B8 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x4CB JUMPI DUP1 PUSH4 0xC0324C77 EQ PUSH2 0x4FA JUMPI DUP1 PUSH4 0xCC872B66 EQ PUSH2 0x513 JUMPI DUP1 PUSH4 0xDB006A75 EQ PUSH2 0x529 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x53F JUMPI DUP1 PUSH4 0xDD644F72 EQ PUSH2 0x571 JUMPI DUP1 PUSH4 0xE47D6060 EQ PUSH2 0x584 JUMPI DUP1 PUSH4 0xE4997DC5 EQ PUSH2 0x5B0 JUMPI DUP1 PUSH4 0xE5B5019A EQ PUSH2 0x5DC JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x5EF JUMPI DUP1 PUSH4 0xF3BDC228 EQ PUSH2 0x61B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x1A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1AD PUSH2 0x647 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP1 DUP3 MSTORE DUP2 SWAP1 DUP2 ADD DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E9 JUMPI DUP1 DUP3 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x1D1 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x216 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x22F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x6E5 JUMP JUMPDEST STOP JUMPDEST CALLVALUE ISZERO PUSH2 0x25D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH1 0x24 CALLDATALOAD PUSH2 0x7D5 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x28C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH2 0x8C6 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x2B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x8E7 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x2DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x304 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH1 0x44 CALLDATALOAD PUSH2 0xA6A JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x339 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xB90 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0x375 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xBAC JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBBE JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBC4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0xBCA JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3DA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH2 0xBD0 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3ED JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xC77 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x419 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH2 0xCA6 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x44B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH2 0xCC3 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x45E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0xCE4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x48A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH2 0xDC8 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x49D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xE85 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4B0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x341 PUSH2 0xEA1 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1AD PUSH2 0xEBD JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x4D6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH1 0x24 CALLDATALOAD PUSH2 0xF28 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x505 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH1 0x24 CALLDATALOAD PUSH2 0x1063 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x51E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH2 0x1106 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH1 0x4 CALLDATALOAD PUSH2 0x11DC JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x54A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD DUP2 AND SWAP1 PUSH1 0x24 CALLDATALOAD AND PUSH2 0x12B4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x57C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x13A3 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x58F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x294 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x13A9 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5BB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x13BE JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E7 PUSH2 0x1480 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x5FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x14A4 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x626 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x250 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x4 CALLDATALOAD AND PUSH2 0x152C JUMP JUMPDEST PUSH1 0x7 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 ISZERO PUSH2 0x6DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DD JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C0 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x70D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA DUP1 SLOAD PUSH21 0x10000000000000000000000000000000000000000 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND OR PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE PUSH32 0xCC358699805E9A8B7F77B522628C7CB9ABD07D9EFB86B6FB616AF1609036A99E DUP2 PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x7E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x8B7 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xAEE92D33 CALLER DUP6 DUP6 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP7 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP4 DUP5 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x64 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x89E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x8AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH2 0x8C1 JUMP JUMPDEST PUSH2 0x8C1 DUP4 DUP4 PUSH2 0x161E JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x90F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 AND PUSH1 0x1 OR SWAP1 SSTORE PUSH32 0x42E160154868087D6BFDC0CA23D96A1C1CFA32F1B72BA9BA27B69B98A0D819DC SWAP1 DUP3 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xA62 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x18160DDD PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH29 0x100000000000000000000000000000000000000000000000000000000 MUL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0xA40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0xA51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0xA67 JUMP JUMPDEST POP PUSH1 0x1 SLOAD JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xA92 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xAC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xB85 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x8B477ADB CALLER DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP8 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP5 DUP6 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP3 DUP5 AND PUSH1 0x24 DUP5 ADD MSTORE SWAP3 AND PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x84 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x89E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x8C1 DUP4 DUP4 DUP4 PUSH2 0x16EA JUMP JUMPDEST PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xBF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO PUSH2 0xC21 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 SSTORE PUSH32 0x7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x0 SWAP3 DUP4 MSTORE PUSH1 0x40 DUP1 DUP5 KECCAK256 SWAP1 SWAP2 MSTORE SWAP1 DUP3 MSTORE SWAP1 KECCAK256 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xDB8 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 DUP4 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP5 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0xD96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0xDA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0xCA1 JUMP JUMPDEST PUSH2 0xDC1 DUP3 PUSH2 0x19A0 JUMP JUMPDEST SWAP1 POP PUSH2 0xCA1 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0xDF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xE18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH21 0x10000000000000000000000000000000000000000 OR SWAP1 SSTORE PUSH32 0x6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV DUP1 ISZERO PUSH2 0x6DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DD JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0xF50 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xF83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xA SLOAD PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1055 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6E18980A CALLER DUP5 DUP5 PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP7 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP4 DUP5 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x64 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x103C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH2 0x105F JUMP JUMPDEST PUSH2 0x105F DUP3 DUP3 PUSH2 0x19C8 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x108B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x14 DUP3 LT PUSH2 0x1098 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x32 DUP2 LT PUSH2 0x10A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3 DUP3 SWAP1 SSTORE PUSH1 0x9 SLOAD PUSH2 0x10C1 SWAP1 DUP3 SWAP1 PUSH1 0xA EXP PUSH4 0xFFFFFFFF PUSH2 0x1BCB AND JUMP JUMPDEST PUSH1 0x4 DUP2 SWAP1 SSTORE PUSH1 0x3 SLOAD PUSH32 0xB044A1E409EAC5C48E5AF22D4AF52670DD1A99059537A78B31B48C6500A6354E SWAP2 PUSH1 0x40 MLOAD SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 SWAP1 DUP2 ADD SWAP1 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x112E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SLOAD DUP2 DUP2 ADD GT PUSH2 0x113E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 ADD GT PUSH2 0x1171 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD DUP4 ADD SWAP1 SSTORE PUSH1 0x1 DUP1 SLOAD DUP4 ADD SWAP1 SSTORE PUSH32 0xCB8241ADB0C3FDB35B70C24CE35C5EB0C17AF7431C99F827D44A445CA624176A SWAP1 DUP3 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x1204 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SLOAD DUP2 SWAP1 LT ISZERO PUSH2 0x1214 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 SWAP1 LT ISZERO PUSH2 0x1247 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP3 SWAP1 SUB SWAP1 SSTORE PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD DUP4 SWAP1 SUB SWAP1 SSTORE PUSH32 0x702D5967F45F6513A38FFC42D6BA9BF230BD40E8F53B16363C7EB4FD2DEB9A44 SWAP1 DUP3 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0xA SLOAD PUSH1 0x0 SWAP1 PUSH21 0x10000000000000000000000000000000000000000 SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1390 JUMPI PUSH1 0xA SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xDD62ED3E DUP5 DUP5 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD MSTORE PUSH1 0x40 MLOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH4 0xFFFFFFFF DUP6 AND MUL DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP3 DUP4 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 AND PUSH1 0x24 DUP3 ADD MSTORE PUSH1 0x44 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO ISZERO PUSH2 0x136E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2C6 GAS SUB CALL ISZERO ISZERO PUSH2 0x137F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP POP PUSH1 0x40 MLOAD DUP1 MLOAD SWAP1 POP SWAP1 POP PUSH2 0x139D JUMP JUMPDEST PUSH2 0x139A DUP4 DUP4 PUSH2 0x1C01 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x3 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x13E6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 AND SWAP1 SSTORE PUSH32 0xD7E9EC6E6ECD65492DCE6BF513CD6867560D49544421D0783DDF06E76C24470C SWAP1 DUP3 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x14CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND ISZERO PUSH2 0x1529 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND OR SWAP1 SSTORE JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP2 AND EQ PUSH2 0x1555 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH2 0x1589 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1592 DUP3 PUSH2 0xCE4 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE PUSH1 0x1 DUP1 SLOAD DUP4 SWAP1 SUB SWAP1 SSTORE SWAP1 SWAP2 POP PUSH32 0x61E6E66B0D6339B2980AECC6CCC0039736791F0CCDE9ED512E789A7FBDD698C6 SWAP1 DUP4 SWAP1 DUP4 SWAP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 SWAP1 DUP2 ADD SWAP1 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x162E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x166E JUMPI POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 DUP8 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1678 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP5 DUP9 AND DUP1 DUP5 MSTORE SWAP5 SWAP1 SWAP2 MSTORE SWAP1 DUP2 SWAP1 KECCAK256 DUP6 SWAP1 SSTORE PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 SWAP1 DUP6 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x60 PUSH1 0x64 CALLDATASIZE LT ISZERO PUSH2 0x16FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER SWAP1 SWAP5 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD PUSH1 0x3 SLOAD SWAP1 SWAP5 POP PUSH2 0x175D SWAP1 PUSH2 0x2710 SWAP1 PUSH2 0x1751 SWAP1 DUP9 SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1BCB AND JUMP JUMPDEST SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1C39 AND JUMP JUMPDEST SWAP3 POP PUSH1 0x4 SLOAD DUP4 GT ISZERO PUSH2 0x176F JUMPI PUSH1 0x4 SLOAD SWAP3 POP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 LT ISZERO PUSH2 0x17DC JUMPI PUSH2 0x17A7 DUP5 DUP7 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER SWAP1 SWAP5 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SSTORE JUMPDEST PUSH2 0x17EC DUP6 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP3 POP PUSH2 0x1825 SWAP1 DUP7 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 DUP9 AND DUP2 MSTORE KECCAK256 SLOAD PUSH2 0x1867 SWAP1 DUP4 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE DUP4 GT ISZERO PUSH2 0x1936 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0x18CD SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 SLOAD DUP2 AND SWAP2 SWAP1 DUP10 AND SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 DUP7 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 PUSH1 0x44 CALLDATASIZE LT ISZERO PUSH2 0x19DB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x19F6 PUSH2 0x2710 PUSH2 0x1751 PUSH1 0x3 SLOAD DUP8 PUSH2 0x1BCB SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP3 POP PUSH1 0x4 SLOAD DUP4 GT ISZERO PUSH2 0x1A08 JUMPI PUSH1 0x4 SLOAD SWAP3 POP JUMPDEST PUSH2 0x1A18 DUP5 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP3 POP PUSH2 0x1A51 SWAP1 DUP6 PUSH4 0xFFFFFFFF PUSH2 0x1C50 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CALLER DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 DUP8 AND DUP2 MSTORE KECCAK256 SLOAD PUSH2 0x1A93 SWAP1 DUP4 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP1 SWAP2 SSTORE DUP4 GT ISZERO PUSH2 0x1B63 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0x1AF9 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x1C62 AND JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP4 SSTORE SWAP1 SLOAD DUP2 AND SWAP2 CALLER SWAP1 SWAP2 AND SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 DUP7 SWAP1 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 ISZERO ISZERO PUSH2 0x1BDE JUMPI PUSH1 0x0 SWAP2 POP PUSH2 0x1BFA JUMP JUMPDEST POP DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 ISZERO ISZERO PUSH2 0x1BEE JUMPI INVALID JUMPDEST DIV EQ PUSH2 0x1BF6 JUMPI INVALID JUMPDEST DUP1 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 DUP5 DUP2 ISZERO ISZERO PUSH2 0x1C47 JUMPI INVALID JUMPDEST DIV SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x1C5C JUMPI INVALID JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x1BF6 JUMPI INVALID STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc6 0xc7 0xec 0x5e EXTCODESIZE 0xee SIGNEXTEND 0x2d 0xb4 PUSH17 0xF633175DD5C4C1900658F43D73E4F34FFA 0x2e 0x46 0xd8 PUSH11 0xB800290000000000000000 ",
"sourceMap": "9728:4781:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9794:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;71:3;;;64:6;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12480:177:0;;;;;;;;;;;;;;;;;;11752:296;;;;;;;;;;;;;;;;;;9906:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8505:142;;;;;;;;;;;;;;;;12720:212;;;;;;;;;;;;;;;;;;;;;;;;;;;10995:355;;;;;;;;;;;;;;;;;;;;;;;9870:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2916:40;;;;;;;;;;;;;;;;9844:20;;;;;;;;;;;;3078:26;;;;;;;;;;;;2043:24;;;;;;;;;;;;7970:87;;;;;;;;;;;;8229:122;;;;;;;;;;;;;;;;4652:61;;;;;;;;;;;;;;;;;;;;;7384:26;;;;;;;;;;;;11432:238;;;;;;;;;;;;;;;;7803:85;;;;;;;;;;;;8357;;;;;;;;;;;;1188:20;;;;;;;;;;;;9818;;;;;;;;;;;;10594:319;;;;;;;;;;;;;;;;;;13809:378;;;;;;;;;;;;;;;;13090:259;;;;;;;;;;;;;;13573:230;;;;;;;;;;;;;;12130:287;;;;;;;;;;;;;;;;;;;;;3041:31;;;;;;;;;;;;8448:46;;;;;;;;;;;;;;;;8653:157;;;;;;;;;;;;;;;;4720:42;;;;;;;;;;;;1738:147;;;;;;;;;;;;;;;;8816:318;;;;;;;;;;;;;;;;9794:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12480:177::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;12552:10;:17;;;;;;;;12579:34;;;;;;;;12623:27;12579:34;12623:27;;;;;;;;;;;;;;;;;12480:177;:::o;11752:296::-;11823:6;3251:8;3233;:26;3231:29;3223:38;;;;;;11845:10;;;;;;;11841:201;;;11900:15;;;;11878:54;11933:10;11945:8;11955:6;11878:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11878:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11871:91;;11841:201;12000:31;12014:8;12024:6;12000:13;:31::i;:::-;11752:296;;;:::o;9906:22::-;;;;;;;;;:::o;8505:142::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;8574:24;;;;;;;:13;:24;;;;;;;:31;;;;8601:4;8574:31;;;8615:25;;8588:9;;8615:25;;;;;;;;;;;;;;;;8505:142;:::o;12720:212::-;12788:10;;12768:4;;12788:10;;;;;12784:142;;;12835:15;;;;12821:42;12835:15;12821:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12814:51;;;;12784:142;-1:-1:-1;12903:12:0;;12784:142;12720:212;:::o;10995:355::-;7553:6;;;;;;;7552:7;7544:16;;;;;;11098:20;;;;;;;:13;:20;;;;;;;;11097:21;11089:30;;;;;;11133:10;;;;;;;11129:215;;;11188:15;;;;11166:59;11226:10;11238:5;11245:3;11250:6;11166:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11166:91:0;;;;;;;;;;;;;;;;;11129:215;11295:38;11314:5;11321:3;11326:6;11295:18;:38::i;9870:30::-;;;;;;:::o;2916:40::-;;;;;;;;;;;;;:::o;9844:20::-;;;;:::o;3078:26::-;;;;:::o;2043:24::-;;;;:::o;7970:87::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;7705:6;;;;;;;7697:15;;;;;;;;8032:5;8023:14;;;;;;8043:9;;;;;;;;;;7970:87::o;8229:122::-;8323:21;;;8300:4;8323:21;;;:13;:21;;;;;;;;8229:122;;;;:::o;4652:61::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;7384:26::-;;;;;;;;;:::o;11432:238::-;11509:10;;11489:4;;11509:10;;;;;11505:159;;;11564:15;;;;11542:48;11591:3;11564:15;11542:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11535:60;;;;11505:159;11633:20;11649:3;11633:15;:20::i;:::-;11626:27;;;;7803:85;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;7553:6;;;;;;;7552:7;7544:16;;;;;;7857:6;:13;;;;;;;;7876:7;;;;;;;;;;7803:85::o;8357:::-;8404:7;8430:5;;;8357:85;:::o;1188:20::-;;;;;;:::o;9818:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10594:319;7553:6;;;;;;;7552:7;7544:16;;;;;;10678:25;10692:10;10678:25;;;;;:13;:25;;;;;;;;10677:26;10669:35;;;;;;10718:10;;;;;;;10714:193;;;10773:15;;;;10751:55;10807:10;10819:3;10824:6;10751:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10751:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10744:87;;10714:193;10869:27;10884:3;10889:6;10869:14;:27::i;:::-;10594:319;;:::o;13809:378::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;14005:2;13988:19;;13980:28;;;;;;14038:2;14026:14;;14018:23;;;;;;14052:15;:32;;;14125:8;;14107:27;;:9;;14121:2;:12;14107:27;:13;:27;:::i;:::-;14094:10;:40;;;14152:15;;14145:35;;;;;;;;;;;;;;;;;;;;;;13809:378;;:::o;13090:259::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;13177:12;;13153:21;;;:36;13145:45;;;;;;13235:15;13244:5;;;;13235:15;;:8;:15;;;;;;13208:24;;;:42;13200:51;;;;;;13262:15;13271:5;;;;13262:15;;:8;:15;;;;;;;:25;;;;;;13271:5;13297:22;;;;;;13329:13;;13281:6;;13329:13;;;;;;;;;;;;;13090:259;:::o;13573:230::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;13637:12;;:22;;;;13629:31;;;;;;13678:15;13687:5;;;;13678:15;;:8;:15;;;;;;:25;;;;13670:34;;;;;;13715:12;:22;;;;;;;:12;13756:5;;;;13747:15;;:8;:15;;;;;;;:25;;;;;;;13782:14;;13731:6;;13782:14;;;;;;;;;;;;;13573:230;:::o;12130:287::-;12238:10;;12208:14;;12238:10;;;;;12234:177;;;12285:15;;;;12271:40;12312:6;12320:8;12285:15;12271:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12264:65;;;;12234:177;12367:33;12383:6;12391:8;12367:15;:33::i;:::-;12360:40;;12234:177;12130:287;;;;:::o;3041:31::-;;;;:::o;8448:46::-;;;;;;;;;;;;;;;:::o;8653:157::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;8728:27;;;8758:5;8728:27;;;:13;:27;;;;;;;:35;;;;;;8773:30;;8742:12;;8773:30;;;;;;;;;;;;;;;;8653:157;:::o;4720:42::-;4752:10;4720:42;:::o;1738:147::-;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;1814:22;;;;1810:69;;1852:5;:16;;;;;;;;;;1810:69;1738:147;:::o;8816:318::-;8947:15;1546:5;;1532:10;1546:5;1532:19;;;1546:5;;1532:19;1524:28;;;;;;8905:31;;;;;;;:13;:31;;;;;;;;8897:40;;;;;;;;8965:27;8975:16;8965:9;:27::i;:::-;9002:26;;;9031:1;9002:26;;;:8;:26;;;;;;:30;;;;9042:12;:26;;;;;;;8947:45;;-1:-1:-1;9078:49:0;;9011:16;;8947:45;;9078:49;;;;;;;;;;;;;;;;;;;;;;8816:318;;:::o;6164:563::-;6235:6;3251:8;3233;:26;3231:29;3223:38;;;;;;6569:11;;;;;6568:53;;-1:-1:-1;6586:19:0;6594:10;6586:19;;;;;;:7;:19;;;;;;;;:29;;;;;;;;;;:34;;6568:53;6566:56;6558:65;;;;;;6634:19;6642:10;6634:19;;;;;;:7;:19;;;;;;;;:29;;;;;;;;;;;;;;:38;;;6682;;6666:6;;6682:38;;;;;;;;;;;;;6164:563;;;:::o;5044:880::-;5148:14;;;5130:6;3251:8;3233;:26;3231:29;3223:38;;;;;;5165:14;;;;;;;;:7;:14;;;;;;;;5180:10;5165:26;;;;;;;;;;5380:15;;5165:26;;-1:-1:-1;5368:40:0;;5402:5;;5369:27;;:6;;:27;:10;:27;:::i;:::-;5368:33;:40;:33;:40;:::i;:::-;5357:51;;5428:10;;5422:3;:16;5418:63;;;5460:10;;5454:16;;5418:63;4752:10;5494;:21;5490:103;;;5560:22;:10;5575:6;5560:22;:14;:22;:::i;:::-;5531:14;;;;;;;;:7;:14;;;;;;;;5546:10;5531:26;;;;;;;;;:51;5490:103;5620:15;:6;5631:3;5620:15;:10;:15;:::i;:::-;5663;;;;;;;:8;:15;;;;;;5602:33;;-1:-1:-1;5663:27:0;;5683:6;5663:27;:19;:27;:::i;:::-;5645:15;;;;;;;;:8;:15;;;;;;:45;;;;5716:13;;;;;;;:29;;5734:10;5716:29;:17;:29;:::i;:::-;5700:13;;;;;;;:8;:13;;;;;:45;;;;5759:7;;5755:121;;;5800:15;5809:5;;;;5800:15;;:8;:15;;;;;;:24;;5820:3;5800:24;:19;:24;:::i;:::-;5782:15;5791:5;;;;;;5782:15;;:8;:15;;;;;;:42;;;;5854:5;;;;;5838:27;;;;;;5861:3;;5838:27;;;;;;;;;;;;;5755:121;5901:3;5885:32;;5894:5;5885:32;;;5906:10;5885:32;;;;;;;;;;;;;;5044:880;;;;;;;:::o;4216:114::-;4307:16;;4276:12;4307:16;;;:8;:16;;;;;;;4216:114::o;3445:560::-;3530:8;;3512:6;3251:8;3233;:26;3231:29;3223:38;;;;;;3541:40;3575:5;3542:27;3553:15;;3542:6;:10;;:27;;;;:::i;3541:40::-;3530:51;;3601:10;;3595:3;:16;3591:63;;;3633:10;;3627:16;;3591:63;3681:15;:6;3692:3;3681:15;:10;:15;:::i;:::-;3729:20;3738:10;3729:20;;;;;:8;:20;;;;;;3663:33;;-1:-1:-1;3729:32:0;;3754:6;3729:32;:24;:32;:::i;:::-;3706:20;3715:10;3706:20;;;;;;:8;:20;;;;;;:55;;;;3787:13;;;;;;;:29;;3805:10;3787:29;:17;:29;:::i;:::-;3771:13;;;;;;;:8;:13;;;;;:45;;;;3830:7;;3826:126;;;3871:15;3880:5;;;;3871:15;;:8;:15;;;;;;:24;;3891:3;3871:24;:19;:24;:::i;:::-;3853:15;3862:5;;;;;;3853:15;;:8;:15;;;;;;:42;;;;3930:5;;;;;3918:10;3909:32;;;;;;3937:3;;3909:32;;;;;;;;;;;;;3826:126;3982:3;3961:37;;3970:10;3961:37;;;3987:10;3961:37;;;;;;;;;;;;;;3445:560;;;;;:::o;206:201::-;264:7;;287:6;;283:45;;;316:1;309:8;;;;283:45;-1:-1:-1;349:5:0;;;353:1;349;:5;371;;;;;;;;:10;364:18;;;;399:1;392:8;;206:201;;;;;;:::o;7052:143::-;7163:15;;;;7130:14;7163:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;7052:143::o;413:283::-;471:7;568:9;584:1;580;:5;;;;;;;;;413:283;-1:-1:-1;;;;413:283:0:o;702:120::-;760:7;786:6;;;;779:14;;;;-1:-1:-1;810:5:0;;;702:120::o;828:143::-;886:7;917:5;;;939:6;;;;932:14;;"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "1465000",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"MAX_UINT()": "811",
"_totalSupply()": "615",
"addBlackList(address)": "21835",
"allowance(address,address)": "infinite",
"allowed(address,address)": "846",
"approve(address,uint256)": "infinite",
"balanceOf(address)": "infinite",
"balances(address)": "627",
"basisPointsRate()": "945",
"decimals()": "571",
"deprecate(address)": "21709",
"deprecated()": "462",
"destroyBlackFunds(address)": "infinite",
"getBlackListStatus(address)": "764",
"getOwner()": "784",
"isBlackListed(address)": "1057",
"issue(uint256)": "43374",
"maximumFee()": "593",
"name()": "infinite",
"owner()": "806",
"pause()": "21974",
"paused()": "726",
"redeem(uint256)": "43402",
"removeBlackList(address)": "22357",
"setParams(uint256,uint256)": "infinite",
"symbol()": "infinite",
"totalSupply()": "infinite",
"transfer(address,uint256)": "infinite",
"transferFrom(address,address,uint256)": "infinite",
"transferOwnership(address)": "21292",
"unpause()": "21861",
"upgradedAddress()": "542"
}
},
"legacyAssembly": {
".code": [
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "60"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "40"
},
{
"begin": 9728,
"end": 14509,
"name": "MSTORE"
},
{
"begin": 7405,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP1"
},
{
"begin": 7384,
"end": 7410,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "FF"
},
{
"begin": -1,
"end": -1,
"name": "MUL"
},
{
"begin": -1,
"end": -1,
"name": "NOT"
},
{
"begin": 7384,
"end": 7410,
"name": "AND"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP2"
},
{
"begin": 7384,
"end": 7410,
"name": "SSTORE"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH",
"value": "3"
},
{
"begin": 3041,
"end": 3072,
"name": "DUP2"
},
{
"begin": 3041,
"end": 3072,
"name": "SWAP1"
},
{
"begin": 3041,
"end": 3072,
"name": "SSTORE"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH",
"value": "4"
},
{
"begin": 3078,
"end": 3104,
"name": "SSTORE"
},
{
"begin": 10223,
"end": 10512,
"name": "CALLVALUE"
},
{
"begin": 10223,
"end": 10512,
"name": "ISZERO"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 10223,
"end": 10512,
"name": "JUMPI"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "0"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "REVERT"
},
{
"begin": 10223,
"end": 10512,
"name": "tag",
"value": "1"
},
{
"begin": 10223,
"end": 10512,
"name": "JUMPDEST"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "40"
},
{
"begin": 10223,
"end": 10512,
"name": "MLOAD"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSHSIZE"
},
{
"begin": 10223,
"end": 10512,
"name": "CODESIZE"
},
{
"begin": 10223,
"end": 10512,
"name": "SUB"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSHSIZE"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP4"
},
{
"begin": 10223,
"end": 10512,
"name": "CODECOPY"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP2"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "40"
},
{
"begin": 10223,
"end": 10512,
"name": "MSTORE"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "MLOAD"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP2"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP1"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "20"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "MLOAD"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP3"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP2"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP1"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "20"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "MLOAD"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP3"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP2"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP1"
},
{
"begin": 10223,
"end": 10512,
"name": "PUSH",
"value": "20"
},
{
"begin": 10223,
"end": 10512,
"name": "ADD"
},
{
"begin": 10223,
"end": 10512,
"name": "DUP1"
},
{
"begin": 10223,
"end": 10512,
"name": "MLOAD"
},
{
"begin": 1378,
"end": 1383,
"name": "PUSH",
"value": "0"
},
{
"begin": 1378,
"end": 1396,
"name": "DUP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": -1,
"end": -1,
"name": "NOT"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": 1386,
"end": 1396,
"name": "CALLER"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": 1378,
"end": 1396,
"name": "AND"
},
{
"begin": 1378,
"end": 1396,
"name": "OR"
},
{
"begin": 1378,
"end": 1396,
"name": "SWAP1"
},
{
"begin": 1378,
"end": 1396,
"name": "SSTORE"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": 10328,
"end": 10357,
"name": "DUP7"
},
{
"begin": 10328,
"end": 10357,
"name": "SWAP1"
},
{
"begin": 10328,
"end": 10357,
"name": "SSTORE"
},
{
"begin": 10223,
"end": 10512,
"name": "SWAP2"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 10367,
"end": 10371,
"name": "PUSH",
"value": "7"
},
{
"begin": 10367,
"end": 10371,
"name": "SWAP1"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 10374,
"end": 10379,
"name": "DUP4"
},
{
"begin": 10374,
"end": 10379,
"name": "DUP1"
},
{
"begin": 10367,
"end": 10379,
"name": "MLOAD"
},
{
"begin": 10367,
"end": 10379,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 10367,
"end": 10379,
"name": "SWAP3"
},
{
"begin": 10367,
"end": 10379,
"name": "SWAP2"
},
{
"begin": 10367,
"end": 10379,
"name": "PUSH",
"value": "20"
},
{
"begin": 10367,
"end": 10379,
"name": "ADD"
},
{
"begin": 10367,
"end": 10379,
"name": "SWAP1"
},
{
"begin": 10367,
"end": 10379,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 10367,
"end": 10379,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 10367,
"end": 10379,
"name": "tag",
"value": "6"
},
{
"begin": 10367,
"end": 10379,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 10389,
"end": 10395,
"name": "PUSH",
"value": "8"
},
{
"begin": 10398,
"end": 10405,
"name": "DUP3"
},
{
"begin": 10398,
"end": 10405,
"name": "DUP1"
},
{
"begin": 10389,
"end": 10405,
"name": "MLOAD"
},
{
"begin": 10389,
"end": 10405,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 10389,
"end": 10405,
"name": "SWAP3"
},
{
"begin": 10389,
"end": 10405,
"name": "SWAP2"
},
{
"begin": 10389,
"end": 10405,
"name": "PUSH",
"value": "20"
},
{
"begin": 10389,
"end": 10405,
"name": "ADD"
},
{
"begin": 10389,
"end": 10405,
"name": "SWAP1"
},
{
"begin": 10389,
"end": 10405,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 10389,
"end": 10405,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 10389,
"end": 10405,
"name": "tag",
"value": "8"
},
{
"begin": 10389,
"end": 10405,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 10415,
"end": 10423,
"name": "PUSH",
"value": "9"
},
{
"begin": 10415,
"end": 10435,
"name": "SSTORE"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 10445,
"end": 10460,
"name": "PUSH",
"value": "0"
},
{
"begin": 10454,
"end": 10459,
"name": "DUP1"
},
{
"begin": 10454,
"end": 10459,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "SUB"
},
{
"begin": 10454,
"end": 10459,
"name": "AND"
},
{
"begin": 10445,
"end": 10460,
"name": "DUP2"
},
{
"begin": 10445,
"end": 10460,
"name": "MSTORE"
},
{
"begin": 10445,
"end": 10453,
"name": "PUSH",
"value": "2"
},
{
"begin": 10445,
"end": 10460,
"name": "PUSH",
"value": "20"
},
{
"begin": 10445,
"end": 10460,
"name": "MSTORE"
},
{
"begin": 10445,
"end": 10460,
"name": "PUSH",
"value": "40"
},
{
"begin": 10445,
"end": 10460,
"name": "SWAP1"
},
{
"begin": 10445,
"end": 10460,
"name": "KECCAK256"
},
{
"begin": 10445,
"end": 10477,
"name": "SSTORE"
},
{
"begin": 10487,
"end": 10497,
"name": "PUSH",
"value": "A"
},
{
"begin": 10487,
"end": 10505,
"name": "DUP1"
},
{
"begin": 10487,
"end": 10505,
"name": "SLOAD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "2"
},
{
"begin": -1,
"end": -1,
"name": "EXP"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "FF"
},
{
"begin": -1,
"end": -1,
"name": "MUL"
},
{
"begin": -1,
"end": -1,
"name": "NOT"
},
{
"begin": 10487,
"end": 10505,
"name": "AND"
},
{
"begin": 10487,
"end": 10505,
"name": "SWAP1"
},
{
"begin": 10487,
"end": 10505,
"name": "SSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "7"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "SLOAD"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP2"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "AND"
},
{
"begin": 9728,
"end": 14509,
"name": "ISZERO"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "100"
},
{
"begin": 9728,
"end": 14509,
"name": "MUL"
},
{
"begin": 9728,
"end": 14509,
"name": "SUB"
},
{
"begin": 9728,
"end": 14509,
"name": "AND"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "2"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "DIV"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "MSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "20"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "KECCAK256"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "20"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "DIV"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP2"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP3"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9728,
"end": 14509,
"name": "LT"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "MLOAD"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "FF"
},
{
"begin": 9728,
"end": 14509,
"name": "NOT"
},
{
"begin": 9728,
"end": 14509,
"name": "AND"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP4"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "OR"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP6"
},
{
"begin": 9728,
"end": 14509,
"name": "SSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "11"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP6"
},
{
"begin": 9728,
"end": 14509,
"name": "SSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "ISZERO"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP2"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "12"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP2"
},
{
"begin": 9728,
"end": 14509,
"name": "GT"
},
{
"begin": 9728,
"end": 14509,
"name": "ISZERO"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "MLOAD"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "SSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP2"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "20"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP2"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "12"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "13"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "14"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP3"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP2"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "15"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "14"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "POP"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "15"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "16"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP2"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "17"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP3"
},
{
"begin": 9728,
"end": 14509,
"name": "GT"
},
{
"begin": 9728,
"end": 14509,
"name": "ISZERO"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "14"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP2"
},
{
"begin": 9728,
"end": 14509,
"name": "SSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "ADD"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "17"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "16"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "SWAP1"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "9"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH #[$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "CODECOPY"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "RETURN"
}
],
".data": {
"0": {
".auxdata": "a165627a7a72305820c6c7ec5e3bee0b2db470f633175dd5c4c1900658f43d73e4f34ffa2e46d86ab80029",
".code": [
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "60"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "40"
},
{
"begin": 9728,
"end": 14509,
"name": "MSTORE"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "4"
},
{
"begin": 9728,
"end": 14509,
"name": "CALLDATASIZE"
},
{
"begin": 9728,
"end": 14509,
"name": "LT"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "CALLDATALOAD"
},
{
"begin": 9728,
"end": 14509,
"name": "DIV"
},
{
"begin": 9728,
"end": 14509,
"name": "AND"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "6FDDE03"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP2"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "2"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "753C30C"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "3"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "95EA7B3"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "4"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "E136B19"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "5"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "ECB93C0"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "18160DDD"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "23B872DD"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "26976E3F"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "27E235E3"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "313CE567"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "35390714"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "12"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "3EAAF86B"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "3F4BA83A"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "14"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "59BF1ABE"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "15"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "5C658165"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "16"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "5C975ABB"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "17"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "70A08231"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "18"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "8456CB59"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "19"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "893D20E8"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "20"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "8DA5CB5B"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "21"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "95D89B41"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "22"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "A9059CBB"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "23"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "C0324C77"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "24"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "CC872B66"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "25"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "DB006A75"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "26"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "DD62ED3E"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "27"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "DD644F72"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "28"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "E47D6060"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "29"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "E4997DC5"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "30"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "E5B5019A"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "31"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "F2FDE38B"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "32"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "F3BDC228"
},
{
"begin": 9728,
"end": 14509,
"name": "EQ"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH [tag]",
"value": "33"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPI"
},
{
"begin": 9728,
"end": 14509,
"name": "tag",
"value": "1"
},
{
"begin": 9728,
"end": 14509,
"name": "JUMPDEST"
},
{
"begin": 9728,
"end": 14509,
"name": "PUSH",
"value": "0"
},
{
"begin": 9728,
"end": 14509,
"name": "DUP1"
},
{
"begin": 9728,
"end": 14509,
"name": "REVERT"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "2"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "CALLVALUE"
},
{
"begin": 9794,
"end": 9812,
"name": "ISZERO"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "34"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPI"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "0"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "REVERT"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "34"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "35"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "36"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMP"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "35"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "40"
},
{
"begin": 9794,
"end": 9812,
"name": "MLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP3"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "MLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "MLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 23,
"end": 24,
"name": "PUSH",
"value": "0"
},
{
"begin": 8,
"end": 108,
"name": "tag",
"value": "37"
},
{
"begin": 8,
"end": 108,
"name": "JUMPDEST"
},
{
"begin": 33,
"end": 36,
"name": "DUP4"
},
{
"begin": 30,
"end": 31,
"name": "DUP2"
},
{
"begin": 27,
"end": 29,
"name": "LT"
},
{
"begin": 8,
"end": 108,
"name": "ISZERO"
},
{
"begin": 8,
"end": 108,
"name": "PUSH [tag]",
"value": "38"
},
{
"begin": 8,
"end": 108,
"name": "JUMPI"
},
{
"begin": 99,
"end": 100,
"name": "DUP1"
},
{
"begin": 94,
"end": 97,
"name": "DUP3"
},
{
"begin": 90,
"end": 93,
"name": "ADD"
},
{
"begin": 84,
"end": 89,
"name": "MLOAD"
},
{
"begin": 71,
"end": 74,
"name": "DUP4"
},
{
"begin": 71,
"end": 74,
"name": "DUP3"
},
{
"begin": 71,
"end": 74,
"name": "ADD"
},
{
"begin": 64,
"end": 70,
"name": "MSTORE"
},
{
"begin": 52,
"end": 54,
"name": "PUSH",
"value": "20"
},
{
"begin": 45,
"end": 48,
"name": "ADD"
},
{
"begin": 8,
"end": 108,
"name": "PUSH [tag]",
"value": "37"
},
{
"begin": 8,
"end": 108,
"name": "JUMP"
},
{
"begin": 8,
"end": 108,
"name": "tag",
"value": "38"
},
{
"begin": 8,
"end": 108,
"name": "JUMPDEST"
},
{
"begin": 12,
"end": 26,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "SWAP1"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "SWAP1"
},
{
"begin": 3,
"end": 112,
"name": "DUP2"
},
{
"begin": 3,
"end": 112,
"name": "ADD"
},
{
"begin": 3,
"end": 112,
"name": "SWAP1"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "1F"
},
{
"begin": 3,
"end": 112,
"name": "AND"
},
{
"begin": 3,
"end": 112,
"name": "DUP1"
},
{
"begin": 3,
"end": 112,
"name": "ISZERO"
},
{
"begin": 3,
"end": 112,
"name": "PUSH [tag]",
"value": "40"
},
{
"begin": 3,
"end": 112,
"name": "JUMPI"
},
{
"begin": 3,
"end": 112,
"name": "DUP1"
},
{
"begin": 3,
"end": 112,
"name": "DUP3"
},
{
"begin": 3,
"end": 112,
"name": "SUB"
},
{
"begin": 3,
"end": 112,
"name": "DUP1"
},
{
"begin": 3,
"end": 112,
"name": "MLOAD"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "1"
},
{
"begin": 3,
"end": 112,
"name": "DUP4"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "20"
},
{
"begin": 3,
"end": 112,
"name": "SUB"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "100"
},
{
"begin": 3,
"end": 112,
"name": "EXP"
},
{
"begin": 3,
"end": 112,
"name": "SUB"
},
{
"begin": 3,
"end": 112,
"name": "NOT"
},
{
"begin": 3,
"end": 112,
"name": "AND"
},
{
"begin": 3,
"end": 112,
"name": "DUP2"
},
{
"begin": 3,
"end": 112,
"name": "MSTORE"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "20"
},
{
"begin": 3,
"end": 112,
"name": "ADD"
},
{
"begin": 3,
"end": 112,
"name": "SWAP2"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "tag",
"value": "40"
},
{
"begin": 3,
"end": 112,
"name": "JUMPDEST"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "SWAP3"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "POP"
},
{
"begin": 3,
"end": 112,
"name": "PUSH",
"value": "40"
},
{
"begin": 3,
"end": 112,
"name": "MLOAD"
},
{
"begin": 3,
"end": 112,
"name": "DUP1"
},
{
"begin": 3,
"end": 112,
"name": "SWAP2"
},
{
"begin": 3,
"end": 112,
"name": "SUB"
},
{
"begin": 3,
"end": 112,
"name": "SWAP1"
},
{
"begin": 3,
"end": 112,
"name": "RETURN"
},
{
"begin": 12480,
"end": 12657,
"name": "tag",
"value": "3"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMPDEST"
},
{
"begin": 12480,
"end": 12657,
"name": "CALLVALUE"
},
{
"begin": 12480,
"end": 12657,
"name": "ISZERO"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH [tag]",
"value": "41"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMPI"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH",
"value": "0"
},
{
"begin": 12480,
"end": 12657,
"name": "DUP1"
},
{
"begin": 12480,
"end": 12657,
"name": "REVERT"
},
{
"begin": 12480,
"end": 12657,
"name": "tag",
"value": "41"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMPDEST"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH",
"value": "4"
},
{
"begin": 12480,
"end": 12657,
"name": "CALLDATALOAD"
},
{
"begin": 12480,
"end": 12657,
"name": "AND"
},
{
"begin": 12480,
"end": 12657,
"name": "PUSH [tag]",
"value": "43"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMP"
},
{
"begin": 12480,
"end": 12657,
"name": "tag",
"value": "42"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMPDEST"
},
{
"begin": 12480,
"end": 12657,
"name": "STOP"
},
{
"begin": 11752,
"end": 12048,
"name": "tag",
"value": "4"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMPDEST"
},
{
"begin": 11752,
"end": 12048,
"name": "CALLVALUE"
},
{
"begin": 11752,
"end": 12048,
"name": "ISZERO"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH [tag]",
"value": "44"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMPI"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH",
"value": "0"
},
{
"begin": 11752,
"end": 12048,
"name": "DUP1"
},
{
"begin": 11752,
"end": 12048,
"name": "REVERT"
},
{
"begin": 11752,
"end": 12048,
"name": "tag",
"value": "44"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMPDEST"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH",
"value": "4"
},
{
"begin": 11752,
"end": 12048,
"name": "CALLDATALOAD"
},
{
"begin": 11752,
"end": 12048,
"name": "AND"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH",
"value": "24"
},
{
"begin": 11752,
"end": 12048,
"name": "CALLDATALOAD"
},
{
"begin": 11752,
"end": 12048,
"name": "PUSH [tag]",
"value": "46"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMP"
},
{
"begin": 9906,
"end": 9928,
"name": "tag",
"value": "5"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMPDEST"
},
{
"begin": 9906,
"end": 9928,
"name": "CALLVALUE"
},
{
"begin": 9906,
"end": 9928,
"name": "ISZERO"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH [tag]",
"value": "47"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMPI"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "0"
},
{
"begin": 9906,
"end": 9928,
"name": "DUP1"
},
{
"begin": 9906,
"end": 9928,
"name": "REVERT"
},
{
"begin": 9906,
"end": 9928,
"name": "tag",
"value": "47"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMPDEST"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH [tag]",
"value": "48"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH [tag]",
"value": "49"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMP"
},
{
"begin": 9906,
"end": 9928,
"name": "tag",
"value": "48"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMPDEST"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "40"
},
{
"begin": 9906,
"end": 9928,
"name": "MLOAD"
},
{
"begin": 9906,
"end": 9928,
"name": "SWAP1"
},
{
"begin": 9906,
"end": 9928,
"name": "ISZERO"
},
{
"begin": 9906,
"end": 9928,
"name": "ISZERO"
},
{
"begin": 9906,
"end": 9928,
"name": "DUP2"
},
{
"begin": 9906,
"end": 9928,
"name": "MSTORE"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "20"
},
{
"begin": 9906,
"end": 9928,
"name": "ADD"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "40"
},
{
"begin": 9906,
"end": 9928,
"name": "MLOAD"
},
{
"begin": 9906,
"end": 9928,
"name": "DUP1"
},
{
"begin": 9906,
"end": 9928,
"name": "SWAP2"
},
{
"begin": 9906,
"end": 9928,
"name": "SUB"
},
{
"begin": 9906,
"end": 9928,
"name": "SWAP1"
},
{
"begin": 9906,
"end": 9928,
"name": "RETURN"
},
{
"begin": 8505,
"end": 8647,
"name": "tag",
"value": "6"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMPDEST"
},
{
"begin": 8505,
"end": 8647,
"name": "CALLVALUE"
},
{
"begin": 8505,
"end": 8647,
"name": "ISZERO"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH [tag]",
"value": "50"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMPI"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH",
"value": "0"
},
{
"begin": 8505,
"end": 8647,
"name": "DUP1"
},
{
"begin": 8505,
"end": 8647,
"name": "REVERT"
},
{
"begin": 8505,
"end": 8647,
"name": "tag",
"value": "50"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMPDEST"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH",
"value": "4"
},
{
"begin": 8505,
"end": 8647,
"name": "CALLDATALOAD"
},
{
"begin": 8505,
"end": 8647,
"name": "AND"
},
{
"begin": 8505,
"end": 8647,
"name": "PUSH [tag]",
"value": "52"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMP"
},
{
"begin": 12720,
"end": 12932,
"name": "tag",
"value": "7"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMPDEST"
},
{
"begin": 12720,
"end": 12932,
"name": "CALLVALUE"
},
{
"begin": 12720,
"end": 12932,
"name": "ISZERO"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH [tag]",
"value": "53"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMPI"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH",
"value": "0"
},
{
"begin": 12720,
"end": 12932,
"name": "DUP1"
},
{
"begin": 12720,
"end": 12932,
"name": "REVERT"
},
{
"begin": 12720,
"end": 12932,
"name": "tag",
"value": "53"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMPDEST"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH [tag]",
"value": "55"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMP"
},
{
"begin": 12720,
"end": 12932,
"name": "tag",
"value": "54"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMPDEST"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH",
"value": "40"
},
{
"begin": 12720,
"end": 12932,
"name": "MLOAD"
},
{
"begin": 12720,
"end": 12932,
"name": "SWAP1"
},
{
"begin": 12720,
"end": 12932,
"name": "DUP2"
},
{
"begin": 12720,
"end": 12932,
"name": "MSTORE"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH",
"value": "20"
},
{
"begin": 12720,
"end": 12932,
"name": "ADD"
},
{
"begin": 12720,
"end": 12932,
"name": "PUSH",
"value": "40"
},
{
"begin": 12720,
"end": 12932,
"name": "MLOAD"
},
{
"begin": 12720,
"end": 12932,
"name": "DUP1"
},
{
"begin": 12720,
"end": 12932,
"name": "SWAP2"
},
{
"begin": 12720,
"end": 12932,
"name": "SUB"
},
{
"begin": 12720,
"end": 12932,
"name": "SWAP1"
},
{
"begin": 12720,
"end": 12932,
"name": "RETURN"
},
{
"begin": 10995,
"end": 11350,
"name": "tag",
"value": "8"
},
{
"begin": 10995,
"end": 11350,
"name": "JUMPDEST"
},
{
"begin": 10995,
"end": 11350,
"name": "CALLVALUE"
},
{
"begin": 10995,
"end": 11350,
"name": "ISZERO"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH [tag]",
"value": "56"
},
{
"begin": 10995,
"end": 11350,
"name": "JUMPI"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH",
"value": "0"
},
{
"begin": 10995,
"end": 11350,
"name": "DUP1"
},
{
"begin": 10995,
"end": 11350,
"name": "REVERT"
},
{
"begin": 10995,
"end": 11350,
"name": "tag",
"value": "56"
},
{
"begin": 10995,
"end": 11350,
"name": "JUMPDEST"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH",
"value": "4"
},
{
"begin": 10995,
"end": 11350,
"name": "CALLDATALOAD"
},
{
"begin": 10995,
"end": 11350,
"name": "DUP2"
},
{
"begin": 10995,
"end": 11350,
"name": "AND"
},
{
"begin": 10995,
"end": 11350,
"name": "SWAP1"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH",
"value": "24"
},
{
"begin": 10995,
"end": 11350,
"name": "CALLDATALOAD"
},
{
"begin": 10995,
"end": 11350,
"name": "AND"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH",
"value": "44"
},
{
"begin": 10995,
"end": 11350,
"name": "CALLDATALOAD"
},
{
"begin": 10995,
"end": 11350,
"name": "PUSH [tag]",
"value": "58"
},
{
"begin": 10995,
"end": 11350,
"name": "JUMP"
},
{
"begin": 9870,
"end": 9900,
"name": "tag",
"value": "9"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMPDEST"
},
{
"begin": 9870,
"end": 9900,
"name": "CALLVALUE"
},
{
"begin": 9870,
"end": 9900,
"name": "ISZERO"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH [tag]",
"value": "59"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMPI"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "0"
},
{
"begin": 9870,
"end": 9900,
"name": "DUP1"
},
{
"begin": 9870,
"end": 9900,
"name": "REVERT"
},
{
"begin": 9870,
"end": 9900,
"name": "tag",
"value": "59"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMPDEST"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH [tag]",
"value": "60"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH [tag]",
"value": "61"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMP"
},
{
"begin": 9870,
"end": 9900,
"name": "tag",
"value": "60"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMPDEST"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "40"
},
{
"begin": 9870,
"end": 9900,
"name": "MLOAD"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 9870,
"end": 9900,
"name": "SWAP1"
},
{
"begin": 9870,
"end": 9900,
"name": "SWAP2"
},
{
"begin": 9870,
"end": 9900,
"name": "AND"
},
{
"begin": 9870,
"end": 9900,
"name": "DUP2"
},
{
"begin": 9870,
"end": 9900,
"name": "MSTORE"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "20"
},
{
"begin": 9870,
"end": 9900,
"name": "ADD"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "40"
},
{
"begin": 9870,
"end": 9900,
"name": "MLOAD"
},
{
"begin": 9870,
"end": 9900,
"name": "DUP1"
},
{
"begin": 9870,
"end": 9900,
"name": "SWAP2"
},
{
"begin": 9870,
"end": 9900,
"name": "SUB"
},
{
"begin": 9870,
"end": 9900,
"name": "SWAP1"
},
{
"begin": 9870,
"end": 9900,
"name": "RETURN"
},
{
"begin": 2916,
"end": 2956,
"name": "tag",
"value": "10"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMPDEST"
},
{
"begin": 2916,
"end": 2956,
"name": "CALLVALUE"
},
{
"begin": 2916,
"end": 2956,
"name": "ISZERO"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH [tag]",
"value": "62"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMPI"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "0"
},
{
"begin": 2916,
"end": 2956,
"name": "DUP1"
},
{
"begin": 2916,
"end": 2956,
"name": "REVERT"
},
{
"begin": 2916,
"end": 2956,
"name": "tag",
"value": "62"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMPDEST"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "4"
},
{
"begin": 2916,
"end": 2956,
"name": "CALLDATALOAD"
},
{
"begin": 2916,
"end": 2956,
"name": "AND"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH [tag]",
"value": "64"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMP"
},
{
"begin": 9844,
"end": 9864,
"name": "tag",
"value": "11"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMPDEST"
},
{
"begin": 9844,
"end": 9864,
"name": "CALLVALUE"
},
{
"begin": 9844,
"end": 9864,
"name": "ISZERO"
},
{
"begin": 9844,
"end": 9864,
"name": "PUSH [tag]",
"value": "65"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMPI"
},
{
"begin": 9844,
"end": 9864,
"name": "PUSH",
"value": "0"
},
{
"begin": 9844,
"end": 9864,
"name": "DUP1"
},
{
"begin": 9844,
"end": 9864,
"name": "REVERT"
},
{
"begin": 9844,
"end": 9864,
"name": "tag",
"value": "65"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMPDEST"
},
{
"begin": 9844,
"end": 9864,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 9844,
"end": 9864,
"name": "PUSH [tag]",
"value": "67"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMP"
},
{
"begin": 3078,
"end": 3104,
"name": "tag",
"value": "12"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMPDEST"
},
{
"begin": 3078,
"end": 3104,
"name": "CALLVALUE"
},
{
"begin": 3078,
"end": 3104,
"name": "ISZERO"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH [tag]",
"value": "68"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMPI"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH",
"value": "0"
},
{
"begin": 3078,
"end": 3104,
"name": "DUP1"
},
{
"begin": 3078,
"end": 3104,
"name": "REVERT"
},
{
"begin": 3078,
"end": 3104,
"name": "tag",
"value": "68"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMPDEST"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH [tag]",
"value": "70"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMP"
},
{
"begin": 2043,
"end": 2067,
"name": "tag",
"value": "13"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMPDEST"
},
{
"begin": 2043,
"end": 2067,
"name": "CALLVALUE"
},
{
"begin": 2043,
"end": 2067,
"name": "ISZERO"
},
{
"begin": 2043,
"end": 2067,
"name": "PUSH [tag]",
"value": "71"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMPI"
},
{
"begin": 2043,
"end": 2067,
"name": "PUSH",
"value": "0"
},
{
"begin": 2043,
"end": 2067,
"name": "DUP1"
},
{
"begin": 2043,
"end": 2067,
"name": "REVERT"
},
{
"begin": 2043,
"end": 2067,
"name": "tag",
"value": "71"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMPDEST"
},
{
"begin": 2043,
"end": 2067,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 2043,
"end": 2067,
"name": "PUSH [tag]",
"value": "73"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMP"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "14"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 7970,
"end": 8057,
"name": "CALLVALUE"
},
{
"begin": 7970,
"end": 8057,
"name": "ISZERO"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "74"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPI"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH",
"value": "0"
},
{
"begin": 7970,
"end": 8057,
"name": "DUP1"
},
{
"begin": 7970,
"end": 8057,
"name": "REVERT"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "74"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 7970,
"end": 8057,
"name": "PUSH [tag]",
"value": "76"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMP"
},
{
"begin": 8229,
"end": 8351,
"name": "tag",
"value": "15"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMPDEST"
},
{
"begin": 8229,
"end": 8351,
"name": "CALLVALUE"
},
{
"begin": 8229,
"end": 8351,
"name": "ISZERO"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH [tag]",
"value": "77"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMPI"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH",
"value": "0"
},
{
"begin": 8229,
"end": 8351,
"name": "DUP1"
},
{
"begin": 8229,
"end": 8351,
"name": "REVERT"
},
{
"begin": 8229,
"end": 8351,
"name": "tag",
"value": "77"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMPDEST"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH [tag]",
"value": "48"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH",
"value": "4"
},
{
"begin": 8229,
"end": 8351,
"name": "CALLDATALOAD"
},
{
"begin": 8229,
"end": 8351,
"name": "AND"
},
{
"begin": 8229,
"end": 8351,
"name": "PUSH [tag]",
"value": "79"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMP"
},
{
"begin": 4652,
"end": 4713,
"name": "tag",
"value": "16"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMPDEST"
},
{
"begin": 4652,
"end": 4713,
"name": "CALLVALUE"
},
{
"begin": 4652,
"end": 4713,
"name": "ISZERO"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH [tag]",
"value": "80"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMPI"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "0"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP1"
},
{
"begin": 4652,
"end": 4713,
"name": "REVERT"
},
{
"begin": 4652,
"end": 4713,
"name": "tag",
"value": "80"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMPDEST"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "4"
},
{
"begin": 4652,
"end": 4713,
"name": "CALLDATALOAD"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP2"
},
{
"begin": 4652,
"end": 4713,
"name": "AND"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP1"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "24"
},
{
"begin": 4652,
"end": 4713,
"name": "CALLDATALOAD"
},
{
"begin": 4652,
"end": 4713,
"name": "AND"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH [tag]",
"value": "82"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMP"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "17"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "CALLVALUE"
},
{
"begin": 7384,
"end": 7410,
"name": "ISZERO"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "83"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPI"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP1"
},
{
"begin": 7384,
"end": 7410,
"name": "REVERT"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "83"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "48"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH [tag]",
"value": "85"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMP"
},
{
"begin": 11432,
"end": 11670,
"name": "tag",
"value": "18"
},
{
"begin": 11432,
"end": 11670,
"name": "JUMPDEST"
},
{
"begin": 11432,
"end": 11670,
"name": "CALLVALUE"
},
{
"begin": 11432,
"end": 11670,
"name": "ISZERO"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH [tag]",
"value": "86"
},
{
"begin": 11432,
"end": 11670,
"name": "JUMPI"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH",
"value": "0"
},
{
"begin": 11432,
"end": 11670,
"name": "DUP1"
},
{
"begin": 11432,
"end": 11670,
"name": "REVERT"
},
{
"begin": 11432,
"end": 11670,
"name": "tag",
"value": "86"
},
{
"begin": 11432,
"end": 11670,
"name": "JUMPDEST"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH",
"value": "4"
},
{
"begin": 11432,
"end": 11670,
"name": "CALLDATALOAD"
},
{
"begin": 11432,
"end": 11670,
"name": "AND"
},
{
"begin": 11432,
"end": 11670,
"name": "PUSH [tag]",
"value": "88"
},
{
"begin": 11432,
"end": 11670,
"name": "JUMP"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "19"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 7803,
"end": 7888,
"name": "CALLVALUE"
},
{
"begin": 7803,
"end": 7888,
"name": "ISZERO"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "89"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPI"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH",
"value": "0"
},
{
"begin": 7803,
"end": 7888,
"name": "DUP1"
},
{
"begin": 7803,
"end": 7888,
"name": "REVERT"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "89"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 7803,
"end": 7888,
"name": "PUSH [tag]",
"value": "91"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMP"
},
{
"begin": 8357,
"end": 8442,
"name": "tag",
"value": "20"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMPDEST"
},
{
"begin": 8357,
"end": 8442,
"name": "CALLVALUE"
},
{
"begin": 8357,
"end": 8442,
"name": "ISZERO"
},
{
"begin": 8357,
"end": 8442,
"name": "PUSH [tag]",
"value": "92"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMPI"
},
{
"begin": 8357,
"end": 8442,
"name": "PUSH",
"value": "0"
},
{
"begin": 8357,
"end": 8442,
"name": "DUP1"
},
{
"begin": 8357,
"end": 8442,
"name": "REVERT"
},
{
"begin": 8357,
"end": 8442,
"name": "tag",
"value": "92"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMPDEST"
},
{
"begin": 8357,
"end": 8442,
"name": "PUSH [tag]",
"value": "60"
},
{
"begin": 8357,
"end": 8442,
"name": "PUSH [tag]",
"value": "94"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMP"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "21"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "CALLVALUE"
},
{
"begin": 1188,
"end": 1208,
"name": "ISZERO"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "95"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPI"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP1"
},
{
"begin": 1188,
"end": 1208,
"name": "REVERT"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "95"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "60"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH [tag]",
"value": "97"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP"
},
{
"begin": 9818,
"end": 9838,
"name": "tag",
"value": "22"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPDEST"
},
{
"begin": 9818,
"end": 9838,
"name": "CALLVALUE"
},
{
"begin": 9818,
"end": 9838,
"name": "ISZERO"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "98"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPI"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "0"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "REVERT"
},
{
"begin": 9818,
"end": 9838,
"name": "tag",
"value": "98"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPDEST"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "35"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "100"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMP"
},
{
"begin": 10594,
"end": 10913,
"name": "tag",
"value": "23"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMPDEST"
},
{
"begin": 10594,
"end": 10913,
"name": "CALLVALUE"
},
{
"begin": 10594,
"end": 10913,
"name": "ISZERO"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH [tag]",
"value": "105"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMPI"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH",
"value": "0"
},
{
"begin": 10594,
"end": 10913,
"name": "DUP1"
},
{
"begin": 10594,
"end": 10913,
"name": "REVERT"
},
{
"begin": 10594,
"end": 10913,
"name": "tag",
"value": "105"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMPDEST"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH",
"value": "4"
},
{
"begin": 10594,
"end": 10913,
"name": "CALLDATALOAD"
},
{
"begin": 10594,
"end": 10913,
"name": "AND"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH",
"value": "24"
},
{
"begin": 10594,
"end": 10913,
"name": "CALLDATALOAD"
},
{
"begin": 10594,
"end": 10913,
"name": "PUSH [tag]",
"value": "107"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMP"
},
{
"begin": 13809,
"end": 14187,
"name": "tag",
"value": "24"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMPDEST"
},
{
"begin": 13809,
"end": 14187,
"name": "CALLVALUE"
},
{
"begin": 13809,
"end": 14187,
"name": "ISZERO"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH [tag]",
"value": "108"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMPI"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH",
"value": "0"
},
{
"begin": 13809,
"end": 14187,
"name": "DUP1"
},
{
"begin": 13809,
"end": 14187,
"name": "REVERT"
},
{
"begin": 13809,
"end": 14187,
"name": "tag",
"value": "108"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMPDEST"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH",
"value": "4"
},
{
"begin": 13809,
"end": 14187,
"name": "CALLDATALOAD"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH",
"value": "24"
},
{
"begin": 13809,
"end": 14187,
"name": "CALLDATALOAD"
},
{
"begin": 13809,
"end": 14187,
"name": "PUSH [tag]",
"value": "110"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMP"
},
{
"begin": 13090,
"end": 13349,
"name": "tag",
"value": "25"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMPDEST"
},
{
"begin": 13090,
"end": 13349,
"name": "CALLVALUE"
},
{
"begin": 13090,
"end": 13349,
"name": "ISZERO"
},
{
"begin": 13090,
"end": 13349,
"name": "PUSH [tag]",
"value": "111"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMPI"
},
{
"begin": 13090,
"end": 13349,
"name": "PUSH",
"value": "0"
},
{
"begin": 13090,
"end": 13349,
"name": "DUP1"
},
{
"begin": 13090,
"end": 13349,
"name": "REVERT"
},
{
"begin": 13090,
"end": 13349,
"name": "tag",
"value": "111"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMPDEST"
},
{
"begin": 13090,
"end": 13349,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 13090,
"end": 13349,
"name": "PUSH",
"value": "4"
},
{
"begin": 13090,
"end": 13349,
"name": "CALLDATALOAD"
},
{
"begin": 13090,
"end": 13349,
"name": "PUSH [tag]",
"value": "113"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMP"
},
{
"begin": 13573,
"end": 13803,
"name": "tag",
"value": "26"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMPDEST"
},
{
"begin": 13573,
"end": 13803,
"name": "CALLVALUE"
},
{
"begin": 13573,
"end": 13803,
"name": "ISZERO"
},
{
"begin": 13573,
"end": 13803,
"name": "PUSH [tag]",
"value": "114"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMPI"
},
{
"begin": 13573,
"end": 13803,
"name": "PUSH",
"value": "0"
},
{
"begin": 13573,
"end": 13803,
"name": "DUP1"
},
{
"begin": 13573,
"end": 13803,
"name": "REVERT"
},
{
"begin": 13573,
"end": 13803,
"name": "tag",
"value": "114"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMPDEST"
},
{
"begin": 13573,
"end": 13803,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 13573,
"end": 13803,
"name": "PUSH",
"value": "4"
},
{
"begin": 13573,
"end": 13803,
"name": "CALLDATALOAD"
},
{
"begin": 13573,
"end": 13803,
"name": "PUSH [tag]",
"value": "116"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMP"
},
{
"begin": 12130,
"end": 12417,
"name": "tag",
"value": "27"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMPDEST"
},
{
"begin": 12130,
"end": 12417,
"name": "CALLVALUE"
},
{
"begin": 12130,
"end": 12417,
"name": "ISZERO"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH [tag]",
"value": "117"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMPI"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH",
"value": "0"
},
{
"begin": 12130,
"end": 12417,
"name": "DUP1"
},
{
"begin": 12130,
"end": 12417,
"name": "REVERT"
},
{
"begin": 12130,
"end": 12417,
"name": "tag",
"value": "117"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMPDEST"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH",
"value": "4"
},
{
"begin": 12130,
"end": 12417,
"name": "CALLDATALOAD"
},
{
"begin": 12130,
"end": 12417,
"name": "DUP2"
},
{
"begin": 12130,
"end": 12417,
"name": "AND"
},
{
"begin": 12130,
"end": 12417,
"name": "SWAP1"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH",
"value": "24"
},
{
"begin": 12130,
"end": 12417,
"name": "CALLDATALOAD"
},
{
"begin": 12130,
"end": 12417,
"name": "AND"
},
{
"begin": 12130,
"end": 12417,
"name": "PUSH [tag]",
"value": "119"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMP"
},
{
"begin": 3041,
"end": 3072,
"name": "tag",
"value": "28"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMPDEST"
},
{
"begin": 3041,
"end": 3072,
"name": "CALLVALUE"
},
{
"begin": 3041,
"end": 3072,
"name": "ISZERO"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH [tag]",
"value": "120"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMPI"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH",
"value": "0"
},
{
"begin": 3041,
"end": 3072,
"name": "DUP1"
},
{
"begin": 3041,
"end": 3072,
"name": "REVERT"
},
{
"begin": 3041,
"end": 3072,
"name": "tag",
"value": "120"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMPDEST"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH [tag]",
"value": "122"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMP"
},
{
"begin": 8448,
"end": 8494,
"name": "tag",
"value": "29"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMPDEST"
},
{
"begin": 8448,
"end": 8494,
"name": "CALLVALUE"
},
{
"begin": 8448,
"end": 8494,
"name": "ISZERO"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH [tag]",
"value": "123"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMPI"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "0"
},
{
"begin": 8448,
"end": 8494,
"name": "DUP1"
},
{
"begin": 8448,
"end": 8494,
"name": "REVERT"
},
{
"begin": 8448,
"end": 8494,
"name": "tag",
"value": "123"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMPDEST"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH [tag]",
"value": "48"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "4"
},
{
"begin": 8448,
"end": 8494,
"name": "CALLDATALOAD"
},
{
"begin": 8448,
"end": 8494,
"name": "AND"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH [tag]",
"value": "125"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMP"
},
{
"begin": 8653,
"end": 8810,
"name": "tag",
"value": "30"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMPDEST"
},
{
"begin": 8653,
"end": 8810,
"name": "CALLVALUE"
},
{
"begin": 8653,
"end": 8810,
"name": "ISZERO"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH [tag]",
"value": "126"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMPI"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH",
"value": "0"
},
{
"begin": 8653,
"end": 8810,
"name": "DUP1"
},
{
"begin": 8653,
"end": 8810,
"name": "REVERT"
},
{
"begin": 8653,
"end": 8810,
"name": "tag",
"value": "126"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMPDEST"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH",
"value": "4"
},
{
"begin": 8653,
"end": 8810,
"name": "CALLDATALOAD"
},
{
"begin": 8653,
"end": 8810,
"name": "AND"
},
{
"begin": 8653,
"end": 8810,
"name": "PUSH [tag]",
"value": "128"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMP"
},
{
"begin": 4720,
"end": 4762,
"name": "tag",
"value": "31"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMPDEST"
},
{
"begin": 4720,
"end": 4762,
"name": "CALLVALUE"
},
{
"begin": 4720,
"end": 4762,
"name": "ISZERO"
},
{
"begin": 4720,
"end": 4762,
"name": "PUSH [tag]",
"value": "129"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMPI"
},
{
"begin": 4720,
"end": 4762,
"name": "PUSH",
"value": "0"
},
{
"begin": 4720,
"end": 4762,
"name": "DUP1"
},
{
"begin": 4720,
"end": 4762,
"name": "REVERT"
},
{
"begin": 4720,
"end": 4762,
"name": "tag",
"value": "129"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMPDEST"
},
{
"begin": 4720,
"end": 4762,
"name": "PUSH [tag]",
"value": "54"
},
{
"begin": 4720,
"end": 4762,
"name": "PUSH [tag]",
"value": "131"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMP"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "32"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLVALUE"
},
{
"begin": 1738,
"end": 1885,
"name": "ISZERO"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "132"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPI"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "0"
},
{
"begin": 1738,
"end": 1885,
"name": "DUP1"
},
{
"begin": 1738,
"end": 1885,
"name": "REVERT"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "132"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH",
"value": "4"
},
{
"begin": 1738,
"end": 1885,
"name": "CALLDATALOAD"
},
{
"begin": 1738,
"end": 1885,
"name": "AND"
},
{
"begin": 1738,
"end": 1885,
"name": "PUSH [tag]",
"value": "134"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP"
},
{
"begin": 8816,
"end": 9134,
"name": "tag",
"value": "33"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMPDEST"
},
{
"begin": 8816,
"end": 9134,
"name": "CALLVALUE"
},
{
"begin": 8816,
"end": 9134,
"name": "ISZERO"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH [tag]",
"value": "135"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMPI"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH",
"value": "0"
},
{
"begin": 8816,
"end": 9134,
"name": "DUP1"
},
{
"begin": 8816,
"end": 9134,
"name": "REVERT"
},
{
"begin": 8816,
"end": 9134,
"name": "tag",
"value": "135"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMPDEST"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH [tag]",
"value": "42"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH",
"value": "4"
},
{
"begin": 8816,
"end": 9134,
"name": "CALLDATALOAD"
},
{
"begin": 8816,
"end": 9134,
"name": "AND"
},
{
"begin": 8816,
"end": 9134,
"name": "PUSH [tag]",
"value": "137"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMP"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "36"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "7"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "SLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1"
},
{
"begin": 9794,
"end": 9812,
"name": "AND"
},
{
"begin": 9794,
"end": 9812,
"name": "ISZERO"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "100"
},
{
"begin": 9794,
"end": 9812,
"name": "MUL"
},
{
"begin": 9794,
"end": 9812,
"name": "SUB"
},
{
"begin": 9794,
"end": 9812,
"name": "AND"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "2"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DIV"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "DIV"
},
{
"begin": 9794,
"end": 9812,
"name": "MUL"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "40"
},
{
"begin": 9794,
"end": 9812,
"name": "MLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "40"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP3"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP3"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "SLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1"
},
{
"begin": 9794,
"end": 9812,
"name": "AND"
},
{
"begin": 9794,
"end": 9812,
"name": "ISZERO"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "100"
},
{
"begin": 9794,
"end": 9812,
"name": "MUL"
},
{
"begin": 9794,
"end": 9812,
"name": "SUB"
},
{
"begin": 9794,
"end": 9812,
"name": "AND"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "2"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DIV"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "ISZERO"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "138"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPI"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9794,
"end": 9812,
"name": "LT"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "139"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPI"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "100"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 9794,
"end": 9812,
"name": "SLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "DIV"
},
{
"begin": 9794,
"end": 9812,
"name": "MUL"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "138"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMP"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "139"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP3"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "0"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "0"
},
{
"begin": 9794,
"end": 9812,
"name": "KECCAK256"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "140"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "SLOAD"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "MSTORE"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "20"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP1"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP4"
},
{
"begin": 9794,
"end": 9812,
"name": "GT"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH [tag]",
"value": "140"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPI"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP3"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP1"
},
{
"begin": 9794,
"end": 9812,
"name": "SUB"
},
{
"begin": 9794,
"end": 9812,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9794,
"end": 9812,
"name": "AND"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP3"
},
{
"begin": 9794,
"end": 9812,
"name": "ADD"
},
{
"begin": 9794,
"end": 9812,
"name": "SWAP2"
},
{
"begin": 9794,
"end": 9812,
"name": "tag",
"value": "138"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMPDEST"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "POP"
},
{
"begin": 9794,
"end": 9812,
"name": "DUP2"
},
{
"begin": 9794,
"end": 9812,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 12480,
"end": 12657,
"name": "tag",
"value": "43"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "142"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "142"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 12552,
"end": 12562,
"name": "PUSH",
"value": "A"
},
{
"begin": 12552,
"end": 12569,
"name": "DUP1"
},
{
"begin": 12552,
"end": 12569,
"name": "SLOAD"
},
{
"begin": 12552,
"end": 12569,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 12552,
"end": 12569,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12552,
"end": 12569,
"name": "SWAP1"
},
{
"begin": 12552,
"end": 12569,
"name": "SWAP2"
},
{
"begin": 12552,
"end": 12569,
"name": "AND"
},
{
"begin": 12552,
"end": 12569,
"name": "OR"
},
{
"begin": 12579,
"end": 12613,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000"
},
{
"begin": 12579,
"end": 12613,
"name": "AND"
},
{
"begin": 12579,
"end": 12613,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12579,
"end": 12613,
"name": "DUP4"
},
{
"begin": 12579,
"end": 12613,
"name": "AND"
},
{
"begin": 12579,
"end": 12613,
"name": "OR"
},
{
"begin": 12579,
"end": 12613,
"name": "SWAP1"
},
{
"begin": 12579,
"end": 12613,
"name": "SSTORE"
},
{
"begin": 12623,
"end": 12650,
"name": "PUSH",
"value": "CC358699805E9A8B7F77B522628C7CB9ABD07D9EFB86B6FB616AF1609036A99E"
},
{
"begin": 12579,
"end": 12613,
"name": "DUP2"
},
{
"begin": 12623,
"end": 12650,
"name": "PUSH",
"value": "40"
},
{
"begin": 12623,
"end": 12650,
"name": "MLOAD"
},
{
"begin": 12623,
"end": 12650,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12623,
"end": 12650,
"name": "SWAP1"
},
{
"begin": 12623,
"end": 12650,
"name": "SWAP2"
},
{
"begin": 12623,
"end": 12650,
"name": "AND"
},
{
"begin": 12623,
"end": 12650,
"name": "DUP2"
},
{
"begin": 12623,
"end": 12650,
"name": "MSTORE"
},
{
"begin": 12623,
"end": 12650,
"name": "PUSH",
"value": "20"
},
{
"begin": 12623,
"end": 12650,
"name": "ADD"
},
{
"begin": 12623,
"end": 12650,
"name": "PUSH",
"value": "40"
},
{
"begin": 12623,
"end": 12650,
"name": "MLOAD"
},
{
"begin": 12623,
"end": 12650,
"name": "DUP1"
},
{
"begin": 12623,
"end": 12650,
"name": "SWAP2"
},
{
"begin": 12623,
"end": 12650,
"name": "SUB"
},
{
"begin": 12623,
"end": 12650,
"name": "SWAP1"
},
{
"begin": 12623,
"end": 12650,
"name": "LOG1"
},
{
"begin": 12480,
"end": 12657,
"name": "POP"
},
{
"begin": 12480,
"end": 12657,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 11752,
"end": 12048,
"name": "tag",
"value": "46"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMPDEST"
},
{
"begin": 11823,
"end": 11829,
"name": "PUSH",
"value": "40"
},
{
"begin": 3251,
"end": 3259,
"name": "PUSH",
"value": "44"
},
{
"begin": 3233,
"end": 3241,
"name": "CALLDATASIZE"
},
{
"begin": 3233,
"end": 3259,
"name": "LT"
},
{
"begin": 3231,
"end": 3260,
"name": "ISZERO"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH [tag]",
"value": "145"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPI"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH",
"value": "0"
},
{
"begin": 3223,
"end": 3261,
"name": "DUP1"
},
{
"begin": 3223,
"end": 3261,
"name": "REVERT"
},
{
"begin": 3223,
"end": 3261,
"name": "tag",
"value": "145"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPDEST"
},
{
"begin": 11845,
"end": 11855,
"name": "PUSH",
"value": "A"
},
{
"begin": 11845,
"end": 11855,
"name": "SLOAD"
},
{
"begin": 11845,
"end": 11855,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 11845,
"end": 11855,
"name": "SWAP1"
},
{
"begin": 11845,
"end": 11855,
"name": "DIV"
},
{
"begin": 11845,
"end": 11855,
"name": "PUSH",
"value": "FF"
},
{
"begin": 11845,
"end": 11855,
"name": "AND"
},
{
"begin": 11841,
"end": 12042,
"name": "ISZERO"
},
{
"begin": 11841,
"end": 12042,
"name": "PUSH [tag]",
"value": "147"
},
{
"begin": 11841,
"end": 12042,
"name": "JUMPI"
},
{
"begin": 11900,
"end": 11915,
"name": "PUSH",
"value": "A"
},
{
"begin": 11900,
"end": 11915,
"name": "SLOAD"
},
{
"begin": 11900,
"end": 11915,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11900,
"end": 11915,
"name": "AND"
},
{
"begin": 11878,
"end": 11932,
"name": "PUSH",
"value": "AEE92D33"
},
{
"begin": 11933,
"end": 11943,
"name": "CALLER"
},
{
"begin": 11945,
"end": 11953,
"name": "DUP6"
},
{
"begin": 11955,
"end": 11961,
"name": "DUP6"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "40"
},
{
"begin": 11878,
"end": 11962,
"name": "MLOAD"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP7"
},
{
"begin": 11878,
"end": 11962,
"name": "AND"
},
{
"begin": 11878,
"end": 11962,
"name": "MUL"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP2"
},
{
"begin": 11878,
"end": 11962,
"name": "MSTORE"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP4"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP5"
},
{
"begin": 11878,
"end": 11962,
"name": "AND"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "4"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP3"
},
{
"begin": 11878,
"end": 11962,
"name": "ADD"
},
{
"begin": 11878,
"end": 11962,
"name": "MSTORE"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP2"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP1"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP3"
},
{
"begin": 11878,
"end": 11962,
"name": "AND"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "24"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP3"
},
{
"begin": 11878,
"end": 11962,
"name": "ADD"
},
{
"begin": 11878,
"end": 11962,
"name": "MSTORE"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "44"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP2"
},
{
"begin": 11878,
"end": 11962,
"name": "ADD"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP2"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP1"
},
{
"begin": 11878,
"end": 11962,
"name": "SWAP2"
},
{
"begin": 11878,
"end": 11962,
"name": "MSTORE"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "64"
},
{
"begin": 11878,
"end": 11962,
"name": "ADD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "0"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "40"
},
{
"begin": 11878,
"end": 11962,
"name": "MLOAD"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP1"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP4"
},
{
"begin": 11878,
"end": 11962,
"name": "SUB"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP2"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "0"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP8"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP1"
},
{
"begin": 11878,
"end": 11962,
"name": "EXTCODESIZE"
},
{
"begin": 11878,
"end": 11962,
"name": "ISZERO"
},
{
"begin": 11878,
"end": 11962,
"name": "ISZERO"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH [tag]",
"value": "148"
},
{
"begin": 11878,
"end": 11962,
"name": "JUMPI"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "0"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP1"
},
{
"begin": 11878,
"end": 11962,
"name": "REVERT"
},
{
"begin": 11878,
"end": 11962,
"name": "tag",
"value": "148"
},
{
"begin": 11878,
"end": 11962,
"name": "JUMPDEST"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "2C6"
},
{
"begin": 11878,
"end": 11962,
"name": "GAS"
},
{
"begin": 11878,
"end": 11962,
"name": "SUB"
},
{
"begin": 11878,
"end": 11962,
"name": "CALL"
},
{
"begin": 11878,
"end": 11962,
"name": "ISZERO"
},
{
"begin": 11878,
"end": 11962,
"name": "ISZERO"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH [tag]",
"value": "149"
},
{
"begin": 11878,
"end": 11962,
"name": "JUMPI"
},
{
"begin": 11878,
"end": 11962,
"name": "PUSH",
"value": "0"
},
{
"begin": 11878,
"end": 11962,
"name": "DUP1"
},
{
"begin": 11878,
"end": 11962,
"name": "REVERT"
},
{
"begin": 11878,
"end": 11962,
"name": "tag",
"value": "149"
},
{
"begin": 11878,
"end": 11962,
"name": "JUMPDEST"
},
{
"begin": 11878,
"end": 11962,
"name": "POP"
},
{
"begin": 11878,
"end": 11962,
"name": "POP"
},
{
"begin": 11878,
"end": 11962,
"name": "POP"
},
{
"begin": 11871,
"end": 11962,
"name": "PUSH [tag]",
"value": "151"
},
{
"begin": 11871,
"end": 11962,
"name": "JUMP"
},
{
"begin": 11841,
"end": 12042,
"name": "tag",
"value": "147"
},
{
"begin": 11841,
"end": 12042,
"name": "JUMPDEST"
},
{
"begin": 12000,
"end": 12031,
"name": "PUSH [tag]",
"value": "151"
},
{
"begin": 12014,
"end": 12022,
"name": "DUP4"
},
{
"begin": 12024,
"end": 12030,
"name": "DUP4"
},
{
"begin": 12000,
"end": 12013,
"name": "PUSH [tag]",
"value": "152"
},
{
"begin": 12000,
"end": 12031,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 12000,
"end": 12031,
"name": "tag",
"value": "151"
},
{
"begin": 12000,
"end": 12031,
"name": "JUMPDEST"
},
{
"begin": 11752,
"end": 12048,
"name": "POP"
},
{
"begin": 11752,
"end": 12048,
"name": "POP"
},
{
"begin": 11752,
"end": 12048,
"name": "POP"
},
{
"begin": 11752,
"end": 12048,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 9906,
"end": 9928,
"name": "tag",
"value": "49"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMPDEST"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "A"
},
{
"begin": 9906,
"end": 9928,
"name": "SLOAD"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 9906,
"end": 9928,
"name": "SWAP1"
},
{
"begin": 9906,
"end": 9928,
"name": "DIV"
},
{
"begin": 9906,
"end": 9928,
"name": "PUSH",
"value": "FF"
},
{
"begin": 9906,
"end": 9928,
"name": "AND"
},
{
"begin": 9906,
"end": 9928,
"name": "DUP2"
},
{
"begin": 9906,
"end": 9928,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8505,
"end": 8647,
"name": "tag",
"value": "52"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "154"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "154"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 8574,
"end": 8598,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8574,
"end": 8598,
"name": "DUP2"
},
{
"begin": 8574,
"end": 8598,
"name": "AND"
},
{
"begin": 8574,
"end": 8598,
"name": "PUSH",
"value": "0"
},
{
"begin": 8574,
"end": 8598,
"name": "SWAP1"
},
{
"begin": 8574,
"end": 8598,
"name": "DUP2"
},
{
"begin": 8574,
"end": 8598,
"name": "MSTORE"
},
{
"begin": 8574,
"end": 8587,
"name": "PUSH",
"value": "6"
},
{
"begin": 8574,
"end": 8598,
"name": "PUSH",
"value": "20"
},
{
"begin": 8574,
"end": 8598,
"name": "MSTORE"
},
{
"begin": 8574,
"end": 8598,
"name": "PUSH",
"value": "40"
},
{
"begin": 8574,
"end": 8598,
"name": "SWAP1"
},
{
"begin": 8574,
"end": 8598,
"name": "DUP2"
},
{
"begin": 8574,
"end": 8598,
"name": "SWAP1"
},
{
"begin": 8574,
"end": 8598,
"name": "KECCAK256"
},
{
"begin": 8574,
"end": 8605,
"name": "DUP1"
},
{
"begin": 8574,
"end": 8605,
"name": "SLOAD"
},
{
"begin": 8574,
"end": 8605,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00"
},
{
"begin": 8574,
"end": 8605,
"name": "AND"
},
{
"begin": 8601,
"end": 8605,
"name": "PUSH",
"value": "1"
},
{
"begin": 8574,
"end": 8605,
"name": "OR"
},
{
"begin": 8574,
"end": 8605,
"name": "SWAP1"
},
{
"begin": 8574,
"end": 8605,
"name": "SSTORE"
},
{
"begin": 8615,
"end": 8640,
"name": "PUSH",
"value": "42E160154868087D6BFDC0CA23D96A1C1CFA32F1B72BA9BA27B69B98A0D819DC"
},
{
"begin": 8615,
"end": 8640,
"name": "SWAP1"
},
{
"begin": 8588,
"end": 8597,
"name": "DUP3"
},
{
"begin": 8588,
"end": 8597,
"name": "SWAP1"
},
{
"begin": 8615,
"end": 8640,
"name": "MLOAD"
},
{
"begin": 8615,
"end": 8640,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8615,
"end": 8640,
"name": "SWAP1"
},
{
"begin": 8615,
"end": 8640,
"name": "SWAP2"
},
{
"begin": 8615,
"end": 8640,
"name": "AND"
},
{
"begin": 8615,
"end": 8640,
"name": "DUP2"
},
{
"begin": 8615,
"end": 8640,
"name": "MSTORE"
},
{
"begin": 8615,
"end": 8640,
"name": "PUSH",
"value": "20"
},
{
"begin": 8615,
"end": 8640,
"name": "ADD"
},
{
"begin": 8615,
"end": 8640,
"name": "PUSH",
"value": "40"
},
{
"begin": 8615,
"end": 8640,
"name": "MLOAD"
},
{
"begin": 8615,
"end": 8640,
"name": "DUP1"
},
{
"begin": 8615,
"end": 8640,
"name": "SWAP2"
},
{
"begin": 8615,
"end": 8640,
"name": "SUB"
},
{
"begin": 8615,
"end": 8640,
"name": "SWAP1"
},
{
"begin": 8615,
"end": 8640,
"name": "LOG1"
},
{
"begin": 8505,
"end": 8647,
"name": "POP"
},
{
"begin": 8505,
"end": 8647,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 12720,
"end": 12932,
"name": "tag",
"value": "55"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMPDEST"
},
{
"begin": 12788,
"end": 12798,
"name": "PUSH",
"value": "A"
},
{
"begin": 12788,
"end": 12798,
"name": "SLOAD"
},
{
"begin": 12768,
"end": 12772,
"name": "PUSH",
"value": "0"
},
{
"begin": 12768,
"end": 12772,
"name": "SWAP1"
},
{
"begin": 12788,
"end": 12798,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 12788,
"end": 12798,
"name": "SWAP1"
},
{
"begin": 12788,
"end": 12798,
"name": "DIV"
},
{
"begin": 12788,
"end": 12798,
"name": "PUSH",
"value": "FF"
},
{
"begin": 12788,
"end": 12798,
"name": "AND"
},
{
"begin": 12784,
"end": 12926,
"name": "ISZERO"
},
{
"begin": 12784,
"end": 12926,
"name": "PUSH [tag]",
"value": "157"
},
{
"begin": 12784,
"end": 12926,
"name": "JUMPI"
},
{
"begin": 12835,
"end": 12850,
"name": "PUSH",
"value": "A"
},
{
"begin": 12835,
"end": 12850,
"name": "SLOAD"
},
{
"begin": 12835,
"end": 12850,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12835,
"end": 12850,
"name": "AND"
},
{
"begin": 12821,
"end": 12863,
"name": "PUSH",
"value": "18160DDD"
},
{
"begin": 12835,
"end": 12850,
"name": "PUSH",
"value": "0"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "40"
},
{
"begin": 12821,
"end": 12865,
"name": "MLOAD"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "20"
},
{
"begin": 12821,
"end": 12865,
"name": "ADD"
},
{
"begin": 12821,
"end": 12865,
"name": "MSTORE"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "40"
},
{
"begin": 12821,
"end": 12865,
"name": "MLOAD"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP2"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 12821,
"end": 12865,
"name": "AND"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 12821,
"end": 12865,
"name": "MUL"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP2"
},
{
"begin": 12821,
"end": 12865,
"name": "MSTORE"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "4"
},
{
"begin": 12821,
"end": 12865,
"name": "ADD"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "20"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "40"
},
{
"begin": 12821,
"end": 12865,
"name": "MLOAD"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP1"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP4"
},
{
"begin": 12821,
"end": 12865,
"name": "SUB"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP2"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "0"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP8"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP1"
},
{
"begin": 12821,
"end": 12865,
"name": "EXTCODESIZE"
},
{
"begin": 12821,
"end": 12865,
"name": "ISZERO"
},
{
"begin": 12821,
"end": 12865,
"name": "ISZERO"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH [tag]",
"value": "158"
},
{
"begin": 12821,
"end": 12865,
"name": "JUMPI"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "0"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP1"
},
{
"begin": 12821,
"end": 12865,
"name": "REVERT"
},
{
"begin": 12821,
"end": 12865,
"name": "tag",
"value": "158"
},
{
"begin": 12821,
"end": 12865,
"name": "JUMPDEST"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "2C6"
},
{
"begin": 12821,
"end": 12865,
"name": "GAS"
},
{
"begin": 12821,
"end": 12865,
"name": "SUB"
},
{
"begin": 12821,
"end": 12865,
"name": "CALL"
},
{
"begin": 12821,
"end": 12865,
"name": "ISZERO"
},
{
"begin": 12821,
"end": 12865,
"name": "ISZERO"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH [tag]",
"value": "159"
},
{
"begin": 12821,
"end": 12865,
"name": "JUMPI"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "0"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP1"
},
{
"begin": 12821,
"end": 12865,
"name": "REVERT"
},
{
"begin": 12821,
"end": 12865,
"name": "tag",
"value": "159"
},
{
"begin": 12821,
"end": 12865,
"name": "JUMPDEST"
},
{
"begin": 12821,
"end": 12865,
"name": "POP"
},
{
"begin": 12821,
"end": 12865,
"name": "POP"
},
{
"begin": 12821,
"end": 12865,
"name": "POP"
},
{
"begin": 12821,
"end": 12865,
"name": "PUSH",
"value": "40"
},
{
"begin": 12821,
"end": 12865,
"name": "MLOAD"
},
{
"begin": 12821,
"end": 12865,
"name": "DUP1"
},
{
"begin": 12821,
"end": 12865,
"name": "MLOAD"
},
{
"begin": 12821,
"end": 12865,
"name": "SWAP1"
},
{
"begin": 12821,
"end": 12865,
"name": "POP"
},
{
"begin": 12814,
"end": 12865,
"name": "SWAP1"
},
{
"begin": 12814,
"end": 12865,
"name": "POP"
},
{
"begin": 12814,
"end": 12865,
"name": "PUSH [tag]",
"value": "160"
},
{
"begin": 12814,
"end": 12865,
"name": "JUMP"
},
{
"begin": 12784,
"end": 12926,
"name": "tag",
"value": "157"
},
{
"begin": 12784,
"end": 12926,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 12903,
"end": 12915,
"name": "PUSH",
"value": "1"
},
{
"begin": 12903,
"end": 12915,
"name": "SLOAD"
},
{
"begin": 12784,
"end": 12926,
"name": "tag",
"value": "160"
},
{
"begin": 12784,
"end": 12926,
"name": "JUMPDEST"
},
{
"begin": 12720,
"end": 12932,
"name": "SWAP1"
},
{
"begin": 12720,
"end": 12932,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 10995,
"end": 11350,
"name": "tag",
"value": "58"
},
{
"begin": 10995,
"end": 11350,
"name": "JUMPDEST"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "0"
},
{
"begin": 7553,
"end": 7559,
"name": "SLOAD"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7553,
"end": 7559,
"name": "SWAP1"
},
{
"begin": 7553,
"end": 7559,
"name": "DIV"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7553,
"end": 7559,
"name": "AND"
},
{
"begin": 7552,
"end": 7559,
"name": "ISZERO"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH [tag]",
"value": "162"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPI"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH",
"value": "0"
},
{
"begin": 7544,
"end": 7560,
"name": "DUP1"
},
{
"begin": 7544,
"end": 7560,
"name": "REVERT"
},
{
"begin": 7544,
"end": 7560,
"name": "tag",
"value": "162"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPDEST"
},
{
"begin": 11098,
"end": 11118,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11098,
"end": 11118,
"name": "DUP4"
},
{
"begin": 11098,
"end": 11118,
"name": "AND"
},
{
"begin": 11098,
"end": 11118,
"name": "PUSH",
"value": "0"
},
{
"begin": 11098,
"end": 11118,
"name": "SWAP1"
},
{
"begin": 11098,
"end": 11118,
"name": "DUP2"
},
{
"begin": 11098,
"end": 11118,
"name": "MSTORE"
},
{
"begin": 11098,
"end": 11111,
"name": "PUSH",
"value": "6"
},
{
"begin": 11098,
"end": 11118,
"name": "PUSH",
"value": "20"
},
{
"begin": 11098,
"end": 11118,
"name": "MSTORE"
},
{
"begin": 11098,
"end": 11118,
"name": "PUSH",
"value": "40"
},
{
"begin": 11098,
"end": 11118,
"name": "SWAP1"
},
{
"begin": 11098,
"end": 11118,
"name": "KECCAK256"
},
{
"begin": 11098,
"end": 11118,
"name": "SLOAD"
},
{
"begin": 11098,
"end": 11118,
"name": "PUSH",
"value": "FF"
},
{
"begin": 11098,
"end": 11118,
"name": "AND"
},
{
"begin": 11097,
"end": 11118,
"name": "ISZERO"
},
{
"begin": 11089,
"end": 11119,
"name": "PUSH [tag]",
"value": "164"
},
{
"begin": 11089,
"end": 11119,
"name": "JUMPI"
},
{
"begin": 11089,
"end": 11119,
"name": "PUSH",
"value": "0"
},
{
"begin": 11089,
"end": 11119,
"name": "DUP1"
},
{
"begin": 11089,
"end": 11119,
"name": "REVERT"
},
{
"begin": 11089,
"end": 11119,
"name": "tag",
"value": "164"
},
{
"begin": 11089,
"end": 11119,
"name": "JUMPDEST"
},
{
"begin": 11133,
"end": 11143,
"name": "PUSH",
"value": "A"
},
{
"begin": 11133,
"end": 11143,
"name": "SLOAD"
},
{
"begin": 11133,
"end": 11143,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 11133,
"end": 11143,
"name": "SWAP1"
},
{
"begin": 11133,
"end": 11143,
"name": "DIV"
},
{
"begin": 11133,
"end": 11143,
"name": "PUSH",
"value": "FF"
},
{
"begin": 11133,
"end": 11143,
"name": "AND"
},
{
"begin": 11129,
"end": 11344,
"name": "ISZERO"
},
{
"begin": 11129,
"end": 11344,
"name": "PUSH [tag]",
"value": "165"
},
{
"begin": 11129,
"end": 11344,
"name": "JUMPI"
},
{
"begin": 11188,
"end": 11203,
"name": "PUSH",
"value": "A"
},
{
"begin": 11188,
"end": 11203,
"name": "SLOAD"
},
{
"begin": 11188,
"end": 11203,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11188,
"end": 11203,
"name": "AND"
},
{
"begin": 11166,
"end": 11225,
"name": "PUSH",
"value": "8B477ADB"
},
{
"begin": 11226,
"end": 11236,
"name": "CALLER"
},
{
"begin": 11238,
"end": 11243,
"name": "DUP6"
},
{
"begin": 11245,
"end": 11248,
"name": "DUP6"
},
{
"begin": 11250,
"end": 11256,
"name": "DUP6"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "40"
},
{
"begin": 11166,
"end": 11257,
"name": "MLOAD"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP8"
},
{
"begin": 11166,
"end": 11257,
"name": "AND"
},
{
"begin": 11166,
"end": 11257,
"name": "MUL"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP2"
},
{
"begin": 11166,
"end": 11257,
"name": "MSTORE"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP5"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP6"
},
{
"begin": 11166,
"end": 11257,
"name": "AND"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "4"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP3"
},
{
"begin": 11166,
"end": 11257,
"name": "ADD"
},
{
"begin": 11166,
"end": 11257,
"name": "MSTORE"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP3"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP5"
},
{
"begin": 11166,
"end": 11257,
"name": "AND"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "24"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP5"
},
{
"begin": 11166,
"end": 11257,
"name": "ADD"
},
{
"begin": 11166,
"end": 11257,
"name": "MSTORE"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP3"
},
{
"begin": 11166,
"end": 11257,
"name": "AND"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "44"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP3"
},
{
"begin": 11166,
"end": 11257,
"name": "ADD"
},
{
"begin": 11166,
"end": 11257,
"name": "MSTORE"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "64"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP2"
},
{
"begin": 11166,
"end": 11257,
"name": "ADD"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP2"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP1"
},
{
"begin": 11166,
"end": 11257,
"name": "SWAP2"
},
{
"begin": 11166,
"end": 11257,
"name": "MSTORE"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "84"
},
{
"begin": 11166,
"end": 11257,
"name": "ADD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "0"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "40"
},
{
"begin": 11166,
"end": 11257,
"name": "MLOAD"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP1"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP4"
},
{
"begin": 11166,
"end": 11257,
"name": "SUB"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP2"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "0"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP8"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP1"
},
{
"begin": 11166,
"end": 11257,
"name": "EXTCODESIZE"
},
{
"begin": 11166,
"end": 11257,
"name": "ISZERO"
},
{
"begin": 11166,
"end": 11257,
"name": "ISZERO"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH [tag]",
"value": "148"
},
{
"begin": 11166,
"end": 11257,
"name": "JUMPI"
},
{
"begin": 11166,
"end": 11257,
"name": "PUSH",
"value": "0"
},
{
"begin": 11166,
"end": 11257,
"name": "DUP1"
},
{
"begin": 11166,
"end": 11257,
"name": "REVERT"
},
{
"begin": 11129,
"end": 11344,
"name": "tag",
"value": "165"
},
{
"begin": 11129,
"end": 11344,
"name": "JUMPDEST"
},
{
"begin": 11295,
"end": 11333,
"name": "PUSH [tag]",
"value": "151"
},
{
"begin": 11314,
"end": 11319,
"name": "DUP4"
},
{
"begin": 11321,
"end": 11324,
"name": "DUP4"
},
{
"begin": 11326,
"end": 11332,
"name": "DUP4"
},
{
"begin": 11295,
"end": 11313,
"name": "PUSH [tag]",
"value": "170"
},
{
"begin": 11295,
"end": 11333,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 9870,
"end": 9900,
"name": "tag",
"value": "61"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMPDEST"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "A"
},
{
"begin": 9870,
"end": 9900,
"name": "SLOAD"
},
{
"begin": 9870,
"end": 9900,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 9870,
"end": 9900,
"name": "AND"
},
{
"begin": 9870,
"end": 9900,
"name": "DUP2"
},
{
"begin": 9870,
"end": 9900,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 2916,
"end": 2956,
"name": "tag",
"value": "64"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMPDEST"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "2"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "20"
},
{
"begin": 2916,
"end": 2956,
"name": "MSTORE"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "0"
},
{
"begin": 2916,
"end": 2956,
"name": "SWAP1"
},
{
"begin": 2916,
"end": 2956,
"name": "DUP2"
},
{
"begin": 2916,
"end": 2956,
"name": "MSTORE"
},
{
"begin": 2916,
"end": 2956,
"name": "PUSH",
"value": "40"
},
{
"begin": 2916,
"end": 2956,
"name": "SWAP1"
},
{
"begin": 2916,
"end": 2956,
"name": "KECCAK256"
},
{
"begin": 2916,
"end": 2956,
"name": "SLOAD"
},
{
"begin": 2916,
"end": 2956,
"name": "DUP2"
},
{
"begin": 2916,
"end": 2956,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 9844,
"end": 9864,
"name": "tag",
"value": "67"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMPDEST"
},
{
"begin": 9844,
"end": 9864,
"name": "PUSH",
"value": "9"
},
{
"begin": 9844,
"end": 9864,
"name": "SLOAD"
},
{
"begin": 9844,
"end": 9864,
"name": "DUP2"
},
{
"begin": 9844,
"end": 9864,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 3078,
"end": 3104,
"name": "tag",
"value": "70"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMPDEST"
},
{
"begin": 3078,
"end": 3104,
"name": "PUSH",
"value": "4"
},
{
"begin": 3078,
"end": 3104,
"name": "SLOAD"
},
{
"begin": 3078,
"end": 3104,
"name": "DUP2"
},
{
"begin": 3078,
"end": 3104,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 2043,
"end": 2067,
"name": "tag",
"value": "73"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMPDEST"
},
{
"begin": 2043,
"end": 2067,
"name": "PUSH",
"value": "1"
},
{
"begin": 2043,
"end": 2067,
"name": "SLOAD"
},
{
"begin": 2043,
"end": 2067,
"name": "DUP2"
},
{
"begin": 2043,
"end": 2067,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 7970,
"end": 8057,
"name": "tag",
"value": "76"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "172"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "172"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "0"
},
{
"begin": 7705,
"end": 7711,
"name": "SLOAD"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7705,
"end": 7711,
"name": "SWAP1"
},
{
"begin": 7705,
"end": 7711,
"name": "DIV"
},
{
"begin": 7705,
"end": 7711,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7705,
"end": 7711,
"name": "AND"
},
{
"begin": 7697,
"end": 7712,
"name": "ISZERO"
},
{
"begin": 7697,
"end": 7712,
"name": "ISZERO"
},
{
"begin": 7697,
"end": 7712,
"name": "PUSH [tag]",
"value": "174"
},
{
"begin": 7697,
"end": 7712,
"name": "JUMPI"
},
{
"begin": 7697,
"end": 7712,
"name": "PUSH",
"value": "0"
},
{
"begin": 7697,
"end": 7712,
"name": "DUP1"
},
{
"begin": 7697,
"end": 7712,
"name": "REVERT"
},
{
"begin": 7697,
"end": 7712,
"name": "tag",
"value": "174"
},
{
"begin": 7697,
"end": 7712,
"name": "JUMPDEST"
},
{
"begin": 8032,
"end": 8037,
"name": "PUSH",
"value": "0"
},
{
"begin": 8023,
"end": 8037,
"name": "DUP1"
},
{
"begin": 8023,
"end": 8037,
"name": "SLOAD"
},
{
"begin": 8023,
"end": 8037,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8023,
"end": 8037,
"name": "AND"
},
{
"begin": 8023,
"end": 8037,
"name": "SWAP1"
},
{
"begin": 8023,
"end": 8037,
"name": "SSTORE"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "7805862F689E2F13DF9F062FF482AD3AD112ACA9E0847911ED832E158C525B33"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "40"
},
{
"begin": 8043,
"end": 8052,
"name": "MLOAD"
},
{
"begin": 8043,
"end": 8052,
"name": "PUSH",
"value": "40"
},
{
"begin": 8043,
"end": 8052,
"name": "MLOAD"
},
{
"begin": 8043,
"end": 8052,
"name": "DUP1"
},
{
"begin": 8043,
"end": 8052,
"name": "SWAP2"
},
{
"begin": 8043,
"end": 8052,
"name": "SUB"
},
{
"begin": 8043,
"end": 8052,
"name": "SWAP1"
},
{
"begin": 8043,
"end": 8052,
"name": "LOG1"
},
{
"begin": 7970,
"end": 8057,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8229,
"end": 8351,
"name": "tag",
"value": "79"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMPDEST"
},
{
"begin": 8323,
"end": 8344,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8323,
"end": 8344,
"name": "DUP2"
},
{
"begin": 8323,
"end": 8344,
"name": "AND"
},
{
"begin": 8300,
"end": 8304,
"name": "PUSH",
"value": "0"
},
{
"begin": 8323,
"end": 8344,
"name": "SWAP1"
},
{
"begin": 8323,
"end": 8344,
"name": "DUP2"
},
{
"begin": 8323,
"end": 8344,
"name": "MSTORE"
},
{
"begin": 8323,
"end": 8336,
"name": "PUSH",
"value": "6"
},
{
"begin": 8323,
"end": 8344,
"name": "PUSH",
"value": "20"
},
{
"begin": 8323,
"end": 8344,
"name": "MSTORE"
},
{
"begin": 8323,
"end": 8344,
"name": "PUSH",
"value": "40"
},
{
"begin": 8323,
"end": 8344,
"name": "SWAP1"
},
{
"begin": 8323,
"end": 8344,
"name": "KECCAK256"
},
{
"begin": 8323,
"end": 8344,
"name": "SLOAD"
},
{
"begin": 8323,
"end": 8344,
"name": "PUSH",
"value": "FF"
},
{
"begin": 8323,
"end": 8344,
"name": "AND"
},
{
"begin": 8229,
"end": 8351,
"name": "tag",
"value": "176"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMPDEST"
},
{
"begin": 8229,
"end": 8351,
"name": "SWAP2"
},
{
"begin": 8229,
"end": 8351,
"name": "SWAP1"
},
{
"begin": 8229,
"end": 8351,
"name": "POP"
},
{
"begin": 8229,
"end": 8351,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 4652,
"end": 4713,
"name": "tag",
"value": "82"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMPDEST"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "5"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "20"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP1"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP2"
},
{
"begin": 4652,
"end": 4713,
"name": "MSTORE"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "0"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP3"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP4"
},
{
"begin": 4652,
"end": 4713,
"name": "MSTORE"
},
{
"begin": 4652,
"end": 4713,
"name": "PUSH",
"value": "40"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP1"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP5"
},
{
"begin": 4652,
"end": 4713,
"name": "KECCAK256"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP1"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP2"
},
{
"begin": 4652,
"end": 4713,
"name": "MSTORE"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP1"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP3"
},
{
"begin": 4652,
"end": 4713,
"name": "MSTORE"
},
{
"begin": 4652,
"end": 4713,
"name": "SWAP1"
},
{
"begin": 4652,
"end": 4713,
"name": "KECCAK256"
},
{
"begin": 4652,
"end": 4713,
"name": "SLOAD"
},
{
"begin": 4652,
"end": 4713,
"name": "DUP2"
},
{
"begin": 4652,
"end": 4713,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 7384,
"end": 7410,
"name": "tag",
"value": "85"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMPDEST"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "0"
},
{
"begin": 7384,
"end": 7410,
"name": "SLOAD"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7384,
"end": 7410,
"name": "SWAP1"
},
{
"begin": 7384,
"end": 7410,
"name": "DIV"
},
{
"begin": 7384,
"end": 7410,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7384,
"end": 7410,
"name": "AND"
},
{
"begin": 7384,
"end": 7410,
"name": "DUP2"
},
{
"begin": 7384,
"end": 7410,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 11432,
"end": 11670,
"name": "tag",
"value": "88"
},
{
"begin": 11432,
"end": 11670,
"name": "JUMPDEST"
},
{
"begin": 11509,
"end": 11519,
"name": "PUSH",
"value": "A"
},
{
"begin": 11509,
"end": 11519,
"name": "SLOAD"
},
{
"begin": 11489,
"end": 11493,
"name": "PUSH",
"value": "0"
},
{
"begin": 11489,
"end": 11493,
"name": "SWAP1"
},
{
"begin": 11509,
"end": 11519,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 11509,
"end": 11519,
"name": "SWAP1"
},
{
"begin": 11509,
"end": 11519,
"name": "DIV"
},
{
"begin": 11509,
"end": 11519,
"name": "PUSH",
"value": "FF"
},
{
"begin": 11509,
"end": 11519,
"name": "AND"
},
{
"begin": 11505,
"end": 11664,
"name": "ISZERO"
},
{
"begin": 11505,
"end": 11664,
"name": "PUSH [tag]",
"value": "178"
},
{
"begin": 11505,
"end": 11664,
"name": "JUMPI"
},
{
"begin": 11564,
"end": 11579,
"name": "PUSH",
"value": "A"
},
{
"begin": 11564,
"end": 11579,
"name": "SLOAD"
},
{
"begin": 11564,
"end": 11579,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11564,
"end": 11579,
"name": "AND"
},
{
"begin": 11542,
"end": 11590,
"name": "PUSH",
"value": "70A08231"
},
{
"begin": 11591,
"end": 11594,
"name": "DUP4"
},
{
"begin": 11564,
"end": 11579,
"name": "PUSH",
"value": "0"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "40"
},
{
"begin": 11542,
"end": 11595,
"name": "MLOAD"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "20"
},
{
"begin": 11542,
"end": 11595,
"name": "ADD"
},
{
"begin": 11542,
"end": 11595,
"name": "MSTORE"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "40"
},
{
"begin": 11542,
"end": 11595,
"name": "MLOAD"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP5"
},
{
"begin": 11542,
"end": 11595,
"name": "AND"
},
{
"begin": 11542,
"end": 11595,
"name": "MUL"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP2"
},
{
"begin": 11542,
"end": 11595,
"name": "MSTORE"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 11542,
"end": 11595,
"name": "SWAP1"
},
{
"begin": 11542,
"end": 11595,
"name": "SWAP2"
},
{
"begin": 11542,
"end": 11595,
"name": "AND"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "4"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP3"
},
{
"begin": 11542,
"end": 11595,
"name": "ADD"
},
{
"begin": 11542,
"end": 11595,
"name": "MSTORE"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "24"
},
{
"begin": 11542,
"end": 11595,
"name": "ADD"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "20"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "40"
},
{
"begin": 11542,
"end": 11595,
"name": "MLOAD"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP1"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP4"
},
{
"begin": 11542,
"end": 11595,
"name": "SUB"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP2"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "0"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP8"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP1"
},
{
"begin": 11542,
"end": 11595,
"name": "EXTCODESIZE"
},
{
"begin": 11542,
"end": 11595,
"name": "ISZERO"
},
{
"begin": 11542,
"end": 11595,
"name": "ISZERO"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH [tag]",
"value": "179"
},
{
"begin": 11542,
"end": 11595,
"name": "JUMPI"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "0"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP1"
},
{
"begin": 11542,
"end": 11595,
"name": "REVERT"
},
{
"begin": 11542,
"end": 11595,
"name": "tag",
"value": "179"
},
{
"begin": 11542,
"end": 11595,
"name": "JUMPDEST"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "2C6"
},
{
"begin": 11542,
"end": 11595,
"name": "GAS"
},
{
"begin": 11542,
"end": 11595,
"name": "SUB"
},
{
"begin": 11542,
"end": 11595,
"name": "CALL"
},
{
"begin": 11542,
"end": 11595,
"name": "ISZERO"
},
{
"begin": 11542,
"end": 11595,
"name": "ISZERO"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH [tag]",
"value": "180"
},
{
"begin": 11542,
"end": 11595,
"name": "JUMPI"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "0"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP1"
},
{
"begin": 11542,
"end": 11595,
"name": "REVERT"
},
{
"begin": 11542,
"end": 11595,
"name": "tag",
"value": "180"
},
{
"begin": 11542,
"end": 11595,
"name": "JUMPDEST"
},
{
"begin": 11542,
"end": 11595,
"name": "POP"
},
{
"begin": 11542,
"end": 11595,
"name": "POP"
},
{
"begin": 11542,
"end": 11595,
"name": "POP"
},
{
"begin": 11542,
"end": 11595,
"name": "PUSH",
"value": "40"
},
{
"begin": 11542,
"end": 11595,
"name": "MLOAD"
},
{
"begin": 11542,
"end": 11595,
"name": "DUP1"
},
{
"begin": 11542,
"end": 11595,
"name": "MLOAD"
},
{
"begin": 11542,
"end": 11595,
"name": "SWAP1"
},
{
"begin": 11542,
"end": 11595,
"name": "POP"
},
{
"begin": 11535,
"end": 11595,
"name": "SWAP1"
},
{
"begin": 11535,
"end": 11595,
"name": "POP"
},
{
"begin": 11535,
"end": 11595,
"name": "PUSH [tag]",
"value": "176"
},
{
"begin": 11535,
"end": 11595,
"name": "JUMP"
},
{
"begin": 11505,
"end": 11664,
"name": "tag",
"value": "178"
},
{
"begin": 11505,
"end": 11664,
"name": "JUMPDEST"
},
{
"begin": 11633,
"end": 11653,
"name": "PUSH [tag]",
"value": "182"
},
{
"begin": 11649,
"end": 11652,
"name": "DUP3"
},
{
"begin": 11633,
"end": 11648,
"name": "PUSH [tag]",
"value": "183"
},
{
"begin": 11633,
"end": 11653,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 11633,
"end": 11653,
"name": "tag",
"value": "182"
},
{
"begin": 11633,
"end": 11653,
"name": "JUMPDEST"
},
{
"begin": 11626,
"end": 11653,
"name": "SWAP1"
},
{
"begin": 11626,
"end": 11653,
"name": "POP"
},
{
"begin": 11626,
"end": 11653,
"name": "PUSH [tag]",
"value": "176"
},
{
"begin": 11626,
"end": 11653,
"name": "JUMP"
},
{
"begin": 7803,
"end": 7888,
"name": "tag",
"value": "91"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "185"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "185"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "0"
},
{
"begin": 7553,
"end": 7559,
"name": "SLOAD"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7553,
"end": 7559,
"name": "SWAP1"
},
{
"begin": 7553,
"end": 7559,
"name": "DIV"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7553,
"end": 7559,
"name": "AND"
},
{
"begin": 7552,
"end": 7559,
"name": "ISZERO"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH [tag]",
"value": "187"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPI"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH",
"value": "0"
},
{
"begin": 7544,
"end": 7560,
"name": "DUP1"
},
{
"begin": 7544,
"end": 7560,
"name": "REVERT"
},
{
"begin": 7544,
"end": 7560,
"name": "tag",
"value": "187"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPDEST"
},
{
"begin": 7857,
"end": 7863,
"name": "PUSH",
"value": "0"
},
{
"begin": 7857,
"end": 7870,
"name": "DUP1"
},
{
"begin": 7857,
"end": 7870,
"name": "SLOAD"
},
{
"begin": 7857,
"end": 7870,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 7857,
"end": 7870,
"name": "AND"
},
{
"begin": 7857,
"end": 7870,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7857,
"end": 7870,
"name": "OR"
},
{
"begin": 7857,
"end": 7870,
"name": "SWAP1"
},
{
"begin": 7857,
"end": 7870,
"name": "SSTORE"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "6985A02210A168E66602D3235CB6DB0E70F92B3BA4D376A33C0F3D9434BFF625"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "40"
},
{
"begin": 7876,
"end": 7883,
"name": "MLOAD"
},
{
"begin": 7876,
"end": 7883,
"name": "PUSH",
"value": "40"
},
{
"begin": 7876,
"end": 7883,
"name": "MLOAD"
},
{
"begin": 7876,
"end": 7883,
"name": "DUP1"
},
{
"begin": 7876,
"end": 7883,
"name": "SWAP2"
},
{
"begin": 7876,
"end": 7883,
"name": "SUB"
},
{
"begin": 7876,
"end": 7883,
"name": "SWAP1"
},
{
"begin": 7876,
"end": 7883,
"name": "LOG1"
},
{
"begin": 7803,
"end": 7888,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8357,
"end": 8442,
"name": "tag",
"value": "94"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMPDEST"
},
{
"begin": 8404,
"end": 8411,
"name": "PUSH",
"value": "0"
},
{
"begin": 8430,
"end": 8435,
"name": "SLOAD"
},
{
"begin": 8430,
"end": 8435,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8430,
"end": 8435,
"name": "AND"
},
{
"begin": 8357,
"end": 8442,
"name": "SWAP1"
},
{
"begin": 8357,
"end": 8442,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 1188,
"end": 1208,
"name": "tag",
"value": "97"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMPDEST"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "0"
},
{
"begin": 1188,
"end": 1208,
"name": "SLOAD"
},
{
"begin": 1188,
"end": 1208,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1188,
"end": 1208,
"name": "AND"
},
{
"begin": 1188,
"end": 1208,
"name": "DUP2"
},
{
"begin": 1188,
"end": 1208,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 9818,
"end": 9838,
"name": "tag",
"value": "100"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPDEST"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "8"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "SLOAD"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP2"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1"
},
{
"begin": 9818,
"end": 9838,
"name": "AND"
},
{
"begin": 9818,
"end": 9838,
"name": "ISZERO"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "100"
},
{
"begin": 9818,
"end": 9838,
"name": "MUL"
},
{
"begin": 9818,
"end": 9838,
"name": "SUB"
},
{
"begin": 9818,
"end": 9838,
"name": "AND"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "2"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP1"
},
{
"begin": 9818,
"end": 9838,
"name": "DIV"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9818,
"end": 9838,
"name": "ADD"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "20"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP2"
},
{
"begin": 9818,
"end": 9838,
"name": "DIV"
},
{
"begin": 9818,
"end": 9838,
"name": "MUL"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "20"
},
{
"begin": 9818,
"end": 9838,
"name": "ADD"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "40"
},
{
"begin": 9818,
"end": 9838,
"name": "MLOAD"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP1"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP2"
},
{
"begin": 9818,
"end": 9838,
"name": "ADD"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "40"
},
{
"begin": 9818,
"end": 9838,
"name": "MSTORE"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP3"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP2"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP1"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP2"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP2"
},
{
"begin": 9818,
"end": 9838,
"name": "MSTORE"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "20"
},
{
"begin": 9818,
"end": 9838,
"name": "ADD"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP3"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "SLOAD"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP2"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1"
},
{
"begin": 9818,
"end": 9838,
"name": "AND"
},
{
"begin": 9818,
"end": 9838,
"name": "ISZERO"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "100"
},
{
"begin": 9818,
"end": 9838,
"name": "MUL"
},
{
"begin": 9818,
"end": 9838,
"name": "SUB"
},
{
"begin": 9818,
"end": 9838,
"name": "AND"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "2"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP1"
},
{
"begin": 9818,
"end": 9838,
"name": "DIV"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "ISZERO"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "138"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPI"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "1F"
},
{
"begin": 9818,
"end": 9838,
"name": "LT"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "139"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMPI"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "100"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP1"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP4"
},
{
"begin": 9818,
"end": 9838,
"name": "SLOAD"
},
{
"begin": 9818,
"end": 9838,
"name": "DIV"
},
{
"begin": 9818,
"end": 9838,
"name": "MUL"
},
{
"begin": 9818,
"end": 9838,
"name": "DUP4"
},
{
"begin": 9818,
"end": 9838,
"name": "MSTORE"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP2"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH",
"value": "20"
},
{
"begin": 9818,
"end": 9838,
"name": "ADD"
},
{
"begin": 9818,
"end": 9838,
"name": "SWAP2"
},
{
"begin": 9818,
"end": 9838,
"name": "PUSH [tag]",
"value": "138"
},
{
"begin": 9818,
"end": 9838,
"name": "JUMP"
},
{
"begin": 10594,
"end": 10913,
"name": "tag",
"value": "107"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMPDEST"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "0"
},
{
"begin": 7553,
"end": 7559,
"name": "SLOAD"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 7553,
"end": 7559,
"name": "SWAP1"
},
{
"begin": 7553,
"end": 7559,
"name": "DIV"
},
{
"begin": 7553,
"end": 7559,
"name": "PUSH",
"value": "FF"
},
{
"begin": 7553,
"end": 7559,
"name": "AND"
},
{
"begin": 7552,
"end": 7559,
"name": "ISZERO"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH [tag]",
"value": "194"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPI"
},
{
"begin": 7544,
"end": 7560,
"name": "PUSH",
"value": "0"
},
{
"begin": 7544,
"end": 7560,
"name": "DUP1"
},
{
"begin": 7544,
"end": 7560,
"name": "REVERT"
},
{
"begin": 7544,
"end": 7560,
"name": "tag",
"value": "194"
},
{
"begin": 7544,
"end": 7560,
"name": "JUMPDEST"
},
{
"begin": 10678,
"end": 10703,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 10692,
"end": 10702,
"name": "CALLER"
},
{
"begin": 10678,
"end": 10703,
"name": "AND"
},
{
"begin": 10678,
"end": 10703,
"name": "PUSH",
"value": "0"
},
{
"begin": 10678,
"end": 10703,
"name": "SWAP1"
},
{
"begin": 10678,
"end": 10703,
"name": "DUP2"
},
{
"begin": 10678,
"end": 10703,
"name": "MSTORE"
},
{
"begin": 10678,
"end": 10691,
"name": "PUSH",
"value": "6"
},
{
"begin": 10678,
"end": 10703,
"name": "PUSH",
"value": "20"
},
{
"begin": 10678,
"end": 10703,
"name": "MSTORE"
},
{
"begin": 10678,
"end": 10703,
"name": "PUSH",
"value": "40"
},
{
"begin": 10678,
"end": 10703,
"name": "SWAP1"
},
{
"begin": 10678,
"end": 10703,
"name": "KECCAK256"
},
{
"begin": 10678,
"end": 10703,
"name": "SLOAD"
},
{
"begin": 10678,
"end": 10703,
"name": "PUSH",
"value": "FF"
},
{
"begin": 10678,
"end": 10703,
"name": "AND"
},
{
"begin": 10677,
"end": 10703,
"name": "ISZERO"
},
{
"begin": 10669,
"end": 10704,
"name": "PUSH [tag]",
"value": "196"
},
{
"begin": 10669,
"end": 10704,
"name": "JUMPI"
},
{
"begin": 10669,
"end": 10704,
"name": "PUSH",
"value": "0"
},
{
"begin": 10669,
"end": 10704,
"name": "DUP1"
},
{
"begin": 10669,
"end": 10704,
"name": "REVERT"
},
{
"begin": 10669,
"end": 10704,
"name": "tag",
"value": "196"
},
{
"begin": 10669,
"end": 10704,
"name": "JUMPDEST"
},
{
"begin": 10718,
"end": 10728,
"name": "PUSH",
"value": "A"
},
{
"begin": 10718,
"end": 10728,
"name": "SLOAD"
},
{
"begin": 10718,
"end": 10728,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 10718,
"end": 10728,
"name": "SWAP1"
},
{
"begin": 10718,
"end": 10728,
"name": "DIV"
},
{
"begin": 10718,
"end": 10728,
"name": "PUSH",
"value": "FF"
},
{
"begin": 10718,
"end": 10728,
"name": "AND"
},
{
"begin": 10714,
"end": 10907,
"name": "ISZERO"
},
{
"begin": 10714,
"end": 10907,
"name": "PUSH [tag]",
"value": "197"
},
{
"begin": 10714,
"end": 10907,
"name": "JUMPI"
},
{
"begin": 10773,
"end": 10788,
"name": "PUSH",
"value": "A"
},
{
"begin": 10773,
"end": 10788,
"name": "SLOAD"
},
{
"begin": 10773,
"end": 10788,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 10773,
"end": 10788,
"name": "AND"
},
{
"begin": 10751,
"end": 10806,
"name": "PUSH",
"value": "6E18980A"
},
{
"begin": 10807,
"end": 10817,
"name": "CALLER"
},
{
"begin": 10819,
"end": 10822,
"name": "DUP5"
},
{
"begin": 10824,
"end": 10830,
"name": "DUP5"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "40"
},
{
"begin": 10751,
"end": 10831,
"name": "MLOAD"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP7"
},
{
"begin": 10751,
"end": 10831,
"name": "AND"
},
{
"begin": 10751,
"end": 10831,
"name": "MUL"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP2"
},
{
"begin": 10751,
"end": 10831,
"name": "MSTORE"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP4"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP5"
},
{
"begin": 10751,
"end": 10831,
"name": "AND"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "4"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP3"
},
{
"begin": 10751,
"end": 10831,
"name": "ADD"
},
{
"begin": 10751,
"end": 10831,
"name": "MSTORE"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP2"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP1"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP3"
},
{
"begin": 10751,
"end": 10831,
"name": "AND"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "24"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP3"
},
{
"begin": 10751,
"end": 10831,
"name": "ADD"
},
{
"begin": 10751,
"end": 10831,
"name": "MSTORE"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "44"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP2"
},
{
"begin": 10751,
"end": 10831,
"name": "ADD"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP2"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP1"
},
{
"begin": 10751,
"end": 10831,
"name": "SWAP2"
},
{
"begin": 10751,
"end": 10831,
"name": "MSTORE"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "64"
},
{
"begin": 10751,
"end": 10831,
"name": "ADD"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"value": "0"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "40"
},
{
"begin": 10751,
"end": 10831,
"name": "MLOAD"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP1"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP4"
},
{
"begin": 10751,
"end": 10831,
"name": "SUB"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP2"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "0"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP8"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP1"
},
{
"begin": 10751,
"end": 10831,
"name": "EXTCODESIZE"
},
{
"begin": 10751,
"end": 10831,
"name": "ISZERO"
},
{
"begin": 10751,
"end": 10831,
"name": "ISZERO"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH [tag]",
"value": "198"
},
{
"begin": 10751,
"end": 10831,
"name": "JUMPI"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "0"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP1"
},
{
"begin": 10751,
"end": 10831,
"name": "REVERT"
},
{
"begin": 10751,
"end": 10831,
"name": "tag",
"value": "198"
},
{
"begin": 10751,
"end": 10831,
"name": "JUMPDEST"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "2C6"
},
{
"begin": 10751,
"end": 10831,
"name": "GAS"
},
{
"begin": 10751,
"end": 10831,
"name": "SUB"
},
{
"begin": 10751,
"end": 10831,
"name": "CALL"
},
{
"begin": 10751,
"end": 10831,
"name": "ISZERO"
},
{
"begin": 10751,
"end": 10831,
"name": "ISZERO"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH [tag]",
"value": "199"
},
{
"begin": 10751,
"end": 10831,
"name": "JUMPI"
},
{
"begin": 10751,
"end": 10831,
"name": "PUSH",
"value": "0"
},
{
"begin": 10751,
"end": 10831,
"name": "DUP1"
},
{
"begin": 10751,
"end": 10831,
"name": "REVERT"
},
{
"begin": 10751,
"end": 10831,
"name": "tag",
"value": "199"
},
{
"begin": 10751,
"end": 10831,
"name": "JUMPDEST"
},
{
"begin": 10751,
"end": 10831,
"name": "POP"
},
{
"begin": 10751,
"end": 10831,
"name": "POP"
},
{
"begin": 10751,
"end": 10831,
"name": "POP"
},
{
"begin": 10744,
"end": 10831,
"name": "PUSH [tag]",
"value": "201"
},
{
"begin": 10744,
"end": 10831,
"name": "JUMP"
},
{
"begin": 10714,
"end": 10907,
"name": "tag",
"value": "197"
},
{
"begin": 10714,
"end": 10907,
"name": "JUMPDEST"
},
{
"begin": 10869,
"end": 10896,
"name": "PUSH [tag]",
"value": "201"
},
{
"begin": 10884,
"end": 10887,
"name": "DUP3"
},
{
"begin": 10889,
"end": 10895,
"name": "DUP3"
},
{
"begin": 10869,
"end": 10883,
"name": "PUSH [tag]",
"value": "202"
},
{
"begin": 10869,
"end": 10896,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 10869,
"end": 10896,
"name": "tag",
"value": "201"
},
{
"begin": 10869,
"end": 10896,
"name": "JUMPDEST"
},
{
"begin": 10594,
"end": 10913,
"name": "POP"
},
{
"begin": 10594,
"end": 10913,
"name": "POP"
},
{
"begin": 10594,
"end": 10913,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 13809,
"end": 14187,
"name": "tag",
"value": "110"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "204"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "204"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 14005,
"end": 14007,
"name": "PUSH",
"value": "14"
},
{
"begin": 13988,
"end": 14007,
"name": "DUP3"
},
{
"begin": 13988,
"end": 14007,
"name": "LT"
},
{
"begin": 13980,
"end": 14008,
"name": "PUSH [tag]",
"value": "206"
},
{
"begin": 13980,
"end": 14008,
"name": "JUMPI"
},
{
"begin": 13980,
"end": 14008,
"name": "PUSH",
"value": "0"
},
{
"begin": 13980,
"end": 14008,
"name": "DUP1"
},
{
"begin": 13980,
"end": 14008,
"name": "REVERT"
},
{
"begin": 13980,
"end": 14008,
"name": "tag",
"value": "206"
},
{
"begin": 13980,
"end": 14008,
"name": "JUMPDEST"
},
{
"begin": 14038,
"end": 14040,
"name": "PUSH",
"value": "32"
},
{
"begin": 14026,
"end": 14040,
"name": "DUP2"
},
{
"begin": 14026,
"end": 14040,
"name": "LT"
},
{
"begin": 14018,
"end": 14041,
"name": "PUSH [tag]",
"value": "207"
},
{
"begin": 14018,
"end": 14041,
"name": "JUMPI"
},
{
"begin": 14018,
"end": 14041,
"name": "PUSH",
"value": "0"
},
{
"begin": 14018,
"end": 14041,
"name": "DUP1"
},
{
"begin": 14018,
"end": 14041,
"name": "REVERT"
},
{
"begin": 14018,
"end": 14041,
"name": "tag",
"value": "207"
},
{
"begin": 14018,
"end": 14041,
"name": "JUMPDEST"
},
{
"begin": 14052,
"end": 14067,
"name": "PUSH",
"value": "3"
},
{
"begin": 14052,
"end": 14084,
"name": "DUP3"
},
{
"begin": 14052,
"end": 14084,
"name": "SWAP1"
},
{
"begin": 14052,
"end": 14084,
"name": "SSTORE"
},
{
"begin": 14125,
"end": 14133,
"name": "PUSH",
"value": "9"
},
{
"begin": 14125,
"end": 14133,
"name": "SLOAD"
},
{
"begin": 14107,
"end": 14134,
"name": "PUSH [tag]",
"value": "208"
},
{
"begin": 14107,
"end": 14134,
"name": "SWAP1"
},
{
"begin": 14107,
"end": 14116,
"name": "DUP3"
},
{
"begin": 14107,
"end": 14116,
"name": "SWAP1"
},
{
"begin": 14121,
"end": 14123,
"name": "PUSH",
"value": "A"
},
{
"begin": 14121,
"end": 14133,
"name": "EXP"
},
{
"begin": 14107,
"end": 14134,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 14107,
"end": 14120,
"name": "PUSH [tag]",
"value": "209"
},
{
"begin": 14107,
"end": 14134,
"name": "AND"
},
{
"begin": 14107,
"end": 14134,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 14107,
"end": 14134,
"name": "tag",
"value": "208"
},
{
"begin": 14107,
"end": 14134,
"name": "JUMPDEST"
},
{
"begin": 14094,
"end": 14104,
"name": "PUSH",
"value": "4"
},
{
"begin": 14094,
"end": 14134,
"name": "DUP2"
},
{
"begin": 14094,
"end": 14134,
"name": "SWAP1"
},
{
"begin": 14094,
"end": 14134,
"name": "SSTORE"
},
{
"begin": 14152,
"end": 14167,
"name": "PUSH",
"value": "3"
},
{
"begin": 14152,
"end": 14167,
"name": "SLOAD"
},
{
"begin": 14145,
"end": 14180,
"name": "PUSH",
"value": "B044A1E409EAC5C48E5AF22D4AF52670DD1A99059537A78B31B48C6500A6354E"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP2"
},
{
"begin": 14145,
"end": 14180,
"name": "PUSH",
"value": "40"
},
{
"begin": 14145,
"end": 14180,
"name": "MLOAD"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP2"
},
{
"begin": 14145,
"end": 14180,
"name": "DUP3"
},
{
"begin": 14145,
"end": 14180,
"name": "MSTORE"
},
{
"begin": 14145,
"end": 14180,
"name": "PUSH",
"value": "20"
},
{
"begin": 14145,
"end": 14180,
"name": "DUP3"
},
{
"begin": 14145,
"end": 14180,
"name": "ADD"
},
{
"begin": 14145,
"end": 14180,
"name": "MSTORE"
},
{
"begin": 14145,
"end": 14180,
"name": "PUSH",
"value": "40"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP1"
},
{
"begin": 14145,
"end": 14180,
"name": "DUP2"
},
{
"begin": 14145,
"end": 14180,
"name": "ADD"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP1"
},
{
"begin": 14145,
"end": 14180,
"name": "MLOAD"
},
{
"begin": 14145,
"end": 14180,
"name": "DUP1"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP2"
},
{
"begin": 14145,
"end": 14180,
"name": "SUB"
},
{
"begin": 14145,
"end": 14180,
"name": "SWAP1"
},
{
"begin": 14145,
"end": 14180,
"name": "LOG1"
},
{
"begin": 13809,
"end": 14187,
"name": "POP"
},
{
"begin": 13809,
"end": 14187,
"name": "POP"
},
{
"begin": 13809,
"end": 14187,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 13090,
"end": 13349,
"name": "tag",
"value": "113"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "211"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "211"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 13177,
"end": 13189,
"name": "PUSH",
"value": "1"
},
{
"begin": 13177,
"end": 13189,
"name": "SLOAD"
},
{
"begin": 13153,
"end": 13174,
"name": "DUP2"
},
{
"begin": 13153,
"end": 13174,
"name": "DUP2"
},
{
"begin": 13153,
"end": 13174,
"name": "ADD"
},
{
"begin": 13153,
"end": 13189,
"name": "GT"
},
{
"begin": 13145,
"end": 13190,
"name": "PUSH [tag]",
"value": "213"
},
{
"begin": 13145,
"end": 13190,
"name": "JUMPI"
},
{
"begin": 13145,
"end": 13190,
"name": "PUSH",
"value": "0"
},
{
"begin": 13145,
"end": 13190,
"name": "DUP1"
},
{
"begin": 13145,
"end": 13190,
"name": "REVERT"
},
{
"begin": 13145,
"end": 13190,
"name": "tag",
"value": "213"
},
{
"begin": 13145,
"end": 13190,
"name": "JUMPDEST"
},
{
"begin": 13235,
"end": 13250,
"name": "PUSH",
"value": "0"
},
{
"begin": 13244,
"end": 13249,
"name": "DUP1"
},
{
"begin": 13244,
"end": 13249,
"name": "SLOAD"
},
{
"begin": 13244,
"end": 13249,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 13244,
"end": 13249,
"name": "AND"
},
{
"begin": 13235,
"end": 13250,
"name": "DUP2"
},
{
"begin": 13235,
"end": 13250,
"name": "MSTORE"
},
{
"begin": 13235,
"end": 13243,
"name": "PUSH",
"value": "2"
},
{
"begin": 13235,
"end": 13250,
"name": "PUSH",
"value": "20"
},
{
"begin": 13235,
"end": 13250,
"name": "MSTORE"
},
{
"begin": 13235,
"end": 13250,
"name": "PUSH",
"value": "40"
},
{
"begin": 13235,
"end": 13250,
"name": "SWAP1"
},
{
"begin": 13235,
"end": 13250,
"name": "KECCAK256"
},
{
"begin": 13235,
"end": 13250,
"name": "SLOAD"
},
{
"begin": 13208,
"end": 13232,
"name": "DUP2"
},
{
"begin": 13208,
"end": 13232,
"name": "DUP2"
},
{
"begin": 13208,
"end": 13232,
"name": "ADD"
},
{
"begin": 13208,
"end": 13250,
"name": "GT"
},
{
"begin": 13200,
"end": 13251,
"name": "PUSH [tag]",
"value": "214"
},
{
"begin": 13200,
"end": 13251,
"name": "JUMPI"
},
{
"begin": 13200,
"end": 13251,
"name": "PUSH",
"value": "0"
},
{
"begin": 13200,
"end": 13251,
"name": "DUP1"
},
{
"begin": 13200,
"end": 13251,
"name": "REVERT"
},
{
"begin": 13200,
"end": 13251,
"name": "tag",
"value": "214"
},
{
"begin": 13200,
"end": 13251,
"name": "JUMPDEST"
},
{
"begin": 13262,
"end": 13277,
"name": "PUSH",
"value": "0"
},
{
"begin": 13271,
"end": 13276,
"name": "DUP1"
},
{
"begin": 13271,
"end": 13276,
"name": "SLOAD"
},
{
"begin": 13271,
"end": 13276,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 13271,
"end": 13276,
"name": "AND"
},
{
"begin": 13262,
"end": 13277,
"name": "DUP2"
},
{
"begin": 13262,
"end": 13277,
"name": "MSTORE"
},
{
"begin": 13262,
"end": 13270,
"name": "PUSH",
"value": "2"
},
{
"begin": 13262,
"end": 13277,
"name": "PUSH",
"value": "20"
},
{
"begin": 13262,
"end": 13277,
"name": "MSTORE"
},
{
"begin": 13262,
"end": 13277,
"name": "PUSH",
"value": "40"
},
{
"begin": 13262,
"end": 13277,
"name": "SWAP1"
},
{
"begin": 13262,
"end": 13277,
"name": "DUP2"
},
{
"begin": 13262,
"end": 13277,
"name": "SWAP1"
},
{
"begin": 13262,
"end": 13277,
"name": "KECCAK256"
},
{
"begin": 13262,
"end": 13287,
"name": "DUP1"
},
{
"begin": 13262,
"end": 13287,
"name": "SLOAD"
},
{
"begin": 13262,
"end": 13287,
"name": "DUP4"
},
{
"begin": 13262,
"end": 13287,
"name": "ADD"
},
{
"begin": 13262,
"end": 13287,
"name": "SWAP1"
},
{
"begin": 13262,
"end": 13287,
"name": "SSTORE"
},
{
"begin": 13271,
"end": 13276,
"name": "PUSH",
"value": "1"
},
{
"begin": 13297,
"end": 13319,
"name": "DUP1"
},
{
"begin": 13297,
"end": 13319,
"name": "SLOAD"
},
{
"begin": 13297,
"end": 13319,
"name": "DUP4"
},
{
"begin": 13297,
"end": 13319,
"name": "ADD"
},
{
"begin": 13297,
"end": 13319,
"name": "SWAP1"
},
{
"begin": 13297,
"end": 13319,
"name": "SSTORE"
},
{
"begin": 13329,
"end": 13342,
"name": "PUSH",
"value": "CB8241ADB0C3FDB35B70C24CE35C5EB0C17AF7431C99F827D44A445CA624176A"
},
{
"begin": 13329,
"end": 13342,
"name": "SWAP1"
},
{
"begin": 13281,
"end": 13287,
"name": "DUP3"
},
{
"begin": 13281,
"end": 13287,
"name": "SWAP1"
},
{
"begin": 13329,
"end": 13342,
"name": "MLOAD"
},
{
"begin": 13329,
"end": 13342,
"name": "SWAP1"
},
{
"begin": 13329,
"end": 13342,
"name": "DUP2"
},
{
"begin": 13329,
"end": 13342,
"name": "MSTORE"
},
{
"begin": 13329,
"end": 13342,
"name": "PUSH",
"value": "20"
},
{
"begin": 13329,
"end": 13342,
"name": "ADD"
},
{
"begin": 13329,
"end": 13342,
"name": "PUSH",
"value": "40"
},
{
"begin": 13329,
"end": 13342,
"name": "MLOAD"
},
{
"begin": 13329,
"end": 13342,
"name": "DUP1"
},
{
"begin": 13329,
"end": 13342,
"name": "SWAP2"
},
{
"begin": 13329,
"end": 13342,
"name": "SUB"
},
{
"begin": 13329,
"end": 13342,
"name": "SWAP1"
},
{
"begin": 13329,
"end": 13342,
"name": "LOG1"
},
{
"begin": 13090,
"end": 13349,
"name": "POP"
},
{
"begin": 13090,
"end": 13349,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 13573,
"end": 13803,
"name": "tag",
"value": "116"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "216"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "216"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 13637,
"end": 13649,
"name": "PUSH",
"value": "1"
},
{
"begin": 13637,
"end": 13649,
"name": "SLOAD"
},
{
"begin": 13637,
"end": 13659,
"name": "DUP2"
},
{
"begin": 13637,
"end": 13659,
"name": "SWAP1"
},
{
"begin": 13637,
"end": 13659,
"name": "LT"
},
{
"begin": 13637,
"end": 13659,
"name": "ISZERO"
},
{
"begin": 13629,
"end": 13660,
"name": "PUSH [tag]",
"value": "218"
},
{
"begin": 13629,
"end": 13660,
"name": "JUMPI"
},
{
"begin": 13629,
"end": 13660,
"name": "PUSH",
"value": "0"
},
{
"begin": 13629,
"end": 13660,
"name": "DUP1"
},
{
"begin": 13629,
"end": 13660,
"name": "REVERT"
},
{
"begin": 13629,
"end": 13660,
"name": "tag",
"value": "218"
},
{
"begin": 13629,
"end": 13660,
"name": "JUMPDEST"
},
{
"begin": 13678,
"end": 13693,
"name": "PUSH",
"value": "0"
},
{
"begin": 13687,
"end": 13692,
"name": "DUP1"
},
{
"begin": 13687,
"end": 13692,
"name": "SLOAD"
},
{
"begin": 13687,
"end": 13692,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 13687,
"end": 13692,
"name": "AND"
},
{
"begin": 13678,
"end": 13693,
"name": "DUP2"
},
{
"begin": 13678,
"end": 13693,
"name": "MSTORE"
},
{
"begin": 13678,
"end": 13686,
"name": "PUSH",
"value": "2"
},
{
"begin": 13678,
"end": 13693,
"name": "PUSH",
"value": "20"
},
{
"begin": 13678,
"end": 13693,
"name": "MSTORE"
},
{
"begin": 13678,
"end": 13693,
"name": "PUSH",
"value": "40"
},
{
"begin": 13678,
"end": 13693,
"name": "SWAP1"
},
{
"begin": 13678,
"end": 13693,
"name": "KECCAK256"
},
{
"begin": 13678,
"end": 13693,
"name": "SLOAD"
},
{
"begin": 13678,
"end": 13703,
"name": "DUP2"
},
{
"begin": 13678,
"end": 13703,
"name": "SWAP1"
},
{
"begin": 13678,
"end": 13703,
"name": "LT"
},
{
"begin": 13678,
"end": 13703,
"name": "ISZERO"
},
{
"begin": 13670,
"end": 13704,
"name": "PUSH [tag]",
"value": "219"
},
{
"begin": 13670,
"end": 13704,
"name": "JUMPI"
},
{
"begin": 13670,
"end": 13704,
"name": "PUSH",
"value": "0"
},
{
"begin": 13670,
"end": 13704,
"name": "DUP1"
},
{
"begin": 13670,
"end": 13704,
"name": "REVERT"
},
{
"begin": 13670,
"end": 13704,
"name": "tag",
"value": "219"
},
{
"begin": 13670,
"end": 13704,
"name": "JUMPDEST"
},
{
"begin": 13715,
"end": 13727,
"name": "PUSH",
"value": "1"
},
{
"begin": 13715,
"end": 13737,
"name": "DUP1"
},
{
"begin": 13715,
"end": 13737,
"name": "SLOAD"
},
{
"begin": 13715,
"end": 13737,
"name": "DUP3"
},
{
"begin": 13715,
"end": 13737,
"name": "SWAP1"
},
{
"begin": 13715,
"end": 13737,
"name": "SUB"
},
{
"begin": 13715,
"end": 13737,
"name": "SWAP1"
},
{
"begin": 13715,
"end": 13737,
"name": "SSTORE"
},
{
"begin": 13715,
"end": 13727,
"name": "PUSH",
"value": "0"
},
{
"begin": 13756,
"end": 13761,
"name": "DUP1"
},
{
"begin": 13756,
"end": 13761,
"name": "SLOAD"
},
{
"begin": 13756,
"end": 13761,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 13756,
"end": 13761,
"name": "AND"
},
{
"begin": 13747,
"end": 13762,
"name": "DUP2"
},
{
"begin": 13747,
"end": 13762,
"name": "MSTORE"
},
{
"begin": 13747,
"end": 13755,
"name": "PUSH",
"value": "2"
},
{
"begin": 13747,
"end": 13762,
"name": "PUSH",
"value": "20"
},
{
"begin": 13747,
"end": 13762,
"name": "MSTORE"
},
{
"begin": 13747,
"end": 13762,
"name": "PUSH",
"value": "40"
},
{
"begin": 13747,
"end": 13762,
"name": "SWAP1"
},
{
"begin": 13747,
"end": 13762,
"name": "DUP2"
},
{
"begin": 13747,
"end": 13762,
"name": "SWAP1"
},
{
"begin": 13747,
"end": 13762,
"name": "KECCAK256"
},
{
"begin": 13747,
"end": 13772,
"name": "DUP1"
},
{
"begin": 13747,
"end": 13772,
"name": "SLOAD"
},
{
"begin": 13747,
"end": 13772,
"name": "DUP4"
},
{
"begin": 13747,
"end": 13772,
"name": "SWAP1"
},
{
"begin": 13747,
"end": 13772,
"name": "SUB"
},
{
"begin": 13747,
"end": 13772,
"name": "SWAP1"
},
{
"begin": 13747,
"end": 13772,
"name": "SSTORE"
},
{
"begin": 13782,
"end": 13796,
"name": "PUSH",
"value": "702D5967F45F6513A38FFC42D6BA9BF230BD40E8F53B16363C7EB4FD2DEB9A44"
},
{
"begin": 13782,
"end": 13796,
"name": "SWAP1"
},
{
"begin": 13731,
"end": 13737,
"name": "DUP3"
},
{
"begin": 13731,
"end": 13737,
"name": "SWAP1"
},
{
"begin": 13782,
"end": 13796,
"name": "MLOAD"
},
{
"begin": 13782,
"end": 13796,
"name": "SWAP1"
},
{
"begin": 13782,
"end": 13796,
"name": "DUP2"
},
{
"begin": 13782,
"end": 13796,
"name": "MSTORE"
},
{
"begin": 13782,
"end": 13796,
"name": "PUSH",
"value": "20"
},
{
"begin": 13782,
"end": 13796,
"name": "ADD"
},
{
"begin": 13782,
"end": 13796,
"name": "PUSH",
"value": "40"
},
{
"begin": 13782,
"end": 13796,
"name": "MLOAD"
},
{
"begin": 13782,
"end": 13796,
"name": "DUP1"
},
{
"begin": 13782,
"end": 13796,
"name": "SWAP2"
},
{
"begin": 13782,
"end": 13796,
"name": "SUB"
},
{
"begin": 13782,
"end": 13796,
"name": "SWAP1"
},
{
"begin": 13782,
"end": 13796,
"name": "LOG1"
},
{
"begin": 13573,
"end": 13803,
"name": "POP"
},
{
"begin": 13573,
"end": 13803,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 12130,
"end": 12417,
"name": "tag",
"value": "119"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMPDEST"
},
{
"begin": 12238,
"end": 12248,
"name": "PUSH",
"value": "A"
},
{
"begin": 12238,
"end": 12248,
"name": "SLOAD"
},
{
"begin": 12208,
"end": 12222,
"name": "PUSH",
"value": "0"
},
{
"begin": 12208,
"end": 12222,
"name": "SWAP1"
},
{
"begin": 12238,
"end": 12248,
"name": "PUSH",
"value": "10000000000000000000000000000000000000000"
},
{
"begin": 12238,
"end": 12248,
"name": "SWAP1"
},
{
"begin": 12238,
"end": 12248,
"name": "DIV"
},
{
"begin": 12238,
"end": 12248,
"name": "PUSH",
"value": "FF"
},
{
"begin": 12238,
"end": 12248,
"name": "AND"
},
{
"begin": 12234,
"end": 12411,
"name": "ISZERO"
},
{
"begin": 12234,
"end": 12411,
"name": "PUSH [tag]",
"value": "221"
},
{
"begin": 12234,
"end": 12411,
"name": "JUMPI"
},
{
"begin": 12285,
"end": 12300,
"name": "PUSH",
"value": "A"
},
{
"begin": 12285,
"end": 12300,
"name": "SLOAD"
},
{
"begin": 12285,
"end": 12300,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12285,
"end": 12300,
"name": "AND"
},
{
"begin": 12271,
"end": 12311,
"name": "PUSH",
"value": "DD62ED3E"
},
{
"begin": 12312,
"end": 12318,
"name": "DUP5"
},
{
"begin": 12320,
"end": 12328,
"name": "DUP5"
},
{
"begin": 12285,
"end": 12300,
"name": "PUSH",
"value": "0"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "40"
},
{
"begin": 12271,
"end": 12329,
"name": "MLOAD"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "20"
},
{
"begin": 12271,
"end": 12329,
"name": "ADD"
},
{
"begin": 12271,
"end": 12329,
"name": "MSTORE"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "40"
},
{
"begin": 12271,
"end": 12329,
"name": "MLOAD"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP6"
},
{
"begin": 12271,
"end": 12329,
"name": "AND"
},
{
"begin": 12271,
"end": 12329,
"name": "MUL"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP2"
},
{
"begin": 12271,
"end": 12329,
"name": "MSTORE"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 12271,
"end": 12329,
"name": "SWAP3"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP4"
},
{
"begin": 12271,
"end": 12329,
"name": "AND"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "4"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP3"
},
{
"begin": 12271,
"end": 12329,
"name": "ADD"
},
{
"begin": 12271,
"end": 12329,
"name": "MSTORE"
},
{
"begin": 12271,
"end": 12329,
"name": "SWAP2"
},
{
"begin": 12271,
"end": 12329,
"name": "AND"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "24"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP3"
},
{
"begin": 12271,
"end": 12329,
"name": "ADD"
},
{
"begin": 12271,
"end": 12329,
"name": "MSTORE"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "44"
},
{
"begin": 12271,
"end": 12329,
"name": "ADD"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "20"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "40"
},
{
"begin": 12271,
"end": 12329,
"name": "MLOAD"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP1"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP4"
},
{
"begin": 12271,
"end": 12329,
"name": "SUB"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP2"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "0"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP8"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP1"
},
{
"begin": 12271,
"end": 12329,
"name": "EXTCODESIZE"
},
{
"begin": 12271,
"end": 12329,
"name": "ISZERO"
},
{
"begin": 12271,
"end": 12329,
"name": "ISZERO"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH [tag]",
"value": "222"
},
{
"begin": 12271,
"end": 12329,
"name": "JUMPI"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "0"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP1"
},
{
"begin": 12271,
"end": 12329,
"name": "REVERT"
},
{
"begin": 12271,
"end": 12329,
"name": "tag",
"value": "222"
},
{
"begin": 12271,
"end": 12329,
"name": "JUMPDEST"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "2C6"
},
{
"begin": 12271,
"end": 12329,
"name": "GAS"
},
{
"begin": 12271,
"end": 12329,
"name": "SUB"
},
{
"begin": 12271,
"end": 12329,
"name": "CALL"
},
{
"begin": 12271,
"end": 12329,
"name": "ISZERO"
},
{
"begin": 12271,
"end": 12329,
"name": "ISZERO"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH [tag]",
"value": "223"
},
{
"begin": 12271,
"end": 12329,
"name": "JUMPI"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "0"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP1"
},
{
"begin": 12271,
"end": 12329,
"name": "REVERT"
},
{
"begin": 12271,
"end": 12329,
"name": "tag",
"value": "223"
},
{
"begin": 12271,
"end": 12329,
"name": "JUMPDEST"
},
{
"begin": 12271,
"end": 12329,
"name": "POP"
},
{
"begin": 12271,
"end": 12329,
"name": "POP"
},
{
"begin": 12271,
"end": 12329,
"name": "POP"
},
{
"begin": 12271,
"end": 12329,
"name": "PUSH",
"value": "40"
},
{
"begin": 12271,
"end": 12329,
"name": "MLOAD"
},
{
"begin": 12271,
"end": 12329,
"name": "DUP1"
},
{
"begin": 12271,
"end": 12329,
"name": "MLOAD"
},
{
"begin": 12271,
"end": 12329,
"name": "SWAP1"
},
{
"begin": 12271,
"end": 12329,
"name": "POP"
},
{
"begin": 12264,
"end": 12329,
"name": "SWAP1"
},
{
"begin": 12264,
"end": 12329,
"name": "POP"
},
{
"begin": 12264,
"end": 12329,
"name": "PUSH [tag]",
"value": "224"
},
{
"begin": 12264,
"end": 12329,
"name": "JUMP"
},
{
"begin": 12234,
"end": 12411,
"name": "tag",
"value": "221"
},
{
"begin": 12234,
"end": 12411,
"name": "JUMPDEST"
},
{
"begin": 12367,
"end": 12400,
"name": "PUSH [tag]",
"value": "225"
},
{
"begin": 12383,
"end": 12389,
"name": "DUP4"
},
{
"begin": 12391,
"end": 12399,
"name": "DUP4"
},
{
"begin": 12367,
"end": 12382,
"name": "PUSH [tag]",
"value": "226"
},
{
"begin": 12367,
"end": 12400,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 12367,
"end": 12400,
"name": "tag",
"value": "225"
},
{
"begin": 12367,
"end": 12400,
"name": "JUMPDEST"
},
{
"begin": 12360,
"end": 12400,
"name": "SWAP1"
},
{
"begin": 12360,
"end": 12400,
"name": "POP"
},
{
"begin": 12234,
"end": 12411,
"name": "tag",
"value": "224"
},
{
"begin": 12234,
"end": 12411,
"name": "JUMPDEST"
},
{
"begin": 12130,
"end": 12417,
"name": "SWAP3"
},
{
"begin": 12130,
"end": 12417,
"name": "SWAP2"
},
{
"begin": 12130,
"end": 12417,
"name": "POP"
},
{
"begin": 12130,
"end": 12417,
"name": "POP"
},
{
"begin": 12130,
"end": 12417,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 3041,
"end": 3072,
"name": "tag",
"value": "122"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMPDEST"
},
{
"begin": 3041,
"end": 3072,
"name": "PUSH",
"value": "3"
},
{
"begin": 3041,
"end": 3072,
"name": "SLOAD"
},
{
"begin": 3041,
"end": 3072,
"name": "DUP2"
},
{
"begin": 3041,
"end": 3072,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8448,
"end": 8494,
"name": "tag",
"value": "125"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMPDEST"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "6"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "20"
},
{
"begin": 8448,
"end": 8494,
"name": "MSTORE"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "0"
},
{
"begin": 8448,
"end": 8494,
"name": "SWAP1"
},
{
"begin": 8448,
"end": 8494,
"name": "DUP2"
},
{
"begin": 8448,
"end": 8494,
"name": "MSTORE"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "40"
},
{
"begin": 8448,
"end": 8494,
"name": "SWAP1"
},
{
"begin": 8448,
"end": 8494,
"name": "KECCAK256"
},
{
"begin": 8448,
"end": 8494,
"name": "SLOAD"
},
{
"begin": 8448,
"end": 8494,
"name": "PUSH",
"value": "FF"
},
{
"begin": 8448,
"end": 8494,
"name": "AND"
},
{
"begin": 8448,
"end": 8494,
"name": "DUP2"
},
{
"begin": 8448,
"end": 8494,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8653,
"end": 8810,
"name": "tag",
"value": "128"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "228"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "228"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 8728,
"end": 8755,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8728,
"end": 8755,
"name": "DUP2"
},
{
"begin": 8728,
"end": 8755,
"name": "AND"
},
{
"begin": 8758,
"end": 8763,
"name": "PUSH",
"value": "0"
},
{
"begin": 8728,
"end": 8755,
"name": "SWAP1"
},
{
"begin": 8728,
"end": 8755,
"name": "DUP2"
},
{
"begin": 8728,
"end": 8755,
"name": "MSTORE"
},
{
"begin": 8728,
"end": 8741,
"name": "PUSH",
"value": "6"
},
{
"begin": 8728,
"end": 8755,
"name": "PUSH",
"value": "20"
},
{
"begin": 8728,
"end": 8755,
"name": "MSTORE"
},
{
"begin": 8728,
"end": 8755,
"name": "PUSH",
"value": "40"
},
{
"begin": 8728,
"end": 8755,
"name": "SWAP1"
},
{
"begin": 8728,
"end": 8755,
"name": "DUP2"
},
{
"begin": 8728,
"end": 8755,
"name": "SWAP1"
},
{
"begin": 8728,
"end": 8755,
"name": "KECCAK256"
},
{
"begin": 8728,
"end": 8763,
"name": "DUP1"
},
{
"begin": 8728,
"end": 8763,
"name": "SLOAD"
},
{
"begin": 8728,
"end": 8763,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00"
},
{
"begin": 8728,
"end": 8763,
"name": "AND"
},
{
"begin": 8728,
"end": 8763,
"name": "SWAP1"
},
{
"begin": 8728,
"end": 8763,
"name": "SSTORE"
},
{
"begin": 8773,
"end": 8803,
"name": "PUSH",
"value": "D7E9EC6E6ECD65492DCE6BF513CD6867560D49544421D0783DDF06E76C24470C"
},
{
"begin": 8773,
"end": 8803,
"name": "SWAP1"
},
{
"begin": 8742,
"end": 8754,
"name": "DUP3"
},
{
"begin": 8742,
"end": 8754,
"name": "SWAP1"
},
{
"begin": 8773,
"end": 8803,
"name": "MLOAD"
},
{
"begin": 8773,
"end": 8803,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8773,
"end": 8803,
"name": "SWAP1"
},
{
"begin": 8773,
"end": 8803,
"name": "SWAP2"
},
{
"begin": 8773,
"end": 8803,
"name": "AND"
},
{
"begin": 8773,
"end": 8803,
"name": "DUP2"
},
{
"begin": 8773,
"end": 8803,
"name": "MSTORE"
},
{
"begin": 8773,
"end": 8803,
"name": "PUSH",
"value": "20"
},
{
"begin": 8773,
"end": 8803,
"name": "ADD"
},
{
"begin": 8773,
"end": 8803,
"name": "PUSH",
"value": "40"
},
{
"begin": 8773,
"end": 8803,
"name": "MLOAD"
},
{
"begin": 8773,
"end": 8803,
"name": "DUP1"
},
{
"begin": 8773,
"end": 8803,
"name": "SWAP2"
},
{
"begin": 8773,
"end": 8803,
"name": "SUB"
},
{
"begin": 8773,
"end": 8803,
"name": "SWAP1"
},
{
"begin": 8773,
"end": 8803,
"name": "LOG1"
},
{
"begin": 8653,
"end": 8810,
"name": "POP"
},
{
"begin": 8653,
"end": 8810,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 4720,
"end": 4762,
"name": "tag",
"value": "131"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMPDEST"
},
{
"begin": 4752,
"end": 4762,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 4720,
"end": 4762,
"name": "DUP2"
},
{
"begin": 4720,
"end": 4762,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 1738,
"end": 1885,
"name": "tag",
"value": "134"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMPDEST"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "231"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "231"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 1814,
"end": 1836,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1814,
"end": 1836,
"name": "DUP2"
},
{
"begin": 1814,
"end": 1836,
"name": "AND"
},
{
"begin": 1814,
"end": 1836,
"name": "ISZERO"
},
{
"begin": 1810,
"end": 1879,
"name": "PUSH [tag]",
"value": "233"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPI"
},
{
"begin": 1852,
"end": 1857,
"name": "PUSH",
"value": "0"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SLOAD"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1852,
"end": 1868,
"name": "DUP4"
},
{
"begin": 1852,
"end": 1868,
"name": "AND"
},
{
"begin": 1852,
"end": 1868,
"name": "OR"
},
{
"begin": 1852,
"end": 1868,
"name": "SWAP1"
},
{
"begin": 1852,
"end": 1868,
"name": "SSTORE"
},
{
"begin": 1810,
"end": 1879,
"name": "tag",
"value": "233"
},
{
"begin": 1810,
"end": 1879,
"name": "JUMPDEST"
},
{
"begin": 1738,
"end": 1885,
"name": "POP"
},
{
"begin": 1738,
"end": 1885,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 8816,
"end": 9134,
"name": "tag",
"value": "137"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMPDEST"
},
{
"begin": 8947,
"end": 8962,
"name": "PUSH",
"value": "0"
},
{
"begin": 1546,
"end": 1551,
"name": "DUP1"
},
{
"begin": 1546,
"end": 1551,
"name": "SLOAD"
},
{
"begin": 1532,
"end": 1542,
"name": "CALLER"
},
{
"begin": 1546,
"end": 1551,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1532,
"end": 1551,
"name": "SWAP1"
},
{
"begin": 1532,
"end": 1551,
"name": "DUP2"
},
{
"begin": 1532,
"end": 1551,
"name": "AND"
},
{
"begin": 1546,
"end": 1551,
"name": "SWAP2"
},
{
"begin": 1546,
"end": 1551,
"name": "AND"
},
{
"begin": 1532,
"end": 1551,
"name": "EQ"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH [tag]",
"value": "235"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPI"
},
{
"begin": 1524,
"end": 1552,
"name": "PUSH",
"value": "0"
},
{
"begin": 1524,
"end": 1552,
"name": "DUP1"
},
{
"begin": 1524,
"end": 1552,
"name": "REVERT"
},
{
"begin": 1524,
"end": 1552,
"name": "tag",
"value": "235"
},
{
"begin": 1524,
"end": 1552,
"name": "JUMPDEST"
},
{
"begin": 8905,
"end": 8936,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 8905,
"end": 8936,
"name": "DUP3"
},
{
"begin": 8905,
"end": 8936,
"name": "AND"
},
{
"begin": 8905,
"end": 8936,
"name": "PUSH",
"value": "0"
},
{
"begin": 8905,
"end": 8936,
"name": "SWAP1"
},
{
"begin": 8905,
"end": 8936,
"name": "DUP2"
},
{
"begin": 8905,
"end": 8936,
"name": "MSTORE"
},
{
"begin": 8905,
"end": 8918,
"name": "PUSH",
"value": "6"
},
{
"begin": 8905,
"end": 8936,
"name": "PUSH",
"value": "20"
},
{
"begin": 8905,
"end": 8936,
"name": "MSTORE"
},
{
"begin": 8905,
"end": 8936,
"name": "PUSH",
"value": "40"
},
{
"begin": 8905,
"end": 8936,
"name": "SWAP1"
},
{
"begin": 8905,
"end": 8936,
"name": "KECCAK256"
},
{
"begin": 8905,
"end": 8936,
"name": "SLOAD"
},
{
"begin": 8905,
"end": 8936,
"name": "PUSH",
"value": "FF"
},
{
"begin": 8905,
"end": 8936,
"name": "AND"
},
{
"begin": 8897,
"end": 8937,
"name": "ISZERO"
},
{
"begin": 8897,
"end": 8937,
"name": "ISZERO"
},
{
"begin": 8897,
"end": 8937,
"name": "PUSH [tag]",
"value": "237"
},
{
"begin": 8897,
"end": 8937,
"name": "JUMPI"
},
{
"begin": 8897,
"end": 8937,
"name": "PUSH",
"value": "0"
},
{
"begin": 8897,
"end": 8937,
"name": "DUP1"
},
{
"begin": 8897,
"end": 8937,
"name": "REVERT"
},
{
"begin": 8897,
"end": 8937,
"name": "tag",
"value": "237"
},
{
"begin": 8897,
"end": 8937,
"name": "JUMPDEST"
},
{
"begin": 8965,
"end": 8992,
"name": "PUSH [tag]",
"value": "238"
},
{
"begin": 8975,
"end": 8991,
"name": "DUP3"
},
{
"begin": 8965,
"end": 8974,
"name": "PUSH [tag]",
"value": "88"
},
{
"begin": 8965,
"end": 8992,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 8965,
"end": 8992,
"name": "tag",
"value": "238"
},
{
"begin": 8965,
"end": 8992,
"name": "JUMPDEST"
},
{
"begin": 9002,
"end": 9028,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 9002,
"end": 9028,
"name": "DUP4"
},
{
"begin": 9002,
"end": 9028,
"name": "AND"
},
{
"begin": 9031,
"end": 9032,
"name": "PUSH",
"value": "0"
},
{
"begin": 9002,
"end": 9028,
"name": "SWAP1"
},
{
"begin": 9002,
"end": 9028,
"name": "DUP2"
},
{
"begin": 9002,
"end": 9028,
"name": "MSTORE"
},
{
"begin": 9002,
"end": 9010,
"name": "PUSH",
"value": "2"
},
{
"begin": 9002,
"end": 9028,
"name": "PUSH",
"value": "20"
},
{
"begin": 9002,
"end": 9028,
"name": "MSTORE"
},
{
"begin": 9002,
"end": 9028,
"name": "PUSH",
"value": "40"
},
{
"begin": 9002,
"end": 9028,
"name": "DUP1"
},
{
"begin": 9002,
"end": 9028,
"name": "DUP3"
},
{
"begin": 9002,
"end": 9028,
"name": "KECCAK256"
},
{
"begin": 9002,
"end": 9032,
"name": "SWAP2"
},
{
"begin": 9002,
"end": 9032,
"name": "SWAP1"
},
{
"begin": 9002,
"end": 9032,
"name": "SWAP2"
},
{
"begin": 9002,
"end": 9032,
"name": "SSTORE"
},
{
"begin": 9042,
"end": 9054,
"name": "PUSH",
"value": "1"
},
{
"begin": 9042,
"end": 9068,
"name": "DUP1"
},
{
"begin": 9042,
"end": 9068,
"name": "SLOAD"
},
{
"begin": 9042,
"end": 9068,
"name": "DUP4"
},
{
"begin": 9042,
"end": 9068,
"name": "SWAP1"
},
{
"begin": 9042,
"end": 9068,
"name": "SUB"
},
{
"begin": 9042,
"end": 9068,
"name": "SWAP1"
},
{
"begin": 9042,
"end": 9068,
"name": "SSTORE"
},
{
"begin": 8947,
"end": 8992,
"name": "SWAP1"
},
{
"begin": 8947,
"end": 8992,
"name": "SWAP2"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 9078,
"end": 9127,
"name": "PUSH",
"value": "61E6E66B0D6339B2980AECC6CCC0039736791F0CCDE9ED512E789A7FBDD698C6"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP1"
},
{
"begin": 9011,
"end": 9027,
"name": "DUP4"
},
{
"begin": 9011,
"end": 9027,
"name": "SWAP1"
},
{
"begin": 8947,
"end": 8992,
"name": "DUP4"
},
{
"begin": 8947,
"end": 8992,
"name": "SWAP1"
},
{
"begin": 9078,
"end": 9127,
"name": "MLOAD"
},
{
"begin": 9078,
"end": 9127,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP1"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP3"
},
{
"begin": 9078,
"end": 9127,
"name": "AND"
},
{
"begin": 9078,
"end": 9127,
"name": "DUP3"
},
{
"begin": 9078,
"end": 9127,
"name": "MSTORE"
},
{
"begin": 9078,
"end": 9127,
"name": "PUSH",
"value": "20"
},
{
"begin": 9078,
"end": 9127,
"name": "DUP3"
},
{
"begin": 9078,
"end": 9127,
"name": "ADD"
},
{
"begin": 9078,
"end": 9127,
"name": "MSTORE"
},
{
"begin": 9078,
"end": 9127,
"name": "PUSH",
"value": "40"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP1"
},
{
"begin": 9078,
"end": 9127,
"name": "DUP2"
},
{
"begin": 9078,
"end": 9127,
"name": "ADD"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP1"
},
{
"begin": 9078,
"end": 9127,
"name": "MLOAD"
},
{
"begin": 9078,
"end": 9127,
"name": "DUP1"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP2"
},
{
"begin": 9078,
"end": 9127,
"name": "SUB"
},
{
"begin": 9078,
"end": 9127,
"name": "SWAP1"
},
{
"begin": 9078,
"end": 9127,
"name": "LOG1"
},
{
"begin": 8816,
"end": 9134,
"name": "POP"
},
{
"begin": 8816,
"end": 9134,
"name": "POP"
},
{
"begin": 8816,
"end": 9134,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 6164,
"end": 6727,
"name": "tag",
"value": "152"
},
{
"begin": 6164,
"end": 6727,
"name": "JUMPDEST"
},
{
"begin": 6235,
"end": 6241,
"name": "PUSH",
"value": "40"
},
{
"begin": 3251,
"end": 3259,
"name": "PUSH",
"value": "44"
},
{
"begin": 3233,
"end": 3241,
"name": "CALLDATASIZE"
},
{
"begin": 3233,
"end": 3259,
"name": "LT"
},
{
"begin": 3231,
"end": 3260,
"name": "ISZERO"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH [tag]",
"value": "240"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPI"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH",
"value": "0"
},
{
"begin": 3223,
"end": 3261,
"name": "DUP1"
},
{
"begin": 3223,
"end": 3261,
"name": "REVERT"
},
{
"begin": 3223,
"end": 3261,
"name": "tag",
"value": "240"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPDEST"
},
{
"begin": 6569,
"end": 6580,
"name": "DUP2"
},
{
"begin": 6569,
"end": 6580,
"name": "ISZERO"
},
{
"begin": 6569,
"end": 6580,
"name": "DUP1"
},
{
"begin": 6569,
"end": 6580,
"name": "ISZERO"
},
{
"begin": 6569,
"end": 6580,
"name": "SWAP1"
},
{
"begin": 6568,
"end": 6621,
"name": "PUSH [tag]",
"value": "242"
},
{
"begin": 6568,
"end": 6621,
"name": "JUMPI"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 6586,
"end": 6605,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 6594,
"end": 6604,
"name": "CALLER"
},
{
"begin": 6586,
"end": 6605,
"name": "DUP2"
},
{
"begin": 6586,
"end": 6605,
"name": "AND"
},
{
"begin": 6586,
"end": 6605,
"name": "PUSH",
"value": "0"
},
{
"begin": 6586,
"end": 6605,
"name": "SWAP1"
},
{
"begin": 6586,
"end": 6605,
"name": "DUP2"
},
{
"begin": 6586,
"end": 6605,
"name": "MSTORE"
},
{
"begin": 6586,
"end": 6593,
"name": "PUSH",
"value": "5"
},
{
"begin": 6586,
"end": 6605,
"name": "PUSH",
"value": "20"
},
{
"begin": 6586,
"end": 6605,
"name": "SWAP1"
},
{
"begin": 6586,
"end": 6605,
"name": "DUP2"
},
{
"begin": 6586,
"end": 6605,
"name": "MSTORE"
},
{
"begin": 6586,
"end": 6605,
"name": "PUSH",
"value": "40"
},
{
"begin": 6586,
"end": 6605,
"name": "DUP1"
},
{
"begin": 6586,
"end": 6605,
"name": "DUP4"
},
{
"begin": 6586,
"end": 6605,
"name": "KECCAK256"
},
{
"begin": 6586,
"end": 6615,
"name": "SWAP4"
},
{
"begin": 6586,
"end": 6615,
"name": "DUP8"
},
{
"begin": 6586,
"end": 6615,
"name": "AND"
},
{
"begin": 6586,
"end": 6615,
"name": "DUP4"
},
{
"begin": 6586,
"end": 6615,
"name": "MSTORE"
},
{
"begin": 6586,
"end": 6615,
"name": "SWAP3"
},
{
"begin": 6586,
"end": 6615,
"name": "SWAP1"
},
{
"begin": 6586,
"end": 6615,
"name": "MSTORE"
},
{
"begin": 6586,
"end": 6615,
"name": "KECCAK256"
},
{
"begin": 6586,
"end": 6615,
"name": "SLOAD"
},
{
"begin": 6586,
"end": 6620,
"name": "ISZERO"
},
{
"begin": 6586,
"end": 6620,
"name": "ISZERO"
},
{
"begin": 6568,
"end": 6621,
"name": "tag",
"value": "242"
},
{
"begin": 6568,
"end": 6621,
"name": "JUMPDEST"
},
{
"begin": 6566,
"end": 6622,
"name": "ISZERO"
},
{
"begin": 6558,
"end": 6623,
"name": "PUSH [tag]",
"value": "243"
},
{
"begin": 6558,
"end": 6623,
"name": "JUMPI"
},
{
"begin": 6558,
"end": 6623,
"name": "PUSH",
"value": "0"
},
{
"begin": 6558,
"end": 6623,
"name": "DUP1"
},
{
"begin": 6558,
"end": 6623,
"name": "REVERT"
},
{
"begin": 6558,
"end": 6623,
"name": "tag",
"value": "243"
},
{
"begin": 6558,
"end": 6623,
"name": "JUMPDEST"
},
{
"begin": 6634,
"end": 6653,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 6642,
"end": 6652,
"name": "CALLER"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP2"
},
{
"begin": 6634,
"end": 6653,
"name": "AND"
},
{
"begin": 6634,
"end": 6653,
"name": "PUSH",
"value": "0"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP2"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP2"
},
{
"begin": 6634,
"end": 6653,
"name": "MSTORE"
},
{
"begin": 6634,
"end": 6641,
"name": "PUSH",
"value": "5"
},
{
"begin": 6634,
"end": 6653,
"name": "PUSH",
"value": "20"
},
{
"begin": 6634,
"end": 6653,
"name": "SWAP1"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP2"
},
{
"begin": 6634,
"end": 6653,
"name": "MSTORE"
},
{
"begin": 6634,
"end": 6653,
"name": "PUSH",
"value": "40"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP1"
},
{
"begin": 6634,
"end": 6653,
"name": "DUP4"
},
{
"begin": 6634,
"end": 6653,
"name": "KECCAK256"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP5"
},
{
"begin": 6634,
"end": 6663,
"name": "DUP9"
},
{
"begin": 6634,
"end": 6663,
"name": "AND"
},
{
"begin": 6634,
"end": 6663,
"name": "DUP1"
},
{
"begin": 6634,
"end": 6663,
"name": "DUP5"
},
{
"begin": 6634,
"end": 6663,
"name": "MSTORE"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP5"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP1"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP2"
},
{
"begin": 6634,
"end": 6663,
"name": "MSTORE"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP1"
},
{
"begin": 6634,
"end": 6663,
"name": "DUP2"
},
{
"begin": 6634,
"end": 6663,
"name": "SWAP1"
},
{
"begin": 6634,
"end": 6663,
"name": "KECCAK256"
},
{
"begin": 6634,
"end": 6672,
"name": "DUP6"
},
{
"begin": 6634,
"end": 6672,
"name": "SWAP1"
},
{
"begin": 6634,
"end": 6672,
"name": "SSTORE"
},
{
"begin": 6682,
"end": 6720,
"name": "PUSH",
"value": "8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925"
},
{
"begin": 6682,
"end": 6720,
"name": "SWAP1"
},
{
"begin": 6666,
"end": 6672,
"name": "DUP6"
},
{
"begin": 6666,
"end": 6672,
"name": "SWAP1"
},
{
"begin": 6682,
"end": 6720,
"name": "MLOAD"
},
{
"begin": 6682,
"end": 6720,
"name": "SWAP1"
},
{
"begin": 6682,
"end": 6720,
"name": "DUP2"
},
{
"begin": 6682,
"end": 6720,
"name": "MSTORE"
},
{
"begin": 6682,
"end": 6720,
"name": "PUSH",
"value": "20"
},
{
"begin": 6682,
"end": 6720,
"name": "ADD"
},
{
"begin": 6682,
"end": 6720,
"name": "PUSH",
"value": "40"
},
{
"begin": 6682,
"end": 6720,
"name": "MLOAD"
},
{
"begin": 6682,
"end": 6720,
"name": "DUP1"
},
{
"begin": 6682,
"end": 6720,
"name": "SWAP2"
},
{
"begin": 6682,
"end": 6720,
"name": "SUB"
},
{
"begin": 6682,
"end": 6720,
"name": "SWAP1"
},
{
"begin": 6682,
"end": 6720,
"name": "LOG3"
},
{
"begin": 6164,
"end": 6727,
"name": "POP"
},
{
"begin": 6164,
"end": 6727,
"name": "POP"
},
{
"begin": 6164,
"end": 6727,
"name": "POP"
},
{
"begin": 6164,
"end": 6727,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 5044,
"end": 5924,
"name": "tag",
"value": "170"
},
{
"begin": 5044,
"end": 5924,
"name": "JUMPDEST"
},
{
"begin": 5148,
"end": 5162,
"name": "PUSH",
"value": "0"
},
{
"begin": 5148,
"end": 5162,
"name": "DUP1"
},
{
"begin": 5148,
"end": 5162,
"name": "DUP1"
},
{
"begin": 5130,
"end": 5136,
"name": "PUSH",
"value": "60"
},
{
"begin": 3251,
"end": 3259,
"name": "PUSH",
"value": "64"
},
{
"begin": 3233,
"end": 3241,
"name": "CALLDATASIZE"
},
{
"begin": 3233,
"end": 3259,
"name": "LT"
},
{
"begin": 3231,
"end": 3260,
"name": "ISZERO"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH [tag]",
"value": "245"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPI"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH",
"value": "0"
},
{
"begin": 3223,
"end": 3261,
"name": "DUP1"
},
{
"begin": 3223,
"end": 3261,
"name": "REVERT"
},
{
"begin": 3223,
"end": 3261,
"name": "tag",
"value": "245"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPDEST"
},
{
"begin": 5165,
"end": 5179,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP1"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP9"
},
{
"begin": 5165,
"end": 5179,
"name": "AND"
},
{
"begin": 5165,
"end": 5179,
"name": "PUSH",
"value": "0"
},
{
"begin": 5165,
"end": 5179,
"name": "SWAP1"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP2"
},
{
"begin": 5165,
"end": 5179,
"name": "MSTORE"
},
{
"begin": 5165,
"end": 5172,
"name": "PUSH",
"value": "5"
},
{
"begin": 5165,
"end": 5179,
"name": "PUSH",
"value": "20"
},
{
"begin": 5165,
"end": 5179,
"name": "SWAP1"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP2"
},
{
"begin": 5165,
"end": 5179,
"name": "MSTORE"
},
{
"begin": 5165,
"end": 5179,
"name": "PUSH",
"value": "40"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP1"
},
{
"begin": 5165,
"end": 5179,
"name": "DUP4"
},
{
"begin": 5165,
"end": 5179,
"name": "KECCAK256"
},
{
"begin": 5180,
"end": 5190,
"name": "CALLER"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP1"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP5"
},
{
"begin": 5165,
"end": 5191,
"name": "AND"
},
{
"begin": 5165,
"end": 5191,
"name": "DUP4"
},
{
"begin": 5165,
"end": 5191,
"name": "MSTORE"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP3"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP1"
},
{
"begin": 5165,
"end": 5191,
"name": "MSTORE"
},
{
"begin": 5165,
"end": 5191,
"name": "KECCAK256"
},
{
"begin": 5165,
"end": 5191,
"name": "SLOAD"
},
{
"begin": 5380,
"end": 5395,
"name": "PUSH",
"value": "3"
},
{
"begin": 5380,
"end": 5395,
"name": "SLOAD"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP1"
},
{
"begin": 5165,
"end": 5191,
"name": "SWAP5"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 5368,
"end": 5408,
"name": "PUSH [tag]",
"value": "247"
},
{
"begin": 5368,
"end": 5408,
"name": "SWAP1"
},
{
"begin": 5402,
"end": 5407,
"name": "PUSH",
"value": "2710"
},
{
"begin": 5402,
"end": 5407,
"name": "SWAP1"
},
{
"begin": 5369,
"end": 5396,
"name": "PUSH [tag]",
"value": "248"
},
{
"begin": 5369,
"end": 5396,
"name": "SWAP1"
},
{
"begin": 5369,
"end": 5375,
"name": "DUP9"
},
{
"begin": 5369,
"end": 5375,
"name": "SWAP1"
},
{
"begin": 5369,
"end": 5396,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5369,
"end": 5379,
"name": "PUSH [tag]",
"value": "209"
},
{
"begin": 5369,
"end": 5396,
"name": "AND"
},
{
"begin": 5369,
"end": 5396,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5369,
"end": 5396,
"name": "tag",
"value": "248"
},
{
"begin": 5369,
"end": 5396,
"name": "JUMPDEST"
},
{
"begin": 5368,
"end": 5401,
"name": "SWAP1"
},
{
"begin": 5368,
"end": 5408,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5368,
"end": 5401,
"name": "PUSH [tag]",
"value": "249"
},
{
"begin": 5368,
"end": 5408,
"name": "AND"
},
{
"begin": 5368,
"end": 5408,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5368,
"end": 5408,
"name": "tag",
"value": "247"
},
{
"begin": 5368,
"end": 5408,
"name": "JUMPDEST"
},
{
"begin": 5357,
"end": 5408,
"name": "SWAP3"
},
{
"begin": 5357,
"end": 5408,
"name": "POP"
},
{
"begin": 5428,
"end": 5438,
"name": "PUSH",
"value": "4"
},
{
"begin": 5428,
"end": 5438,
"name": "SLOAD"
},
{
"begin": 5422,
"end": 5425,
"name": "DUP4"
},
{
"begin": 5422,
"end": 5438,
"name": "GT"
},
{
"begin": 5418,
"end": 5481,
"name": "ISZERO"
},
{
"begin": 5418,
"end": 5481,
"name": "PUSH [tag]",
"value": "250"
},
{
"begin": 5418,
"end": 5481,
"name": "JUMPI"
},
{
"begin": 5460,
"end": 5470,
"name": "PUSH",
"value": "4"
},
{
"begin": 5460,
"end": 5470,
"name": "SLOAD"
},
{
"begin": 5454,
"end": 5470,
"name": "SWAP3"
},
{
"begin": 5454,
"end": 5470,
"name": "POP"
},
{
"begin": 5418,
"end": 5481,
"name": "tag",
"value": "250"
},
{
"begin": 5418,
"end": 5481,
"name": "JUMPDEST"
},
{
"begin": 4752,
"end": 4762,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5494,
"end": 5504,
"name": "DUP5"
},
{
"begin": 5494,
"end": 5515,
"name": "LT"
},
{
"begin": 5490,
"end": 5593,
"name": "ISZERO"
},
{
"begin": 5490,
"end": 5593,
"name": "PUSH [tag]",
"value": "251"
},
{
"begin": 5490,
"end": 5593,
"name": "JUMPI"
},
{
"begin": 5560,
"end": 5582,
"name": "PUSH [tag]",
"value": "252"
},
{
"begin": 5560,
"end": 5570,
"name": "DUP5"
},
{
"begin": 5575,
"end": 5581,
"name": "DUP7"
},
{
"begin": 5560,
"end": 5582,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5560,
"end": 5574,
"name": "PUSH [tag]",
"value": "253"
},
{
"begin": 5560,
"end": 5582,
"name": "AND"
},
{
"begin": 5560,
"end": 5582,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5560,
"end": 5582,
"name": "tag",
"value": "252"
},
{
"begin": 5560,
"end": 5582,
"name": "JUMPDEST"
},
{
"begin": 5531,
"end": 5545,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP1"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP10"
},
{
"begin": 5531,
"end": 5545,
"name": "AND"
},
{
"begin": 5531,
"end": 5545,
"name": "PUSH",
"value": "0"
},
{
"begin": 5531,
"end": 5545,
"name": "SWAP1"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP2"
},
{
"begin": 5531,
"end": 5545,
"name": "MSTORE"
},
{
"begin": 5531,
"end": 5538,
"name": "PUSH",
"value": "5"
},
{
"begin": 5531,
"end": 5545,
"name": "PUSH",
"value": "20"
},
{
"begin": 5531,
"end": 5545,
"name": "SWAP1"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP2"
},
{
"begin": 5531,
"end": 5545,
"name": "MSTORE"
},
{
"begin": 5531,
"end": 5545,
"name": "PUSH",
"value": "40"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP1"
},
{
"begin": 5531,
"end": 5545,
"name": "DUP4"
},
{
"begin": 5531,
"end": 5545,
"name": "KECCAK256"
},
{
"begin": 5546,
"end": 5556,
"name": "CALLER"
},
{
"begin": 5531,
"end": 5557,
"name": "SWAP1"
},
{
"begin": 5531,
"end": 5557,
"name": "SWAP5"
},
{
"begin": 5531,
"end": 5557,
"name": "AND"
},
{
"begin": 5531,
"end": 5557,
"name": "DUP4"
},
{
"begin": 5531,
"end": 5557,
"name": "MSTORE"
},
{
"begin": 5531,
"end": 5557,
"name": "SWAP3"
},
{
"begin": 5531,
"end": 5557,
"name": "SWAP1"
},
{
"begin": 5531,
"end": 5557,
"name": "MSTORE"
},
{
"begin": 5531,
"end": 5557,
"name": "KECCAK256"
},
{
"begin": 5531,
"end": 5582,
"name": "SSTORE"
},
{
"begin": 5490,
"end": 5593,
"name": "tag",
"value": "251"
},
{
"begin": 5490,
"end": 5593,
"name": "JUMPDEST"
},
{
"begin": 5620,
"end": 5635,
"name": "PUSH [tag]",
"value": "254"
},
{
"begin": 5620,
"end": 5626,
"name": "DUP6"
},
{
"begin": 5631,
"end": 5634,
"name": "DUP5"
},
{
"begin": 5620,
"end": 5635,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5620,
"end": 5630,
"name": "PUSH [tag]",
"value": "253"
},
{
"begin": 5620,
"end": 5635,
"name": "AND"
},
{
"begin": 5620,
"end": 5635,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5620,
"end": 5635,
"name": "tag",
"value": "254"
},
{
"begin": 5620,
"end": 5635,
"name": "JUMPDEST"
},
{
"begin": 5663,
"end": 5678,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5663,
"end": 5678,
"name": "DUP9"
},
{
"begin": 5663,
"end": 5678,
"name": "AND"
},
{
"begin": 5663,
"end": 5678,
"name": "PUSH",
"value": "0"
},
{
"begin": 5663,
"end": 5678,
"name": "SWAP1"
},
{
"begin": 5663,
"end": 5678,
"name": "DUP2"
},
{
"begin": 5663,
"end": 5678,
"name": "MSTORE"
},
{
"begin": 5663,
"end": 5671,
"name": "PUSH",
"value": "2"
},
{
"begin": 5663,
"end": 5678,
"name": "PUSH",
"value": "20"
},
{
"begin": 5663,
"end": 5678,
"name": "MSTORE"
},
{
"begin": 5663,
"end": 5678,
"name": "PUSH",
"value": "40"
},
{
"begin": 5663,
"end": 5678,
"name": "SWAP1"
},
{
"begin": 5663,
"end": 5678,
"name": "KECCAK256"
},
{
"begin": 5663,
"end": 5678,
"name": "SLOAD"
},
{
"begin": 5602,
"end": 5635,
"name": "SWAP1"
},
{
"begin": 5602,
"end": 5635,
"name": "SWAP3"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 5663,
"end": 5690,
"name": "PUSH [tag]",
"value": "255"
},
{
"begin": 5663,
"end": 5690,
"name": "SWAP1"
},
{
"begin": 5683,
"end": 5689,
"name": "DUP7"
},
{
"begin": 5663,
"end": 5690,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5663,
"end": 5682,
"name": "PUSH [tag]",
"value": "253"
},
{
"begin": 5663,
"end": 5690,
"name": "AND"
},
{
"begin": 5663,
"end": 5690,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5663,
"end": 5690,
"name": "tag",
"value": "255"
},
{
"begin": 5663,
"end": 5690,
"name": "JUMPDEST"
},
{
"begin": 5645,
"end": 5660,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5645,
"end": 5660,
"name": "DUP1"
},
{
"begin": 5645,
"end": 5660,
"name": "DUP10"
},
{
"begin": 5645,
"end": 5660,
"name": "AND"
},
{
"begin": 5645,
"end": 5660,
"name": "PUSH",
"value": "0"
},
{
"begin": 5645,
"end": 5660,
"name": "SWAP1"
},
{
"begin": 5645,
"end": 5660,
"name": "DUP2"
},
{
"begin": 5645,
"end": 5660,
"name": "MSTORE"
},
{
"begin": 5645,
"end": 5653,
"name": "PUSH",
"value": "2"
},
{
"begin": 5645,
"end": 5660,
"name": "PUSH",
"value": "20"
},
{
"begin": 5645,
"end": 5660,
"name": "MSTORE"
},
{
"begin": 5645,
"end": 5660,
"name": "PUSH",
"value": "40"
},
{
"begin": 5645,
"end": 5660,
"name": "DUP1"
},
{
"begin": 5645,
"end": 5660,
"name": "DUP3"
},
{
"begin": 5645,
"end": 5660,
"name": "KECCAK256"
},
{
"begin": 5645,
"end": 5690,
"name": "SWAP4"
},
{
"begin": 5645,
"end": 5690,
"name": "SWAP1"
},
{
"begin": 5645,
"end": 5690,
"name": "SWAP4"
},
{
"begin": 5645,
"end": 5690,
"name": "SSTORE"
},
{
"begin": 5716,
"end": 5729,
"name": "SWAP1"
},
{
"begin": 5716,
"end": 5729,
"name": "DUP9"
},
{
"begin": 5716,
"end": 5729,
"name": "AND"
},
{
"begin": 5716,
"end": 5729,
"name": "DUP2"
},
{
"begin": 5716,
"end": 5729,
"name": "MSTORE"
},
{
"begin": 5716,
"end": 5729,
"name": "KECCAK256"
},
{
"begin": 5716,
"end": 5729,
"name": "SLOAD"
},
{
"begin": 5716,
"end": 5745,
"name": "PUSH [tag]",
"value": "256"
},
{
"begin": 5716,
"end": 5745,
"name": "SWAP1"
},
{
"begin": 5734,
"end": 5744,
"name": "DUP4"
},
{
"begin": 5716,
"end": 5745,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5716,
"end": 5733,
"name": "PUSH [tag]",
"value": "257"
},
{
"begin": 5716,
"end": 5745,
"name": "AND"
},
{
"begin": 5716,
"end": 5745,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5716,
"end": 5745,
"name": "tag",
"value": "256"
},
{
"begin": 5716,
"end": 5745,
"name": "JUMPDEST"
},
{
"begin": 5700,
"end": 5713,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5700,
"end": 5713,
"name": "DUP8"
},
{
"begin": 5700,
"end": 5713,
"name": "AND"
},
{
"begin": 5700,
"end": 5713,
"name": "PUSH",
"value": "0"
},
{
"begin": 5700,
"end": 5713,
"name": "SWAP1"
},
{
"begin": 5700,
"end": 5713,
"name": "DUP2"
},
{
"begin": 5700,
"end": 5713,
"name": "MSTORE"
},
{
"begin": 5700,
"end": 5708,
"name": "PUSH",
"value": "2"
},
{
"begin": 5700,
"end": 5713,
"name": "PUSH",
"value": "20"
},
{
"begin": 5700,
"end": 5713,
"name": "MSTORE"
},
{
"begin": 5700,
"end": 5713,
"name": "PUSH",
"value": "40"
},
{
"begin": 5700,
"end": 5713,
"name": "DUP2"
},
{
"begin": 5700,
"end": 5713,
"name": "KECCAK256"
},
{
"begin": 5700,
"end": 5745,
"name": "SWAP2"
},
{
"begin": 5700,
"end": 5745,
"name": "SWAP1"
},
{
"begin": 5700,
"end": 5745,
"name": "SWAP2"
},
{
"begin": 5700,
"end": 5745,
"name": "SSTORE"
},
{
"begin": 5759,
"end": 5766,
"name": "DUP4"
},
{
"begin": 5759,
"end": 5766,
"name": "GT"
},
{
"begin": 5755,
"end": 5876,
"name": "ISZERO"
},
{
"begin": 5755,
"end": 5876,
"name": "PUSH [tag]",
"value": "258"
},
{
"begin": 5755,
"end": 5876,
"name": "JUMPI"
},
{
"begin": 5800,
"end": 5815,
"name": "PUSH",
"value": "0"
},
{
"begin": 5809,
"end": 5814,
"name": "DUP1"
},
{
"begin": 5809,
"end": 5814,
"name": "SLOAD"
},
{
"begin": 5809,
"end": 5814,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5809,
"end": 5814,
"name": "AND"
},
{
"begin": 5800,
"end": 5815,
"name": "DUP2"
},
{
"begin": 5800,
"end": 5815,
"name": "MSTORE"
},
{
"begin": 5800,
"end": 5808,
"name": "PUSH",
"value": "2"
},
{
"begin": 5800,
"end": 5815,
"name": "PUSH",
"value": "20"
},
{
"begin": 5800,
"end": 5815,
"name": "MSTORE"
},
{
"begin": 5800,
"end": 5815,
"name": "PUSH",
"value": "40"
},
{
"begin": 5800,
"end": 5815,
"name": "SWAP1"
},
{
"begin": 5800,
"end": 5815,
"name": "KECCAK256"
},
{
"begin": 5800,
"end": 5815,
"name": "SLOAD"
},
{
"begin": 5800,
"end": 5824,
"name": "PUSH [tag]",
"value": "259"
},
{
"begin": 5800,
"end": 5824,
"name": "SWAP1"
},
{
"begin": 5820,
"end": 5823,
"name": "DUP5"
},
{
"begin": 5800,
"end": 5824,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 5800,
"end": 5819,
"name": "PUSH [tag]",
"value": "257"
},
{
"begin": 5800,
"end": 5824,
"name": "AND"
},
{
"begin": 5800,
"end": 5824,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 5800,
"end": 5824,
"name": "tag",
"value": "259"
},
{
"begin": 5800,
"end": 5824,
"name": "JUMPDEST"
},
{
"begin": 5782,
"end": 5797,
"name": "PUSH",
"value": "0"
},
{
"begin": 5791,
"end": 5796,
"name": "DUP1"
},
{
"begin": 5791,
"end": 5796,
"name": "SLOAD"
},
{
"begin": 5791,
"end": 5796,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5791,
"end": 5796,
"name": "SWAP1"
},
{
"begin": 5791,
"end": 5796,
"name": "DUP2"
},
{
"begin": 5791,
"end": 5796,
"name": "AND"
},
{
"begin": 5782,
"end": 5797,
"name": "DUP3"
},
{
"begin": 5782,
"end": 5797,
"name": "MSTORE"
},
{
"begin": 5782,
"end": 5790,
"name": "PUSH",
"value": "2"
},
{
"begin": 5782,
"end": 5797,
"name": "PUSH",
"value": "20"
},
{
"begin": 5782,
"end": 5797,
"name": "MSTORE"
},
{
"begin": 5782,
"end": 5797,
"name": "PUSH",
"value": "40"
},
{
"begin": 5782,
"end": 5797,
"name": "DUP1"
},
{
"begin": 5782,
"end": 5797,
"name": "DUP4"
},
{
"begin": 5782,
"end": 5797,
"name": "KECCAK256"
},
{
"begin": 5782,
"end": 5824,
"name": "SWAP4"
},
{
"begin": 5782,
"end": 5824,
"name": "SWAP1"
},
{
"begin": 5782,
"end": 5824,
"name": "SWAP4"
},
{
"begin": 5782,
"end": 5824,
"name": "SSTORE"
},
{
"begin": 5854,
"end": 5859,
"name": "SWAP1"
},
{
"begin": 5854,
"end": 5859,
"name": "SLOAD"
},
{
"begin": 5854,
"end": 5859,
"name": "DUP2"
},
{
"begin": 5854,
"end": 5859,
"name": "AND"
},
{
"begin": 5854,
"end": 5859,
"name": "SWAP2"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP1"
},
{
"begin": 5838,
"end": 5865,
"name": "DUP10"
},
{
"begin": 5838,
"end": 5865,
"name": "AND"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP1"
},
{
"begin": 5838,
"end": 5865,
"name": "PUSH",
"value": "DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP1"
},
{
"begin": 5861,
"end": 5864,
"name": "DUP7"
},
{
"begin": 5861,
"end": 5864,
"name": "SWAP1"
},
{
"begin": 5838,
"end": 5865,
"name": "MLOAD"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP1"
},
{
"begin": 5838,
"end": 5865,
"name": "DUP2"
},
{
"begin": 5838,
"end": 5865,
"name": "MSTORE"
},
{
"begin": 5838,
"end": 5865,
"name": "PUSH",
"value": "20"
},
{
"begin": 5838,
"end": 5865,
"name": "ADD"
},
{
"begin": 5838,
"end": 5865,
"name": "PUSH",
"value": "40"
},
{
"begin": 5838,
"end": 5865,
"name": "MLOAD"
},
{
"begin": 5838,
"end": 5865,
"name": "DUP1"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP2"
},
{
"begin": 5838,
"end": 5865,
"name": "SUB"
},
{
"begin": 5838,
"end": 5865,
"name": "SWAP1"
},
{
"begin": 5838,
"end": 5865,
"name": "LOG3"
},
{
"begin": 5755,
"end": 5876,
"name": "tag",
"value": "258"
},
{
"begin": 5755,
"end": 5876,
"name": "JUMPDEST"
},
{
"begin": 5901,
"end": 5904,
"name": "DUP6"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5885,
"end": 5917,
"name": "AND"
},
{
"begin": 5894,
"end": 5899,
"name": "DUP8"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 5885,
"end": 5917,
"name": "AND"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
},
{
"begin": 5906,
"end": 5916,
"name": "DUP5"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "40"
},
{
"begin": 5885,
"end": 5917,
"name": "MLOAD"
},
{
"begin": 5885,
"end": 5917,
"name": "SWAP1"
},
{
"begin": 5885,
"end": 5917,
"name": "DUP2"
},
{
"begin": 5885,
"end": 5917,
"name": "MSTORE"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "20"
},
{
"begin": 5885,
"end": 5917,
"name": "ADD"
},
{
"begin": 5885,
"end": 5917,
"name": "PUSH",
"value": "40"
},
{
"begin": 5885,
"end": 5917,
"name": "MLOAD"
},
{
"begin": 5885,
"end": 5917,
"name": "DUP1"
},
{
"begin": 5885,
"end": 5917,
"name": "SWAP2"
},
{
"begin": 5885,
"end": 5917,
"name": "SUB"
},
{
"begin": 5885,
"end": 5917,
"name": "SWAP1"
},
{
"begin": 5885,
"end": 5917,
"name": "LOG3"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "POP"
},
{
"begin": 5044,
"end": 5924,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 4216,
"end": 4330,
"name": "tag",
"value": "183"
},
{
"begin": 4216,
"end": 4330,
"name": "JUMPDEST"
},
{
"begin": 4307,
"end": 4323,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 4307,
"end": 4323,
"name": "AND"
},
{
"begin": 4276,
"end": 4288,
"name": "PUSH",
"value": "0"
},
{
"begin": 4307,
"end": 4323,
"name": "SWAP1"
},
{
"begin": 4307,
"end": 4323,
"name": "DUP2"
},
{
"begin": 4307,
"end": 4323,
"name": "MSTORE"
},
{
"begin": 4307,
"end": 4315,
"name": "PUSH",
"value": "2"
},
{
"begin": 4307,
"end": 4323,
"name": "PUSH",
"value": "20"
},
{
"begin": 4307,
"end": 4323,
"name": "MSTORE"
},
{
"begin": 4307,
"end": 4323,
"name": "PUSH",
"value": "40"
},
{
"begin": 4307,
"end": 4323,
"name": "SWAP1"
},
{
"begin": 4307,
"end": 4323,
"name": "KECCAK256"
},
{
"begin": 4307,
"end": 4323,
"name": "SLOAD"
},
{
"begin": 4307,
"end": 4323,
"name": "SWAP1"
},
{
"begin": 4216,
"end": 4330,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 3445,
"end": 4005,
"name": "tag",
"value": "202"
},
{
"begin": 3445,
"end": 4005,
"name": "JUMPDEST"
},
{
"begin": 3530,
"end": 3538,
"name": "PUSH",
"value": "0"
},
{
"begin": 3530,
"end": 3538,
"name": "DUP1"
},
{
"begin": 3512,
"end": 3518,
"name": "PUSH",
"value": "40"
},
{
"begin": 3251,
"end": 3259,
"name": "PUSH",
"value": "44"
},
{
"begin": 3233,
"end": 3241,
"name": "CALLDATASIZE"
},
{
"begin": 3233,
"end": 3259,
"name": "LT"
},
{
"begin": 3231,
"end": 3260,
"name": "ISZERO"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH [tag]",
"value": "262"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPI"
},
{
"begin": 3223,
"end": 3261,
"name": "PUSH",
"value": "0"
},
{
"begin": 3223,
"end": 3261,
"name": "DUP1"
},
{
"begin": 3223,
"end": 3261,
"name": "REVERT"
},
{
"begin": 3223,
"end": 3261,
"name": "tag",
"value": "262"
},
{
"begin": 3223,
"end": 3261,
"name": "JUMPDEST"
},
{
"begin": 3541,
"end": 3581,
"name": "PUSH [tag]",
"value": "264"
},
{
"begin": 3575,
"end": 3580,
"name": "PUSH",
"value": "2710"
},
{
"begin": 3542,
"end": 3569,
"name": "PUSH [tag]",
"value": "248"
},
{
"begin": 3553,
"end": 3568,
"name": "PUSH",
"value": "3"
},
{
"begin": 3553,
"end": 3568,
"name": "SLOAD"
},
{
"begin": 3542,
"end": 3548,
"name": "DUP8"
},
{
"begin": 3542,
"end": 3552,
"name": "PUSH [tag]",
"value": "209"
},
{
"begin": 3542,
"end": 3552,
"name": "SWAP1"
},
{
"begin": 3542,
"end": 3569,
"name": "SWAP2"
},
{
"begin": 3542,
"end": 3569,
"name": "SWAP1"
},
{
"begin": 3542,
"end": 3569,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 3542,
"end": 3569,
"name": "AND"
},
{
"begin": 3542,
"end": 3569,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 3541,
"end": 3581,
"name": "tag",
"value": "264"
},
{
"begin": 3541,
"end": 3581,
"name": "JUMPDEST"
},
{
"begin": 3530,
"end": 3581,
"name": "SWAP3"
},
{
"begin": 3530,
"end": 3581,
"name": "POP"
},
{
"begin": 3601,
"end": 3611,
"name": "PUSH",
"value": "4"
},
{
"begin": 3601,
"end": 3611,
"name": "SLOAD"
},
{
"begin": 3595,
"end": 3598,
"name": "DUP4"
},
{
"begin": 3595,
"end": 3611,
"name": "GT"
},
{
"begin": 3591,
"end": 3654,
"name": "ISZERO"
},
{
"begin": 3591,
"end": 3654,
"name": "PUSH [tag]",
"value": "266"
},
{
"begin": 3591,
"end": 3654,
"name": "JUMPI"
},
{
"begin": 3633,
"end": 3643,
"name": "PUSH",
"value": "4"
},
{
"begin": 3633,
"end": 3643,
"name": "SLOAD"
},
{
"begin": 3627,
"end": 3643,
"name": "SWAP3"
},
{
"begin": 3627,
"end": 3643,
"name": "POP"
},
{
"begin": 3591,
"end": 3654,
"name": "tag",
"value": "266"
},
{
"begin": 3591,
"end": 3654,
"name": "JUMPDEST"
},
{
"begin": 3681,
"end": 3696,
"name": "PUSH [tag]",
"value": "267"
},
{
"begin": 3681,
"end": 3687,
"name": "DUP5"
},
{
"begin": 3692,
"end": 3695,
"name": "DUP5"
},
{
"begin": 3681,
"end": 3696,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 3681,
"end": 3691,
"name": "PUSH [tag]",
"value": "253"
},
{
"begin": 3681,
"end": 3696,
"name": "AND"
},
{
"begin": 3681,
"end": 3696,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 3681,
"end": 3696,
"name": "tag",
"value": "267"
},
{
"begin": 3681,
"end": 3696,
"name": "JUMPDEST"
},
{
"begin": 3729,
"end": 3749,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3738,
"end": 3748,
"name": "CALLER"
},
{
"begin": 3729,
"end": 3749,
"name": "AND"
},
{
"begin": 3729,
"end": 3749,
"name": "PUSH",
"value": "0"
},
{
"begin": 3729,
"end": 3749,
"name": "SWAP1"
},
{
"begin": 3729,
"end": 3749,
"name": "DUP2"
},
{
"begin": 3729,
"end": 3749,
"name": "MSTORE"
},
{
"begin": 3729,
"end": 3737,
"name": "PUSH",
"value": "2"
},
{
"begin": 3729,
"end": 3749,
"name": "PUSH",
"value": "20"
},
{
"begin": 3729,
"end": 3749,
"name": "MSTORE"
},
{
"begin": 3729,
"end": 3749,
"name": "PUSH",
"value": "40"
},
{
"begin": 3729,
"end": 3749,
"name": "SWAP1"
},
{
"begin": 3729,
"end": 3749,
"name": "KECCAK256"
},
{
"begin": 3729,
"end": 3749,
"name": "SLOAD"
},
{
"begin": 3663,
"end": 3696,
"name": "SWAP1"
},
{
"begin": 3663,
"end": 3696,
"name": "SWAP3"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 3729,
"end": 3761,
"name": "PUSH [tag]",
"value": "268"
},
{
"begin": 3729,
"end": 3761,
"name": "SWAP1"
},
{
"begin": 3754,
"end": 3760,
"name": "DUP6"
},
{
"begin": 3729,
"end": 3761,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 3729,
"end": 3753,
"name": "PUSH [tag]",
"value": "253"
},
{
"begin": 3729,
"end": 3761,
"name": "AND"
},
{
"begin": 3729,
"end": 3761,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 3729,
"end": 3761,
"name": "tag",
"value": "268"
},
{
"begin": 3729,
"end": 3761,
"name": "JUMPDEST"
},
{
"begin": 3706,
"end": 3726,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3715,
"end": 3725,
"name": "CALLER"
},
{
"begin": 3706,
"end": 3726,
"name": "DUP2"
},
{
"begin": 3706,
"end": 3726,
"name": "AND"
},
{
"begin": 3706,
"end": 3726,
"name": "PUSH",
"value": "0"
},
{
"begin": 3706,
"end": 3726,
"name": "SWAP1"
},
{
"begin": 3706,
"end": 3726,
"name": "DUP2"
},
{
"begin": 3706,
"end": 3726,
"name": "MSTORE"
},
{
"begin": 3706,
"end": 3714,
"name": "PUSH",
"value": "2"
},
{
"begin": 3706,
"end": 3726,
"name": "PUSH",
"value": "20"
},
{
"begin": 3706,
"end": 3726,
"name": "MSTORE"
},
{
"begin": 3706,
"end": 3726,
"name": "PUSH",
"value": "40"
},
{
"begin": 3706,
"end": 3726,
"name": "DUP1"
},
{
"begin": 3706,
"end": 3726,
"name": "DUP3"
},
{
"begin": 3706,
"end": 3726,
"name": "KECCAK256"
},
{
"begin": 3706,
"end": 3761,
"name": "SWAP4"
},
{
"begin": 3706,
"end": 3761,
"name": "SWAP1"
},
{
"begin": 3706,
"end": 3761,
"name": "SWAP4"
},
{
"begin": 3706,
"end": 3761,
"name": "SSTORE"
},
{
"begin": 3787,
"end": 3800,
"name": "SWAP1"
},
{
"begin": 3787,
"end": 3800,
"name": "DUP8"
},
{
"begin": 3787,
"end": 3800,
"name": "AND"
},
{
"begin": 3787,
"end": 3800,
"name": "DUP2"
},
{
"begin": 3787,
"end": 3800,
"name": "MSTORE"
},
{
"begin": 3787,
"end": 3800,
"name": "KECCAK256"
},
{
"begin": 3787,
"end": 3800,
"name": "SLOAD"
},
{
"begin": 3787,
"end": 3816,
"name": "PUSH [tag]",
"value": "269"
},
{
"begin": 3787,
"end": 3816,
"name": "SWAP1"
},
{
"begin": 3805,
"end": 3815,
"name": "DUP4"
},
{
"begin": 3787,
"end": 3816,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 3787,
"end": 3804,
"name": "PUSH [tag]",
"value": "257"
},
{
"begin": 3787,
"end": 3816,
"name": "AND"
},
{
"begin": 3787,
"end": 3816,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 3787,
"end": 3816,
"name": "tag",
"value": "269"
},
{
"begin": 3787,
"end": 3816,
"name": "JUMPDEST"
},
{
"begin": 3771,
"end": 3784,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3771,
"end": 3784,
"name": "DUP7"
},
{
"begin": 3771,
"end": 3784,
"name": "AND"
},
{
"begin": 3771,
"end": 3784,
"name": "PUSH",
"value": "0"
},
{
"begin": 3771,
"end": 3784,
"name": "SWAP1"
},
{
"begin": 3771,
"end": 3784,
"name": "DUP2"
},
{
"begin": 3771,
"end": 3784,
"name": "MSTORE"
},
{
"begin": 3771,
"end": 3779,
"name": "PUSH",
"value": "2"
},
{
"begin": 3771,
"end": 3784,
"name": "PUSH",
"value": "20"
},
{
"begin": 3771,
"end": 3784,
"name": "MSTORE"
},
{
"begin": 3771,
"end": 3784,
"name": "PUSH",
"value": "40"
},
{
"begin": 3771,
"end": 3784,
"name": "DUP2"
},
{
"begin": 3771,
"end": 3784,
"name": "KECCAK256"
},
{
"begin": 3771,
"end": 3816,
"name": "SWAP2"
},
{
"begin": 3771,
"end": 3816,
"name": "SWAP1"
},
{
"begin": 3771,
"end": 3816,
"name": "SWAP2"
},
{
"begin": 3771,
"end": 3816,
"name": "SSTORE"
},
{
"begin": 3830,
"end": 3837,
"name": "DUP4"
},
{
"begin": 3830,
"end": 3837,
"name": "GT"
},
{
"begin": 3826,
"end": 3952,
"name": "ISZERO"
},
{
"begin": 3826,
"end": 3952,
"name": "PUSH [tag]",
"value": "270"
},
{
"begin": 3826,
"end": 3952,
"name": "JUMPI"
},
{
"begin": 3871,
"end": 3886,
"name": "PUSH",
"value": "0"
},
{
"begin": 3880,
"end": 3885,
"name": "DUP1"
},
{
"begin": 3880,
"end": 3885,
"name": "SLOAD"
},
{
"begin": 3880,
"end": 3885,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3880,
"end": 3885,
"name": "AND"
},
{
"begin": 3871,
"end": 3886,
"name": "DUP2"
},
{
"begin": 3871,
"end": 3886,
"name": "MSTORE"
},
{
"begin": 3871,
"end": 3879,
"name": "PUSH",
"value": "2"
},
{
"begin": 3871,
"end": 3886,
"name": "PUSH",
"value": "20"
},
{
"begin": 3871,
"end": 3886,
"name": "MSTORE"
},
{
"begin": 3871,
"end": 3886,
"name": "PUSH",
"value": "40"
},
{
"begin": 3871,
"end": 3886,
"name": "SWAP1"
},
{
"begin": 3871,
"end": 3886,
"name": "KECCAK256"
},
{
"begin": 3871,
"end": 3886,
"name": "SLOAD"
},
{
"begin": 3871,
"end": 3895,
"name": "PUSH [tag]",
"value": "271"
},
{
"begin": 3871,
"end": 3895,
"name": "SWAP1"
},
{
"begin": 3891,
"end": 3894,
"name": "DUP5"
},
{
"begin": 3871,
"end": 3895,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 3871,
"end": 3890,
"name": "PUSH [tag]",
"value": "257"
},
{
"begin": 3871,
"end": 3895,
"name": "AND"
},
{
"begin": 3871,
"end": 3895,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 3871,
"end": 3895,
"name": "tag",
"value": "271"
},
{
"begin": 3871,
"end": 3895,
"name": "JUMPDEST"
},
{
"begin": 3853,
"end": 3868,
"name": "PUSH",
"value": "0"
},
{
"begin": 3862,
"end": 3867,
"name": "DUP1"
},
{
"begin": 3862,
"end": 3867,
"name": "SLOAD"
},
{
"begin": 3862,
"end": 3867,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3862,
"end": 3867,
"name": "SWAP1"
},
{
"begin": 3862,
"end": 3867,
"name": "DUP2"
},
{
"begin": 3862,
"end": 3867,
"name": "AND"
},
{
"begin": 3853,
"end": 3868,
"name": "DUP3"
},
{
"begin": 3853,
"end": 3868,
"name": "MSTORE"
},
{
"begin": 3853,
"end": 3861,
"name": "PUSH",
"value": "2"
},
{
"begin": 3853,
"end": 3868,
"name": "PUSH",
"value": "20"
},
{
"begin": 3853,
"end": 3868,
"name": "MSTORE"
},
{
"begin": 3853,
"end": 3868,
"name": "PUSH",
"value": "40"
},
{
"begin": 3853,
"end": 3868,
"name": "DUP1"
},
{
"begin": 3853,
"end": 3868,
"name": "DUP4"
},
{
"begin": 3853,
"end": 3868,
"name": "KECCAK256"
},
{
"begin": 3853,
"end": 3895,
"name": "SWAP4"
},
{
"begin": 3853,
"end": 3895,
"name": "SWAP1"
},
{
"begin": 3853,
"end": 3895,
"name": "SWAP4"
},
{
"begin": 3853,
"end": 3895,
"name": "SSTORE"
},
{
"begin": 3930,
"end": 3935,
"name": "SWAP1"
},
{
"begin": 3930,
"end": 3935,
"name": "SLOAD"
},
{
"begin": 3930,
"end": 3935,
"name": "DUP2"
},
{
"begin": 3930,
"end": 3935,
"name": "AND"
},
{
"begin": 3930,
"end": 3935,
"name": "SWAP2"
},
{
"begin": 3918,
"end": 3928,
"name": "CALLER"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP1"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP2"
},
{
"begin": 3909,
"end": 3941,
"name": "AND"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP1"
},
{
"begin": 3909,
"end": 3941,
"name": "PUSH",
"value": "DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP1"
},
{
"begin": 3937,
"end": 3940,
"name": "DUP7"
},
{
"begin": 3937,
"end": 3940,
"name": "SWAP1"
},
{
"begin": 3909,
"end": 3941,
"name": "MLOAD"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP1"
},
{
"begin": 3909,
"end": 3941,
"name": "DUP2"
},
{
"begin": 3909,
"end": 3941,
"name": "MSTORE"
},
{
"begin": 3909,
"end": 3941,
"name": "PUSH",
"value": "20"
},
{
"begin": 3909,
"end": 3941,
"name": "ADD"
},
{
"begin": 3909,
"end": 3941,
"name": "PUSH",
"value": "40"
},
{
"begin": 3909,
"end": 3941,
"name": "MLOAD"
},
{
"begin": 3909,
"end": 3941,
"name": "DUP1"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP2"
},
{
"begin": 3909,
"end": 3941,
"name": "SUB"
},
{
"begin": 3909,
"end": 3941,
"name": "SWAP1"
},
{
"begin": 3909,
"end": 3941,
"name": "LOG3"
},
{
"begin": 3826,
"end": 3952,
"name": "tag",
"value": "270"
},
{
"begin": 3826,
"end": 3952,
"name": "JUMPDEST"
},
{
"begin": 3982,
"end": 3985,
"name": "DUP5"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3961,
"end": 3998,
"name": "AND"
},
{
"begin": 3970,
"end": 3980,
"name": "CALLER"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3961,
"end": 3998,
"name": "AND"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "DDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
},
{
"begin": 3987,
"end": 3997,
"name": "DUP5"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "40"
},
{
"begin": 3961,
"end": 3998,
"name": "MLOAD"
},
{
"begin": 3961,
"end": 3998,
"name": "SWAP1"
},
{
"begin": 3961,
"end": 3998,
"name": "DUP2"
},
{
"begin": 3961,
"end": 3998,
"name": "MSTORE"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "20"
},
{
"begin": 3961,
"end": 3998,
"name": "ADD"
},
{
"begin": 3961,
"end": 3998,
"name": "PUSH",
"value": "40"
},
{
"begin": 3961,
"end": 3998,
"name": "MLOAD"
},
{
"begin": 3961,
"end": 3998,
"name": "DUP1"
},
{
"begin": 3961,
"end": 3998,
"name": "SWAP2"
},
{
"begin": 3961,
"end": 3998,
"name": "SUB"
},
{
"begin": 3961,
"end": 3998,
"name": "SWAP1"
},
{
"begin": 3961,
"end": 3998,
"name": "LOG3"
},
{
"begin": 3445,
"end": 4005,
"name": "POP"
},
{
"begin": 3445,
"end": 4005,
"name": "POP"
},
{
"begin": 3445,
"end": 4005,
"name": "POP"
},
{
"begin": 3445,
"end": 4005,
"name": "POP"
},
{
"begin": 3445,
"end": 4005,
"name": "POP"
},
{
"begin": 3445,
"end": 4005,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 206,
"end": 407,
"name": "tag",
"value": "209"
},
{
"begin": 206,
"end": 407,
"name": "JUMPDEST"
},
{
"begin": 264,
"end": 271,
"name": "PUSH",
"value": "0"
},
{
"begin": 264,
"end": 271,
"name": "DUP1"
},
{
"begin": 287,
"end": 293,
"name": "DUP4"
},
{
"begin": 287,
"end": 293,
"name": "ISZERO"
},
{
"begin": 283,
"end": 328,
"name": "ISZERO"
},
{
"begin": 283,
"end": 328,
"name": "PUSH [tag]",
"value": "273"
},
{
"begin": 283,
"end": 328,
"name": "JUMPI"
},
{
"begin": 316,
"end": 317,
"name": "PUSH",
"value": "0"
},
{
"begin": 309,
"end": 317,
"name": "SWAP2"
},
{
"begin": 309,
"end": 317,
"name": "POP"
},
{
"begin": 309,
"end": 317,
"name": "PUSH [tag]",
"value": "272"
},
{
"begin": 309,
"end": 317,
"name": "JUMP"
},
{
"begin": 283,
"end": 328,
"name": "tag",
"value": "273"
},
{
"begin": 283,
"end": 328,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 349,
"end": 354,
"name": "DUP3"
},
{
"begin": 349,
"end": 354,
"name": "DUP3"
},
{
"begin": 349,
"end": 354,
"name": "MUL"
},
{
"begin": 353,
"end": 354,
"name": "DUP3"
},
{
"begin": 349,
"end": 350,
"name": "DUP5"
},
{
"begin": 349,
"end": 354,
"name": "DUP3"
},
{
"begin": 371,
"end": 376,
"name": "DUP2"
},
{
"begin": 371,
"end": 376,
"name": "ISZERO"
},
{
"begin": 371,
"end": 376,
"name": "ISZERO"
},
{
"begin": 371,
"end": 376,
"name": "PUSH [tag]",
"value": "274"
},
{
"begin": 371,
"end": 376,
"name": "JUMPI"
},
{
"begin": 371,
"end": 376,
"name": "INVALID"
},
{
"begin": 371,
"end": 376,
"name": "tag",
"value": "274"
},
{
"begin": 371,
"end": 376,
"name": "JUMPDEST"
},
{
"begin": 371,
"end": 376,
"name": "DIV"
},
{
"begin": 371,
"end": 381,
"name": "EQ"
},
{
"begin": 364,
"end": 382,
"name": "PUSH [tag]",
"value": "275"
},
{
"begin": 364,
"end": 382,
"name": "JUMPI"
},
{
"begin": 364,
"end": 382,
"name": "INVALID"
},
{
"begin": 364,
"end": 382,
"name": "tag",
"value": "275"
},
{
"begin": 364,
"end": 382,
"name": "JUMPDEST"
},
{
"begin": 399,
"end": 400,
"name": "DUP1"
},
{
"begin": 392,
"end": 400,
"name": "SWAP2"
},
{
"begin": 392,
"end": 400,
"name": "POP"
},
{
"begin": 206,
"end": 407,
"name": "tag",
"value": "272"
},
{
"begin": 206,
"end": 407,
"name": "JUMPDEST"
},
{
"begin": 206,
"end": 407,
"name": "POP"
},
{
"begin": 206,
"end": 407,
"name": "SWAP3"
},
{
"begin": 206,
"end": 407,
"name": "SWAP2"
},
{
"begin": 206,
"end": 407,
"name": "POP"
},
{
"begin": 206,
"end": 407,
"name": "POP"
},
{
"begin": 206,
"end": 407,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 7052,
"end": 7195,
"name": "tag",
"value": "226"
},
{
"begin": 7052,
"end": 7195,
"name": "JUMPDEST"
},
{
"begin": 7163,
"end": 7178,
"name": "PUSH",
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 7163,
"end": 7178,
"name": "SWAP2"
},
{
"begin": 7163,
"end": 7178,
"name": "DUP3"
},
{
"begin": 7163,
"end": 7178,
"name": "AND"
},
{
"begin": 7130,
"end": 7144,
"name": "PUSH",
"value": "0"
},
{
"begin": 7163,
"end": 7178,
"name": "SWAP1"
},
{
"begin": 7163,
"end": 7178,
"name": "DUP2"
},
{
"begin": 7163,
"end": 7178,
"name": "MSTORE"
},
{
"begin": 7163,
"end": 7170,
"name": "PUSH",
"value": "5"
},
{
"begin": 7163,
"end": 7178,
"name": "PUSH",
"value": "20"
},
{
"begin": 7163,
"end": 7178,
"name": "SWAP1"
},
{
"begin": 7163,
"end": 7178,
"name": "DUP2"
},
{
"begin": 7163,
"end": 7178,
"name": "MSTORE"
},
{
"begin": 7163,
"end": 7178,
"name": "PUSH",
"value": "40"
},
{
"begin": 7163,
"end": 7178,
"name": "DUP1"
},
{
"begin": 7163,
"end": 7178,
"name": "DUP4"
},
{
"begin": 7163,
"end": 7178,
"name": "KECCAK256"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP4"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP1"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP5"
},
{
"begin": 7163,
"end": 7188,
"name": "AND"
},
{
"begin": 7163,
"end": 7188,
"name": "DUP3"
},
{
"begin": 7163,
"end": 7188,
"name": "MSTORE"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP2"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP1"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP2"
},
{
"begin": 7163,
"end": 7188,
"name": "MSTORE"
},
{
"begin": 7163,
"end": 7188,
"name": "KECCAK256"
},
{
"begin": 7163,
"end": 7188,
"name": "SLOAD"
},
{
"begin": 7163,
"end": 7188,
"name": "SWAP1"
},
{
"begin": 7052,
"end": 7195,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 413,
"end": 696,
"name": "tag",
"value": "249"
},
{
"begin": 413,
"end": 696,
"name": "JUMPDEST"
},
{
"begin": 471,
"end": 478,
"name": "PUSH",
"value": "0"
},
{
"begin": 568,
"end": 577,
"name": "DUP1"
},
{
"begin": 584,
"end": 585,
"name": "DUP3"
},
{
"begin": 580,
"end": 581,
"name": "DUP5"
},
{
"begin": 580,
"end": 585,
"name": "DUP2"
},
{
"begin": 580,
"end": 585,
"name": "ISZERO"
},
{
"begin": 580,
"end": 585,
"name": "ISZERO"
},
{
"begin": 580,
"end": 585,
"name": "PUSH [tag]",
"value": "278"
},
{
"begin": 580,
"end": 585,
"name": "JUMPI"
},
{
"begin": 580,
"end": 585,
"name": "INVALID"
},
{
"begin": 580,
"end": 585,
"name": "tag",
"value": "278"
},
{
"begin": 580,
"end": 585,
"name": "JUMPDEST"
},
{
"begin": 580,
"end": 585,
"name": "DIV"
},
{
"begin": 580,
"end": 585,
"name": "SWAP5"
},
{
"begin": 413,
"end": 696,
"name": "SWAP4"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 413,
"end": 696,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 702,
"end": 822,
"name": "tag",
"value": "253"
},
{
"begin": 702,
"end": 822,
"name": "JUMPDEST"
},
{
"begin": 760,
"end": 767,
"name": "PUSH",
"value": "0"
},
{
"begin": 786,
"end": 792,
"name": "DUP3"
},
{
"begin": 786,
"end": 792,
"name": "DUP3"
},
{
"begin": 786,
"end": 792,
"name": "GT"
},
{
"begin": 786,
"end": 792,
"name": "ISZERO"
},
{
"begin": 779,
"end": 793,
"name": "PUSH [tag]",
"value": "280"
},
{
"begin": 779,
"end": 793,
"name": "JUMPI"
},
{
"begin": 779,
"end": 793,
"name": "INVALID"
},
{
"begin": 779,
"end": 793,
"name": "tag",
"value": "280"
},
{
"begin": 779,
"end": 793,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 810,
"end": 815,
"name": "SWAP1"
},
{
"begin": 810,
"end": 815,
"name": "SUB"
},
{
"begin": 810,
"end": 815,
"name": "SWAP1"
},
{
"begin": 702,
"end": 822,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 828,
"end": 971,
"name": "tag",
"value": "257"
},
{
"begin": 828,
"end": 971,
"name": "JUMPDEST"
},
{
"begin": 886,
"end": 893,
"name": "PUSH",
"value": "0"
},
{
"begin": 917,
"end": 922,
"name": "DUP3"
},
{
"begin": 917,
"end": 922,
"name": "DUP3"
},
{
"begin": 917,
"end": 922,
"name": "ADD"
},
{
"begin": 939,
"end": 945,
"name": "DUP4"
},
{
"begin": 939,
"end": 945,
"name": "DUP2"
},
{
"begin": 939,
"end": 945,
"name": "LT"
},
{
"begin": 939,
"end": 945,
"name": "ISZERO"
},
{
"begin": 932,
"end": 946,
"name": "PUSH [tag]",
"value": "275"
},
{
"begin": 932,
"end": 946,
"name": "JUMPI"
},
{
"begin": 932,
"end": 946,
"name": "INVALID"
}
]
}
}
},
"methodIdentifiers": {
"MAX_UINT()": "e5b5019a",
"_totalSupply()": "3eaaf86b",
"addBlackList(address)": "0ecb93c0",
"allowance(address,address)": "dd62ed3e",
"allowed(address,address)": "5c658165",
"approve(address,uint256)": "095ea7b3",
"balanceOf(address)": "70a08231",
"balances(address)": "27e235e3",
"basisPointsRate()": "dd644f72",
"decimals()": "313ce567",
"deprecate(address)": "0753c30c",
"deprecated()": "0e136b19",
"destroyBlackFunds(address)": "f3bdc228",
"getBlackListStatus(address)": "59bf1abe",
"getOwner()": "893d20e8",
"isBlackListed(address)": "e47d6060",
"issue(uint256)": "cc872b66",
"maximumFee()": "35390714",
"name()": "06fdde03",
"owner()": "8da5cb5b",
"pause()": "8456cb59",
"paused()": "5c975abb",
"redeem(uint256)": "db006a75",
"removeBlackList(address)": "e4997dc5",
"setParams(uint256,uint256)": "c0324c77",
"symbol()": "95d89b41",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferFrom(address,address,uint256)": "23b872dd",
"transferOwnership(address)": "f2fde38b",
"unpause()": "3f4ba83a",
"upgradedAddress()": "26976e3f"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.4.18+commit.9cf6e910\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_upgradedAddress\",\"type\":\"address\"}],\"name\":\"deprecate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_spender\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"deprecated\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_evilUser\",\"type\":\"address\"}],\"name\":\"addBlackList\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"upgradedAddress\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"balances\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"maximumFee\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"_totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_maker\",\"type\":\"address\"}],\"name\":\"getBlackListStatus\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newBasisPoints\",\"type\":\"uint256\"},{\"name\":\"newMaxFee\",\"type\":\"uint256\"}],\"name\":\"setParams\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"issue\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"redeem\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_owner\",\"type\":\"address\"},{\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"remaining\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"basisPointsRate\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"isBlackListed\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_clearedUser\",\"type\":\"address\"}],\"name\":\"removeBlackList\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_UINT\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_blackListedUser\",\"type\":\"address\"}],\"name\":\"destroyBlackFunds\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_initialSupply\",\"type\":\"uint256\"},{\"name\":\"_name\",\"type\":\"string\"},{\"name\":\"_symbol\",\"type\":\"string\"},{\"name\":\"_decimals\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Issue\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Redeem\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"newAddress\",\"type\":\"address\"}],\"name\":\"Deprecate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"feeBasisPoints\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"maxFee\",\"type\":\"uint256\"}],\"name\":\"Params\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_blackListedUser\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"_balance\",\"type\":\"uint256\"}],\"name\":\"DestroyedBlackFunds\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"AddedBlackList\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"RemovedBlackList\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Pause\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpause\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"pause()\":{\"details\":\"called by the owner to pause, triggers stopped state\"},\"transferOwnership(address)\":{\"details\":\"Allows the current owner to transfer control of the contract to a newOwner.\",\"params\":{\"newOwner\":\"The address to transfer ownership to.\"}},\"unpause()\":{\"details\":\"called by the owner to unpause, returns to normal state\"}}},\"userdoc\":{\"methods\":{\"getBlackListStatus(address)\":{\"notice\":\"//// Getters to allow the same blacklist to be used also by other contracts (including upgraded Tether) ///////\"}}}},\"settings\":{\"compilationTarget\":{\"src/Contract.sol\":\"TetherToken\"},\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":1000000},\"remappings\":[\":src/=src/\"]},\"sources\":{\"src/Contract.sol\":{\"keccak256\":\"0x3e0d611f53491f313ae035797ed7ecfd1dfd8db8fef8f82737e6f0cd86d71de7\",\"urls\":[\"bzzr://9c33025fa9d1b8389e4c7c9534a1d70fad91c6c2ad70eb5e4b7dc3a701a5f892\"]}},\"version\":1}",
"userdoc": {
"methods": {
"getBlackListStatus(address)": {
"notice": "//// Getters to allow the same blacklist to be used also by other contracts (including upgraded Tether) ///////"
}
}
}
},
"UpgradedStandardToken": {
"abi": [
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "balances",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "maximumFee",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "_totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "address"
}
],
"name": "allowed",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "from",
"type": "address"
},
{
"name": "to",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "transferByLegacy",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "sender",
"type": "address"
},
{
"name": "from",
"type": "address"
},
{
"name": "spender",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "transferFromByLegacy",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "from",
"type": "address"
},
{
"name": "spender",
"type": "address"
},
{
"name": "value",
"type": "uint256"
}
],
"name": "approveByLegacy",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "remaining",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "basisPointsRate",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "MAX_UINT",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "owner",
"type": "address"
},
{
"indexed": true,
"name": "spender",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "from",
"type": "address"
},
{
"indexed": true,
"name": "to",
"type": "address"
},
{
"indexed": false,
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
}
],
"devdoc": {
"methods": {
"allowance(address,address)": {
"details": "Function to check the amount of tokens than an owner allowed to a spender.",
"params": {
"_owner": "address The address which owns the funds.",
"_spender": "address The address which will spend the funds."
},
"return": "A uint specifying the amount of tokens still available for the spender."
},
"approve(address,uint256)": {
"details": "Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.",
"params": {
"_spender": "The address which will spend the funds.",
"_value": "The amount of tokens to be spent."
}
},
"balanceOf(address)": {
"details": "Gets the balance of the specified address.",
"params": {
"_owner": "The address to query the the balance of."
},
"return": "An uint representing the amount owned by the passed address."
},
"transfer(address,uint256)": {
"details": "transfer token for a specified address",
"params": {
"_to": "The address to transfer to.",
"_value": "The amount to be transferred."
}
},
"transferFrom(address,address,uint256)": {
"details": "Transfer tokens from one address to another",
"params": {
"_from": "address The address which you want to send tokens from",
"_to": "address The address which you want to transfer to",
"_value": "uint the amount of tokens to be transferred"
}
},
"transferOwnership(address)": {
"details": "Allows the current owner to transfer control of the contract to a newOwner.",
"params": {
"newOwner": "The address to transfer ownership to."
}
}
}
},
"evm": {
"assembly": "",
"bytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"deployedBytecode": {
"linkReferences": {},
"object": "",
"opcodes": "",
"sourceMap": ""
},
"gasEstimates": null,
"legacyAssembly": null,
"methodIdentifiers": {
"MAX_UINT()": "e5b5019a",
"_totalSupply()": "3eaaf86b",
"allowance(address,address)": "dd62ed3e",
"allowed(address,address)": "5c658165",
"approve(address,uint256)": "095ea7b3",
"approveByLegacy(address,address,uint256)": "aee92d33",
"balanceOf(address)": "70a08231",
"balances(address)": "27e235e3",
"basisPointsRate()": "dd644f72",
"maximumFee()": "35390714",
"owner()": "8da5cb5b",
"totalSupply()": "18160ddd",
"transfer(address,uint256)": "a9059cbb",
"transferByLegacy(address,address,uint256)": "6e18980a",
"transferFrom(address,address,uint256)": "23b872dd",
"transferFromByLegacy(address,address,address,uint256)": "8b477adb",
"transferOwnership(address)": "f2fde38b"
}
},
"metadata": "",
"userdoc": {
"methods": {}
}
}
}
},
"sources": {
"src/Contract.sol": {
"ast": {
"absolutePath": "src/Contract.sol",
"exportedSymbols": {
"BasicToken": [
347
],
"BlackList": [
717
],
"ERC20": [
205
],
"ERC20Basic": [
169
],
"Ownable": [
139
],
"Pausable": [
603
],
"SafeMath": [
97
],
"StandardToken": [
546
],
"TetherToken": [
1142
],
"UpgradedStandardToken": [
749
]
},
"id": 1143,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.4",
".17"
],
"nodeType": "PragmaDirective",
"src": "67:24:0"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "library",
"documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error",
"fullyImplemented": true,
"id": 97,
"linearizedBaseContracts": [
97
],
"name": "SafeMath",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 33,
"nodeType": "Block",
"src": "273:134:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 12,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 10,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "287:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 11,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "292:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "287:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 16,
"nodeType": "IfStatement",
"src": "283:45:0",
"trueBody": {
"id": 15,
"nodeType": "Block",
"src": "295:33:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"hexValue": "30",
"id": 13,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "316:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"functionReturnParameters": 9,
"id": 14,
"nodeType": "Return",
"src": "309:8:0"
}
]
}
},
{
"assignments": [
18
],
"declarations": [
{
"constant": false,
"id": 18,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 34,
"src": "337:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 17,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "337:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 22,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 21,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 19,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "349:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"id": 20,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 5,
"src": "353:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "349:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "337:17:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 28,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 26,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 24,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 18,
"src": "371:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "/",
"rightExpression": {
"argumentTypes": null,
"id": 25,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "375:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "371:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 27,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 5,
"src": "380:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "371:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 23,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1145,
"src": "364:6:0",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 29,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "364:18:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 30,
"nodeType": "ExpressionStatement",
"src": "364:18:0"
},
{
"expression": {
"argumentTypes": null,
"id": 31,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 18,
"src": "399:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 9,
"id": 32,
"nodeType": "Return",
"src": "392:8:0"
}
]
},
"id": 34,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "mul",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 6,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 34,
"src": "219:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "219:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 5,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 34,
"src": "230:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "230:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "218:22:0"
},
"payable": false,
"returnParameters": {
"id": 9,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 8,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 34,
"src": "264:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 7,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "264:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "263:9:0"
},
"scope": 97,
"src": "206:201:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 51,
"nodeType": "Block",
"src": "480:216:0",
"statements": [
{
"assignments": [
44
],
"declarations": [
{
"constant": false,
"id": 44,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 52,
"src": "568:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 43,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "568:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 48,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 47,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 45,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 36,
"src": "580:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "/",
"rightExpression": {
"argumentTypes": null,
"id": 46,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 38,
"src": "584:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "580:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "568:17:0"
},
{
"expression": {
"argumentTypes": null,
"id": 49,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 44,
"src": "688:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 42,
"id": 50,
"nodeType": "Return",
"src": "681:8:0"
}
]
},
"id": 52,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "div",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 39,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 36,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 52,
"src": "426:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 35,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "426:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 38,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 52,
"src": "437:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 37,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "437:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "425:22:0"
},
"payable": false,
"returnParameters": {
"id": 42,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 41,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 52,
"src": "471:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 40,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "471:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "470:9:0"
},
"scope": 97,
"src": "413:283:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 71,
"nodeType": "Block",
"src": "769:53:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 64,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 62,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 56,
"src": "786:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<=",
"rightExpression": {
"argumentTypes": null,
"id": 63,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 54,
"src": "791:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "786:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 61,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1145,
"src": "779:6:0",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 65,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "779:14:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 66,
"nodeType": "ExpressionStatement",
"src": "779:14:0"
},
{
"expression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 69,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 67,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 54,
"src": "810:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "-",
"rightExpression": {
"argumentTypes": null,
"id": 68,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 56,
"src": "814:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "810:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 60,
"id": 70,
"nodeType": "Return",
"src": "803:12:0"
}
]
},
"id": 72,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "sub",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 57,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 54,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 72,
"src": "715:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 53,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "715:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 56,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 72,
"src": "726:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 55,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "726:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "714:22:0"
},
"payable": false,
"returnParameters": {
"id": 60,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 59,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 72,
"src": "760:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 58,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "760:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "759:9:0"
},
"scope": 97,
"src": "702:120:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 95,
"nodeType": "Block",
"src": "895:76:0",
"statements": [
{
"assignments": [
82
],
"declarations": [
{
"constant": false,
"id": 82,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 96,
"src": "905:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 81,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "905:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 86,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 85,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 83,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 74,
"src": "917:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 84,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 76,
"src": "921:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "917:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "905:17:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 90,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 88,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 82,
"src": "939:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"id": 89,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 74,
"src": "944:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "939:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 87,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1145,
"src": "932:6:0",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 91,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "932:14:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 92,
"nodeType": "ExpressionStatement",
"src": "932:14:0"
},
{
"expression": {
"argumentTypes": null,
"id": 93,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 82,
"src": "963:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 80,
"id": 94,
"nodeType": "Return",
"src": "956:8:0"
}
]
},
"id": 96,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "add",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 77,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 74,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 96,
"src": "841:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 73,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "841:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 76,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 96,
"src": "852:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 75,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "852:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "840:22:0"
},
"payable": false,
"returnParameters": {
"id": 80,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 79,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 96,
"src": "886:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 78,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "886:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "885:9:0"
},
"scope": 97,
"src": "828:143:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
}
],
"scope": 1143,
"src": "183:790:0"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": "@title Ownable\n@dev The Ownable contract has an owner address, and provides basic authorization control\nfunctions, this simplifies the implementation of \"user permissions\".",
"fullyImplemented": true,
"id": 139,
"linearizedBaseContracts": [
139
],
"name": "Ownable",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 99,
"name": "owner",
"nodeType": "VariableDeclaration",
"scope": 139,
"src": "1188:20:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 98,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1188:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "public"
},
{
"body": {
"id": 107,
"nodeType": "Block",
"src": "1368:35:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 105,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 102,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "1378:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 103,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "1386:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 104,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1386:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "1378:18:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 106,
"nodeType": "ExpressionStatement",
"src": "1378:18:0"
}
]
},
"id": 108,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [],
"name": "Ownable",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 100,
"nodeType": "ParameterList",
"parameters": [],
"src": "1358:2:0"
},
"payable": false,
"returnParameters": {
"id": 101,
"nodeType": "ParameterList",
"parameters": [],
"src": "1368:0:0"
},
"scope": 139,
"src": "1342:61:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 118,
"nodeType": "Block",
"src": "1514:56:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 114,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 111,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "1532:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 112,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1532:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 113,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "1546:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "1532:19:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 110,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "1524:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 115,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1524:28:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 116,
"nodeType": "ExpressionStatement",
"src": "1524:28:0"
},
{
"id": 117,
"nodeType": "PlaceholderStatement",
"src": "1562:1:0"
}
]
},
"id": 119,
"name": "onlyOwner",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 109,
"nodeType": "ParameterList",
"parameters": [],
"src": "1511:2:0"
},
"src": "1493:77:0",
"visibility": "internal"
},
{
"body": {
"id": 137,
"nodeType": "Block",
"src": "1800:85:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 130,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 126,
"name": "newOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 121,
"src": "1814:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "30",
"id": 128,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1834:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
}
],
"id": 127,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1826:7:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_address_$",
"typeString": "type(address)"
},
"typeName": "address"
},
"id": 129,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1826:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "1814:22:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 136,
"nodeType": "IfStatement",
"src": "1810:69:0",
"trueBody": {
"id": 135,
"nodeType": "Block",
"src": "1838:41:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 133,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 131,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "1852:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 132,
"name": "newOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 121,
"src": "1860:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "1852:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 134,
"nodeType": "ExpressionStatement",
"src": "1852:16:0"
}
]
}
}
]
},
"id": 138,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 124,
"modifierName": {
"argumentTypes": null,
"id": 123,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "1790:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "1790:9:0"
}
],
"name": "transferOwnership",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 122,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 121,
"name": "newOwner",
"nodeType": "VariableDeclaration",
"scope": 138,
"src": "1765:16:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 120,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1765:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1764:18:0"
},
"payable": false,
"returnParameters": {
"id": 125,
"nodeType": "ParameterList",
"parameters": [],
"src": "1800:0:0"
},
"scope": 139,
"src": "1738:147:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
}
],
"scope": 1143,
"src": "1165:723:0"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20",
"fullyImplemented": false,
"id": 169,
"linearizedBaseContracts": [
169
],
"name": "ERC20Basic",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 141,
"name": "_totalSupply",
"nodeType": "VariableDeclaration",
"scope": 169,
"src": "2043:24:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 140,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2043:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "public"
},
{
"body": null,
"id": 146,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "totalSupply",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 142,
"nodeType": "ParameterList",
"parameters": [],
"src": "2093:2:0"
},
"payable": false,
"returnParameters": {
"id": 145,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 144,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 146,
"src": "2121:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 143,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2121:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2120:6:0"
},
"scope": 169,
"src": "2073:54:0",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 153,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "balanceOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 149,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 148,
"name": "who",
"nodeType": "VariableDeclaration",
"scope": 153,
"src": "2151:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 147,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2151:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2150:13:0"
},
"payable": false,
"returnParameters": {
"id": 152,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 151,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 153,
"src": "2189:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 150,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2189:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2188:6:0"
},
"scope": 169,
"src": "2132:63:0",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 160,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 158,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 155,
"name": "to",
"nodeType": "VariableDeclaration",
"scope": 160,
"src": "2218:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 154,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2218:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 157,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 160,
"src": "2230:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 156,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2230:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2217:24:0"
},
"payable": false,
"returnParameters": {
"id": 159,
"nodeType": "ParameterList",
"parameters": [],
"src": "2248:0:0"
},
"scope": 169,
"src": "2200:49:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"id": 168,
"name": "Transfer",
"nodeType": "EventDefinition",
"parameters": {
"id": 167,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 162,
"indexed": true,
"name": "from",
"nodeType": "VariableDeclaration",
"scope": 168,
"src": "2269:20:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 161,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2269:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 164,
"indexed": true,
"name": "to",
"nodeType": "VariableDeclaration",
"scope": 168,
"src": "2291:18:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 163,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2291:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 166,
"indexed": false,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 168,
"src": "2311:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 165,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2311:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2268:54:0"
},
"src": "2254:69:0"
}
],
"scope": 1143,
"src": "2017:308:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 170,
"name": "ERC20Basic",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 169,
"src": "2434:10:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_ERC20Basic_$169",
"typeString": "contract ERC20Basic"
}
},
"id": 171,
"nodeType": "InheritanceSpecifier",
"src": "2434:10:0"
}
],
"contractDependencies": [
169
],
"contractKind": "contract",
"documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20",
"fullyImplemented": false,
"id": 205,
"linearizedBaseContracts": [
205,
169
],
"name": "ERC20",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"id": 180,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "allowance",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 176,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 173,
"name": "owner",
"nodeType": "VariableDeclaration",
"scope": 180,
"src": "2470:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 172,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2470:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 175,
"name": "spender",
"nodeType": "VariableDeclaration",
"scope": 180,
"src": "2485:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 174,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2485:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2469:32:0"
},
"payable": false,
"returnParameters": {
"id": 179,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 178,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 180,
"src": "2527:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 177,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2527:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2526:6:0"
},
"scope": 205,
"src": "2451:82:0",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 189,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transferFrom",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 187,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 182,
"name": "from",
"nodeType": "VariableDeclaration",
"scope": 189,
"src": "2560:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 181,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2560:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 184,
"name": "to",
"nodeType": "VariableDeclaration",
"scope": 189,
"src": "2574:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 183,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2574:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 186,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 189,
"src": "2586:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 185,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2586:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2559:38:0"
},
"payable": false,
"returnParameters": {
"id": 188,
"nodeType": "ParameterList",
"parameters": [],
"src": "2604:0:0"
},
"scope": 205,
"src": "2538:67:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 196,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "approve",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 194,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 191,
"name": "spender",
"nodeType": "VariableDeclaration",
"scope": 196,
"src": "2627:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 190,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2627:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 193,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 196,
"src": "2644:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 192,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2644:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2626:29:0"
},
"payable": false,
"returnParameters": {
"id": 195,
"nodeType": "ParameterList",
"parameters": [],
"src": "2662:0:0"
},
"scope": 205,
"src": "2610:53:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"id": 204,
"name": "Approval",
"nodeType": "EventDefinition",
"parameters": {
"id": 203,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 198,
"indexed": true,
"name": "owner",
"nodeType": "VariableDeclaration",
"scope": 204,
"src": "2683:21:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 197,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2683:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 200,
"indexed": true,
"name": "spender",
"nodeType": "VariableDeclaration",
"scope": 204,
"src": "2706:23:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 199,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2706:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 202,
"indexed": false,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 204,
"src": "2731:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 201,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2731:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2682:60:0"
},
"src": "2668:75:0"
}
],
"scope": 1143,
"src": "2416:329:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 206,
"name": "Ownable",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 139,
"src": "2860:7:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Ownable_$139",
"typeString": "contract Ownable"
}
},
"id": 207,
"nodeType": "InheritanceSpecifier",
"src": "2860:7:0"
},
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 208,
"name": "ERC20Basic",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 169,
"src": "2869:10:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_ERC20Basic_$169",
"typeString": "contract ERC20Basic"
}
},
"id": 209,
"nodeType": "InheritanceSpecifier",
"src": "2869:10:0"
}
],
"contractDependencies": [
139,
169
],
"contractKind": "contract",
"documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.",
"fullyImplemented": false,
"id": 347,
"linearizedBaseContracts": [
347,
169,
139
],
"name": "BasicToken",
"nodeType": "ContractDefinition",
"nodes": [
{
"id": 212,
"libraryName": {
"contractScope": null,
"id": 210,
"name": "SafeMath",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 97,
"src": "2892:8:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_SafeMath_$97",
"typeString": "library SafeMath"
}
},
"nodeType": "UsingForDirective",
"src": "2886:24:0",
"typeName": {
"id": 211,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2905:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
{
"constant": false,
"id": 216,
"name": "balances",
"nodeType": "VariableDeclaration",
"scope": 347,
"src": "2916:40:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
},
"typeName": {
"id": 215,
"keyType": {
"id": 213,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2924:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "2916:24:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
},
"valueType": {
"id": 214,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "2935:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 219,
"name": "basisPointsRate",
"nodeType": "VariableDeclaration",
"scope": 347,
"src": "3041:31:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 217,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3041:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"argumentTypes": null,
"hexValue": "30",
"id": 218,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3071:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"visibility": "public"
},
{
"constant": false,
"id": 222,
"name": "maximumFee",
"nodeType": "VariableDeclaration",
"scope": 347,
"src": "3078:26:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 220,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3078:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"argumentTypes": null,
"hexValue": "30",
"id": 221,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3103:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"visibility": "public"
},
{
"body": {
"id": 239,
"nodeType": "Block",
"src": "3213:66:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 235,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "!",
"prefix": true,
"src": "3231:29:0",
"subExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 233,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 227,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "3233:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 228,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "data",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3233:8:0",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes calldata"
}
},
"id": 229,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3233:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 232,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 230,
"name": "size",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 224,
"src": "3251:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"hexValue": "34",
"id": 231,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3258:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "3251:8:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3233:26:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"id": 234,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "3232:28:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 226,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "3223:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 236,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3223:38:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 237,
"nodeType": "ExpressionStatement",
"src": "3223:38:0"
},
{
"id": 238,
"nodeType": "PlaceholderStatement",
"src": "3271:1:0"
}
]
},
"id": 240,
"name": "onlyPayloadSize",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 225,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 224,
"name": "size",
"nodeType": "VariableDeclaration",
"scope": 240,
"src": "3202:9:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 223,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3202:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3201:11:0"
},
"src": "3177:102:0",
"visibility": "internal"
},
{
"body": {
"id": 333,
"nodeType": "Block",
"src": "3520:485:0",
"statements": [
{
"assignments": [
253
],
"declarations": [
{
"constant": false,
"id": 253,
"name": "fee",
"nodeType": "VariableDeclaration",
"scope": 334,
"src": "3530:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 252,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3530:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 262,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "3130303030",
"id": 260,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3575:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
},
"value": "10000"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
}
],
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 256,
"name": "basisPointsRate",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 219,
"src": "3553:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 254,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 244,
"src": "3542:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 255,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 34,
"src": "3542:10:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 257,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3542:27:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 258,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "3541:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 259,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 52,
"src": "3541:33:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 261,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3541:40:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "3530:51:0"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 265,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 263,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3595:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"id": 264,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "3601:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3595:16:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 271,
"nodeType": "IfStatement",
"src": "3591:63:0",
"trueBody": {
"id": 270,
"nodeType": "Block",
"src": "3613:41:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 268,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 266,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3627:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 267,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "3633:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3627:16:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 269,
"nodeType": "ExpressionStatement",
"src": "3627:16:0"
}
]
}
},
{
"assignments": [
273
],
"declarations": [
{
"constant": false,
"id": 273,
"name": "sendAmount",
"nodeType": "VariableDeclaration",
"scope": 334,
"src": "3663:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 272,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3663:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 278,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 276,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3692:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 274,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 244,
"src": "3681:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 275,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 72,
"src": "3681:10:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 277,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3681:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "3663:33:0"
},
{
"expression": {
"argumentTypes": null,
"id": 290,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 279,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3706:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 282,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 280,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "3715:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 281,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3715:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3706:20:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 288,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 244,
"src": "3754:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 283,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3729:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 286,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 284,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "3738:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 285,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3738:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3729:20:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 287,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 72,
"src": "3729:24:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 289,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3729:32:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3706:55:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 291,
"nodeType": "ExpressionStatement",
"src": "3706:55:0"
},
{
"expression": {
"argumentTypes": null,
"id": 301,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 292,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3771:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 294,
"indexExpression": {
"argumentTypes": null,
"id": 293,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 242,
"src": "3780:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3771:13:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 299,
"name": "sendAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 273,
"src": "3805:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 295,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3787:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 297,
"indexExpression": {
"argumentTypes": null,
"id": 296,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 242,
"src": "3796:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3787:13:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 298,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 96,
"src": "3787:17:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 300,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3787:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3771:45:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 302,
"nodeType": "ExpressionStatement",
"src": "3771:45:0"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 305,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 303,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3830:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 304,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3836:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "3830:7:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 325,
"nodeType": "IfStatement",
"src": "3826:126:0",
"trueBody": {
"id": 324,
"nodeType": "Block",
"src": "3839:113:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 315,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 306,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3853:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 308,
"indexExpression": {
"argumentTypes": null,
"id": 307,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "3862:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3853:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 313,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3891:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 309,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "3871:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 311,
"indexExpression": {
"argumentTypes": null,
"id": 310,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "3880:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3871:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 312,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 96,
"src": "3871:19:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 314,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3871:24:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3853:42:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 316,
"nodeType": "ExpressionStatement",
"src": "3853:42:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 318,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "3918:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 319,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3918:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 320,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "3930:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 321,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 253,
"src": "3937:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 317,
"name": "Transfer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 168,
"src": "3909:8:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 322,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3909:32:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 323,
"nodeType": "ExpressionStatement",
"src": "3909:32:0"
}
]
}
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 327,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "3970:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 328,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3970:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 329,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 242,
"src": "3982:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 330,
"name": "sendAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 273,
"src": "3987:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 326,
"name": "Transfer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 168,
"src": "3961:8:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 331,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3961:37:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 332,
"nodeType": "ExpressionStatement",
"src": "3961:37:0"
}
]
},
"id": 334,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"id": 249,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 247,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3512:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3332",
"id": 248,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3516:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"src": "3512:6:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
}
}
],
"id": 250,
"modifierName": {
"argumentTypes": null,
"id": 246,
"name": "onlyPayloadSize",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 240,
"src": "3496:15:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "3496:23:0"
}
],
"name": "transfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 245,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 242,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 334,
"src": "3463:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 241,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "3463:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 244,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 334,
"src": "3476:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 243,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "3476:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3462:26:0"
},
"payable": false,
"returnParameters": {
"id": 251,
"nodeType": "ParameterList",
"parameters": [],
"src": "3520:0:0"
},
"scope": 347,
"src": "3445:560:0",
"stateMutability": "nonpayable",
"superFunction": 160,
"visibility": "public"
},
{
"body": {
"id": 345,
"nodeType": "Block",
"src": "4290:40:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 341,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "4307:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 343,
"indexExpression": {
"argumentTypes": null,
"id": 342,
"name": "_owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 336,
"src": "4316:6:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4307:16:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 340,
"id": 344,
"nodeType": "Return",
"src": "4300:23:0"
}
]
},
"id": 346,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "balanceOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 337,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 336,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 346,
"src": "4235:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 335,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "4235:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4234:16:0"
},
"payable": false,
"returnParameters": {
"id": 340,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 339,
"name": "balance",
"nodeType": "VariableDeclaration",
"scope": 346,
"src": "4276:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 338,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "4276:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4275:14:0"
},
"scope": 347,
"src": "4216:114:0",
"stateMutability": "view",
"superFunction": 153,
"visibility": "public"
}
],
"scope": 1143,
"src": "2837:1496:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 348,
"name": "BasicToken",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 347,
"src": "4627:10:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_BasicToken_$347",
"typeString": "contract BasicToken"
}
},
"id": 349,
"nodeType": "InheritanceSpecifier",
"src": "4627:10:0"
},
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 350,
"name": "ERC20",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 205,
"src": "4639:5:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_ERC20_$205",
"typeString": "contract ERC20"
}
},
"id": 351,
"nodeType": "InheritanceSpecifier",
"src": "4639:5:0"
}
],
"contractDependencies": [
347,
139,
169,
205
],
"contractKind": "contract",
"documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based oncode by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol",
"fullyImplemented": false,
"id": 546,
"linearizedBaseContracts": [
546,
205,
347,
169,
139
],
"name": "StandardToken",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 357,
"name": "allowed",
"nodeType": "VariableDeclaration",
"scope": 546,
"src": "4652:61:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
},
"typeName": {
"id": 356,
"keyType": {
"id": 352,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "4661:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "4652:46:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
},
"valueType": {
"id": 355,
"keyType": {
"id": 353,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "4681:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "4672:25:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
},
"valueType": {
"id": 354,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "4692:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
}
},
"value": null,
"visibility": "public"
},
{
"constant": true,
"id": 364,
"name": "MAX_UINT",
"nodeType": "VariableDeclaration",
"scope": 546,
"src": "4720:42:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 358,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "4720:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639935"
},
"id": 363,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639936"
},
"id": 361,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 359,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4752:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"nodeType": "BinaryOperation",
"operator": "**",
"rightExpression": {
"argumentTypes": null,
"hexValue": "323536",
"id": 360,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4755:3:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_256_by_1",
"typeString": "int_const 256"
},
"value": "256"
},
"src": "4752:6:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639936"
}
},
"nodeType": "BinaryOperation",
"operator": "-",
"rightExpression": {
"argumentTypes": null,
"hexValue": "31",
"id": 362,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4761:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "4752:10:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639935"
}
},
"visibility": "public"
},
{
"body": {
"id": 480,
"nodeType": "Block",
"src": "5138:786:0",
"statements": [
{
"assignments": [
378
],
"declarations": [
{
"constant": false,
"id": 378,
"name": "_allowance",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5148:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": null,
"value": null,
"visibility": "internal"
}
],
"id": 385,
"initialValue": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 379,
"name": "allowed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 357,
"src": "5165:7:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
}
},
"id": 381,
"indexExpression": {
"argumentTypes": null,
"id": 380,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5173:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5165:14:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 384,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 382,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "5180:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 383,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5180:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5165:26:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "5148:43:0"
},
{
"assignments": [
387
],
"declarations": [
{
"constant": false,
"id": 387,
"name": "fee",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5357:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 386,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "5357:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 396,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "3130303030",
"id": 394,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5402:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
},
"value": "10000"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
}
],
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 390,
"name": "basisPointsRate",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 219,
"src": "5380:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 388,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 370,
"src": "5369:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 389,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 34,
"src": "5369:10:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 391,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5369:27:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 392,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "5368:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 393,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 52,
"src": "5368:33:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 395,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5368:40:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "5357:51:0"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 399,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 397,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5422:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"id": 398,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "5428:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5422:16:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 405,
"nodeType": "IfStatement",
"src": "5418:63:0",
"trueBody": {
"id": 404,
"nodeType": "Block",
"src": "5440:41:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 402,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 400,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5454:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 401,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "5460:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5454:16:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 403,
"nodeType": "ExpressionStatement",
"src": "5454:16:0"
}
]
}
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 408,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 406,
"name": "_allowance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 378,
"src": "5494:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"id": 407,
"name": "MAX_UINT",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 364,
"src": "5507:8:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5494:21:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 422,
"nodeType": "IfStatement",
"src": "5490:103:0",
"trueBody": {
"id": 421,
"nodeType": "Block",
"src": "5517:76:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 419,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 409,
"name": "allowed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 357,
"src": "5531:7:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
}
},
"id": 413,
"indexExpression": {
"argumentTypes": null,
"id": 410,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5539:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5531:14:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 414,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 411,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "5546:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 412,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5546:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5531:26:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 417,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 370,
"src": "5575:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 415,
"name": "_allowance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 378,
"src": "5560:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 416,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 72,
"src": "5560:14:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 418,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5560:22:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5531:51:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 420,
"nodeType": "ExpressionStatement",
"src": "5531:51:0"
}
]
}
},
{
"assignments": [
424
],
"declarations": [
{
"constant": false,
"id": 424,
"name": "sendAmount",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5602:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 423,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "5602:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 429,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 427,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5631:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 425,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 370,
"src": "5620:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 426,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 72,
"src": "5620:10:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 428,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5620:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "5602:33:0"
},
{
"expression": {
"argumentTypes": null,
"id": 439,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 430,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5645:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 432,
"indexExpression": {
"argumentTypes": null,
"id": 431,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5654:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5645:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 437,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 370,
"src": "5683:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 433,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5663:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 435,
"indexExpression": {
"argumentTypes": null,
"id": 434,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5672:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5663:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 436,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 72,
"src": "5663:19:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 438,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5663:27:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5645:45:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 440,
"nodeType": "ExpressionStatement",
"src": "5645:45:0"
},
{
"expression": {
"argumentTypes": null,
"id": 450,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 441,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5700:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 443,
"indexExpression": {
"argumentTypes": null,
"id": 442,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 368,
"src": "5709:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5700:13:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 448,
"name": "sendAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 424,
"src": "5734:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 444,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5716:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 446,
"indexExpression": {
"argumentTypes": null,
"id": 445,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 368,
"src": "5725:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5716:13:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 447,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 96,
"src": "5716:17:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 449,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5716:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5700:45:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 451,
"nodeType": "ExpressionStatement",
"src": "5700:45:0"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 454,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 452,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5759:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 453,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5765:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "5759:7:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 473,
"nodeType": "IfStatement",
"src": "5755:121:0",
"trueBody": {
"id": 472,
"nodeType": "Block",
"src": "5768:108:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 464,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 455,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5782:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 457,
"indexExpression": {
"argumentTypes": null,
"id": 456,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "5791:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5782:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 462,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5820:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 458,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "5800:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 460,
"indexExpression": {
"argumentTypes": null,
"id": 459,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "5809:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5800:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 461,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 96,
"src": "5800:19:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 463,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5800:24:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5782:42:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 465,
"nodeType": "ExpressionStatement",
"src": "5782:42:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 467,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5847:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 468,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "5854:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 469,
"name": "fee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 387,
"src": "5861:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 466,
"name": "Transfer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 168,
"src": "5838:8:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 470,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5838:27:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 471,
"nodeType": "ExpressionStatement",
"src": "5838:27:0"
}
]
}
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 475,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 366,
"src": "5894:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 476,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 368,
"src": "5901:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 477,
"name": "sendAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 424,
"src": "5906:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 474,
"name": "Transfer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 168,
"src": "5885:8:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 478,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5885:32:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 479,
"nodeType": "ExpressionStatement",
"src": "5885:32:0"
}
]
},
"id": 481,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_96_by_1",
"typeString": "int_const 96"
},
"id": 375,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "33",
"id": 373,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5130:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_3_by_1",
"typeString": "int_const 3"
},
"value": "3"
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3332",
"id": 374,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5134:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"src": "5130:6:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_96_by_1",
"typeString": "int_const 96"
}
}
],
"id": 376,
"modifierName": {
"argumentTypes": null,
"id": 372,
"name": "onlyPayloadSize",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 240,
"src": "5114:15:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "5114:23:0"
}
],
"name": "transferFrom",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 371,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 366,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5066:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 365,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "5066:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 368,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5081:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 367,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "5081:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 370,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 481,
"src": "5094:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 369,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "5094:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5065:41:0"
},
"payable": false,
"returnParameters": {
"id": 377,
"nodeType": "ParameterList",
"parameters": [],
"src": "5138:0:0"
},
"scope": 546,
"src": "5044:880:0",
"stateMutability": "nonpayable",
"superFunction": 189,
"visibility": "public"
},
{
"body": {
"id": 528,
"nodeType": "Block",
"src": "6243:484:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 509,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "!",
"prefix": true,
"src": "6566:56:0",
"subExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 507,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 496,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 494,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 485,
"src": "6569:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 495,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "6579:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "6569:11:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"id": 497,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "6568:13:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "&&",
"rightExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 505,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 498,
"name": "allowed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 357,
"src": "6586:7:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
}
},
"id": 501,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 499,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "6594:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 500,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6594:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6586:19:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 503,
"indexExpression": {
"argumentTypes": null,
"id": 502,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 483,
"src": "6606:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6586:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 504,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "6619:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "6586:34:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"id": 506,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "6585:36:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "6568:53:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"id": 508,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "6567:55:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 493,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "6558:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 510,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "6558:65:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 511,
"nodeType": "ExpressionStatement",
"src": "6558:65:0"
},
{
"expression": {
"argumentTypes": null,
"id": 519,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 512,
"name": "allowed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 357,
"src": "6634:7:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
}
},
"id": 516,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 513,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "6642:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 514,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6642:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6634:19:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 517,
"indexExpression": {
"argumentTypes": null,
"id": 515,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 483,
"src": "6654:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "6634:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 518,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 485,
"src": "6666:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "6634:38:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 520,
"nodeType": "ExpressionStatement",
"src": "6634:38:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 522,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "6691:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 523,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6691:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 524,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 483,
"src": "6703:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 525,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 485,
"src": "6713:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 521,
"name": "Approval",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 204,
"src": "6682:8:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 526,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "6682:38:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 527,
"nodeType": "ExpressionStatement",
"src": "6682:38:0"
}
]
},
"id": 529,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"id": 490,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 488,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "6235:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3332",
"id": 489,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "6239:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"src": "6235:6:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
}
}
],
"id": 491,
"modifierName": {
"argumentTypes": null,
"id": 487,
"name": "onlyPayloadSize",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 240,
"src": "6219:15:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "6219:23:0"
}
],
"name": "approve",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 486,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 483,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 529,
"src": "6181:16:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 482,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "6181:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 485,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 529,
"src": "6199:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 484,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "6199:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6180:31:0"
},
"payable": false,
"returnParameters": {
"id": 492,
"nodeType": "ParameterList",
"parameters": [],
"src": "6243:0:0"
},
"scope": 546,
"src": "6164:563:0",
"stateMutability": "nonpayable",
"superFunction": 196,
"visibility": "public"
},
{
"body": {
"id": 544,
"nodeType": "Block",
"src": "7146:49:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 538,
"name": "allowed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 357,
"src": "7163:7:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$",
"typeString": "mapping(address => mapping(address => uint256))"
}
},
"id": 540,
"indexExpression": {
"argumentTypes": null,
"id": 539,
"name": "_owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 531,
"src": "7171:6:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7163:15:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 542,
"indexExpression": {
"argumentTypes": null,
"id": 541,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 533,
"src": "7179:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7163:25:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 537,
"id": 543,
"nodeType": "Return",
"src": "7156:32:0"
}
]
},
"id": 545,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "allowance",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 534,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 531,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 545,
"src": "7071:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 530,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7071:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 533,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 545,
"src": "7087:16:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 532,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7087:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7070:34:0"
},
"payable": false,
"returnParameters": {
"id": 537,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 536,
"name": "remaining",
"nodeType": "VariableDeclaration",
"scope": 545,
"src": "7130:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 535,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "7130:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7129:16:0"
},
"scope": 546,
"src": "7052:143:0",
"stateMutability": "view",
"superFunction": 180,
"visibility": "public"
}
],
"scope": 1143,
"src": "4601:2597:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 547,
"name": "Ownable",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 139,
"src": "7335:7:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Ownable_$139",
"typeString": "contract Ownable"
}
},
"id": 548,
"nodeType": "InheritanceSpecifier",
"src": "7335:7:0"
}
],
"contractDependencies": [
139
],
"contractKind": "contract",
"documentation": "@title Pausable\n@dev Base contract which allows children to implement an emergency stop mechanism.",
"fullyImplemented": true,
"id": 603,
"linearizedBaseContracts": [
603,
139
],
"name": "Pausable",
"nodeType": "ContractDefinition",
"nodes": [
{
"anonymous": false,
"id": 550,
"name": "Pause",
"nodeType": "EventDefinition",
"parameters": {
"id": 549,
"nodeType": "ParameterList",
"parameters": [],
"src": "7358:2:0"
},
"src": "7347:14:0"
},
{
"anonymous": false,
"id": 552,
"name": "Unpause",
"nodeType": "EventDefinition",
"parameters": {
"id": 551,
"nodeType": "ParameterList",
"parameters": [],
"src": "7377:2:0"
},
"src": "7364:16:0"
},
{
"constant": false,
"id": 555,
"name": "paused",
"nodeType": "VariableDeclaration",
"scope": 603,
"src": "7384:26:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 553,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "7384:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 554,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7405:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"visibility": "public"
},
{
"body": {
"id": 563,
"nodeType": "Block",
"src": "7538:34:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 559,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "!",
"prefix": true,
"src": "7552:7:0",
"subExpression": {
"argumentTypes": null,
"id": 558,
"name": "paused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 555,
"src": "7553:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 557,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "7544:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 560,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7544:16:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 561,
"nodeType": "ExpressionStatement",
"src": "7544:16:0"
},
{
"id": 562,
"nodeType": "PlaceholderStatement",
"src": "7566:1:0"
}
]
},
"id": 564,
"name": "whenNotPaused",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 556,
"nodeType": "ParameterList",
"parameters": [],
"src": "7535:2:0"
},
"src": "7513:59:0",
"visibility": "internal"
},
{
"body": {
"id": 571,
"nodeType": "Block",
"src": "7691:33:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 567,
"name": "paused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 555,
"src": "7705:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 566,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "7697:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 568,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7697:15:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 569,
"nodeType": "ExpressionStatement",
"src": "7697:15:0"
},
{
"id": 570,
"nodeType": "PlaceholderStatement",
"src": "7718:1:0"
}
]
},
"id": 572,
"name": "whenPaused",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 565,
"nodeType": "ParameterList",
"parameters": [],
"src": "7688:2:0"
},
"src": "7669:55:0",
"visibility": "internal"
},
{
"body": {
"id": 586,
"nodeType": "Block",
"src": "7851:37:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 581,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 579,
"name": "paused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 555,
"src": "7857:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 580,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7866:4:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"src": "7857:13:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 582,
"nodeType": "ExpressionStatement",
"src": "7857:13:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"id": 583,
"name": "Pause",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 550,
"src": "7876:5:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$__$returns$__$",
"typeString": "function ()"
}
},
"id": 584,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7876:7:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 585,
"nodeType": "ExpressionStatement",
"src": "7876:7:0"
}
]
},
"id": 587,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 575,
"modifierName": {
"argumentTypes": null,
"id": 574,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "7820:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "7820:9:0"
},
{
"arguments": [],
"id": 577,
"modifierName": {
"argumentTypes": null,
"id": 576,
"name": "whenNotPaused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 564,
"src": "7830:13:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "7830:13:0"
}
],
"name": "pause",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 573,
"nodeType": "ParameterList",
"parameters": [],
"src": "7817:2:0"
},
"payable": false,
"returnParameters": {
"id": 578,
"nodeType": "ParameterList",
"parameters": [],
"src": "7851:0:0"
},
"scope": 603,
"src": "7803:85:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 601,
"nodeType": "Block",
"src": "8017:40:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 596,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 594,
"name": "paused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 555,
"src": "8023:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 595,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "8032:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"src": "8023:14:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 597,
"nodeType": "ExpressionStatement",
"src": "8023:14:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"id": 598,
"name": "Unpause",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 552,
"src": "8043:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$__$returns$__$",
"typeString": "function ()"
}
},
"id": 599,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8043:9:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 600,
"nodeType": "ExpressionStatement",
"src": "8043:9:0"
}
]
},
"id": 602,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 590,
"modifierName": {
"argumentTypes": null,
"id": 589,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "7989:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "7989:9:0"
},
{
"arguments": [],
"id": 592,
"modifierName": {
"argumentTypes": null,
"id": 591,
"name": "whenPaused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 572,
"src": "7999:10:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "7999:10:0"
}
],
"name": "unpause",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 588,
"nodeType": "ParameterList",
"parameters": [],
"src": "7986:2:0"
},
"payable": false,
"returnParameters": {
"id": 593,
"nodeType": "ParameterList",
"parameters": [],
"src": "8017:0:0"
},
"scope": 603,
"src": "7970:87:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
}
],
"scope": 1143,
"src": "7314:745:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 604,
"name": "Ownable",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 139,
"src": "8083:7:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Ownable_$139",
"typeString": "contract Ownable"
}
},
"id": 605,
"nodeType": "InheritanceSpecifier",
"src": "8083:7:0"
},
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 606,
"name": "BasicToken",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 347,
"src": "8092:10:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_BasicToken_$347",
"typeString": "contract BasicToken"
}
},
"id": 607,
"nodeType": "InheritanceSpecifier",
"src": "8092:10:0"
}
],
"contractDependencies": [
347,
139,
169
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"id": 717,
"linearizedBaseContracts": [
717,
347,
169,
139
],
"name": "BlackList",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 618,
"nodeType": "Block",
"src": "8306:45:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 614,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "8323:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 616,
"indexExpression": {
"argumentTypes": null,
"id": 615,
"name": "_maker",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 609,
"src": "8337:6:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8323:21:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"functionReturnParameters": 613,
"id": 617,
"nodeType": "Return",
"src": "8316:28:0"
}
]
},
"id": 619,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getBlackListStatus",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 610,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 609,
"name": "_maker",
"nodeType": "VariableDeclaration",
"scope": 619,
"src": "8257:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 608,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8257:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8256:16:0"
},
"payable": false,
"returnParameters": {
"id": 613,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 612,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 619,
"src": "8300:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 611,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "8300:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8299:6:0"
},
"scope": 717,
"src": "8229:122:0",
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
{
"body": {
"id": 626,
"nodeType": "Block",
"src": "8413:29:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 624,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "8430:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"functionReturnParameters": 623,
"id": 625,
"nodeType": "Return",
"src": "8423:12:0"
}
]
},
"id": 627,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getOwner",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 620,
"nodeType": "ParameterList",
"parameters": [],
"src": "8374:2:0"
},
"payable": false,
"returnParameters": {
"id": 623,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 622,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 627,
"src": "8404:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 621,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8404:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8403:9:0"
},
"scope": 717,
"src": "8357:85:0",
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
{
"constant": false,
"id": 631,
"name": "isBlackListed",
"nodeType": "VariableDeclaration",
"scope": 717,
"src": "8448:46:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
},
"typeName": {
"id": 630,
"keyType": {
"id": 628,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8457:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "8448:25:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
},
"valueType": {
"id": 629,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "8468:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
},
"value": null,
"visibility": "public"
},
{
"body": {
"id": 648,
"nodeType": "Block",
"src": "8564:83:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 642,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 638,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "8574:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 640,
"indexExpression": {
"argumentTypes": null,
"id": 639,
"name": "_evilUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 633,
"src": "8588:9:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "8574:24:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 641,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "8601:4:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"src": "8574:31:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 643,
"nodeType": "ExpressionStatement",
"src": "8574:31:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 645,
"name": "_evilUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 633,
"src": "8630:9:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 644,
"name": "AddedBlackList",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 712,
"src": "8615:14:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$",
"typeString": "function (address)"
}
},
"id": 646,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8615:25:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 647,
"nodeType": "ExpressionStatement",
"src": "8615:25:0"
}
]
},
"id": 649,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 636,
"modifierName": {
"argumentTypes": null,
"id": 635,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "8554:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "8554:9:0"
}
],
"name": "addBlackList",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 634,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 633,
"name": "_evilUser",
"nodeType": "VariableDeclaration",
"scope": 649,
"src": "8528:17:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 632,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8528:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8527:19:0"
},
"payable": false,
"returnParameters": {
"id": 637,
"nodeType": "ParameterList",
"parameters": [],
"src": "8564:0:0"
},
"scope": 717,
"src": "8505:142:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 666,
"nodeType": "Block",
"src": "8718:92:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 660,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 656,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "8728:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 658,
"indexExpression": {
"argumentTypes": null,
"id": 657,
"name": "_clearedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 651,
"src": "8742:12:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "8728:27:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 659,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "8758:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"src": "8728:35:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 661,
"nodeType": "ExpressionStatement",
"src": "8728:35:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 663,
"name": "_clearedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 651,
"src": "8790:12:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 662,
"name": "RemovedBlackList",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 716,
"src": "8773:16:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$",
"typeString": "function (address)"
}
},
"id": 664,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8773:30:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 665,
"nodeType": "ExpressionStatement",
"src": "8773:30:0"
}
]
},
"id": 667,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 654,
"modifierName": {
"argumentTypes": null,
"id": 653,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "8708:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "8708:9:0"
}
],
"name": "removeBlackList",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 652,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 651,
"name": "_clearedUser",
"nodeType": "VariableDeclaration",
"scope": 667,
"src": "8679:20:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 650,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8679:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8678:22:0"
},
"payable": false,
"returnParameters": {
"id": 655,
"nodeType": "ParameterList",
"parameters": [],
"src": "8718:0:0"
},
"scope": 717,
"src": "8653:157:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 701,
"nodeType": "Block",
"src": "8887:247:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 675,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "8905:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 677,
"indexExpression": {
"argumentTypes": null,
"id": 676,
"name": "_blackListedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 669,
"src": "8919:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8905:31:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 674,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "8897:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 678,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8897:40:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 679,
"nodeType": "ExpressionStatement",
"src": "8897:40:0"
},
{
"assignments": [
681
],
"declarations": [
{
"constant": false,
"id": 681,
"name": "dirtyFunds",
"nodeType": "VariableDeclaration",
"scope": 702,
"src": "8947:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 680,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "8947:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 685,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 683,
"name": "_blackListedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 669,
"src": "8975:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 682,
"name": "balanceOf",
"nodeType": "Identifier",
"overloadedDeclarations": [
346
],
"referencedDeclaration": 346,
"src": "8965:9:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$",
"typeString": "function (address) view returns (uint256)"
}
},
"id": 684,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8965:27:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "8947:45:0"
},
{
"expression": {
"argumentTypes": null,
"id": 690,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 686,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "9002:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 688,
"indexExpression": {
"argumentTypes": null,
"id": 687,
"name": "_blackListedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 669,
"src": "9011:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "9002:26:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "30",
"id": 689,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "9031:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "9002:30:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 691,
"nodeType": "ExpressionStatement",
"src": "9002:30:0"
},
{
"expression": {
"argumentTypes": null,
"id": 694,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 692,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "9042:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "-=",
"rightHandSide": {
"argumentTypes": null,
"id": 693,
"name": "dirtyFunds",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 681,
"src": "9058:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "9042:26:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 695,
"nodeType": "ExpressionStatement",
"src": "9042:26:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 697,
"name": "_blackListedUser",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 669,
"src": "9098:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 698,
"name": "dirtyFunds",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 681,
"src": "9116:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 696,
"name": "DestroyedBlackFunds",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 708,
"src": "9078:19:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 699,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "9078:49:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 700,
"nodeType": "ExpressionStatement",
"src": "9078:49:0"
}
]
},
"id": 702,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 672,
"modifierName": {
"argumentTypes": null,
"id": 671,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "8877:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "8877:9:0"
}
],
"name": "destroyBlackFunds",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 670,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 669,
"name": "_blackListedUser",
"nodeType": "VariableDeclaration",
"scope": 702,
"src": "8844:24:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 668,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8844:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8843:26:0"
},
"payable": false,
"returnParameters": {
"id": 673,
"nodeType": "ParameterList",
"parameters": [],
"src": "8887:0:0"
},
"scope": 717,
"src": "8816:318:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"id": 708,
"name": "DestroyedBlackFunds",
"nodeType": "EventDefinition",
"parameters": {
"id": 707,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 704,
"indexed": false,
"name": "_blackListedUser",
"nodeType": "VariableDeclaration",
"scope": 708,
"src": "9166:24:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 703,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9166:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 706,
"indexed": false,
"name": "_balance",
"nodeType": "VariableDeclaration",
"scope": 708,
"src": "9192:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 705,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "9192:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9165:41:0"
},
"src": "9140:67:0"
},
{
"anonymous": false,
"id": 712,
"name": "AddedBlackList",
"nodeType": "EventDefinition",
"parameters": {
"id": 711,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 710,
"indexed": false,
"name": "_user",
"nodeType": "VariableDeclaration",
"scope": 712,
"src": "9234:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 709,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9234:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9233:15:0"
},
"src": "9213:36:0"
},
{
"anonymous": false,
"id": 716,
"name": "RemovedBlackList",
"nodeType": "EventDefinition",
"parameters": {
"id": 715,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 714,
"indexed": false,
"name": "_user",
"nodeType": "VariableDeclaration",
"scope": 716,
"src": "9278:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 713,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9278:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9277:15:0"
},
"src": "9255:38:0"
}
],
"scope": 1143,
"src": "8061:1235:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 718,
"name": "StandardToken",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 546,
"src": "9332:13:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_StandardToken_$546",
"typeString": "contract StandardToken"
}
},
"id": 719,
"nodeType": "InheritanceSpecifier",
"src": "9332:13:0"
}
],
"contractDependencies": [
347,
139,
169,
205,
546
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"id": 749,
"linearizedBaseContracts": [
749,
546,
205,
347,
169,
139
],
"name": "UpgradedStandardToken",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"id": 728,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transferByLegacy",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 726,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 721,
"name": "from",
"nodeType": "VariableDeclaration",
"scope": 728,
"src": "9498:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 720,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9498:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 723,
"name": "to",
"nodeType": "VariableDeclaration",
"scope": 728,
"src": "9512:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 722,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9512:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 725,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 728,
"src": "9524:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 724,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "9524:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9497:38:0"
},
"payable": false,
"returnParameters": {
"id": 727,
"nodeType": "ParameterList",
"parameters": [],
"src": "9542:0:0"
},
"scope": 749,
"src": "9472:71:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 739,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transferFromByLegacy",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 737,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 730,
"name": "sender",
"nodeType": "VariableDeclaration",
"scope": 739,
"src": "9578:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 729,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9578:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 732,
"name": "from",
"nodeType": "VariableDeclaration",
"scope": 739,
"src": "9594:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 731,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9594:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 734,
"name": "spender",
"nodeType": "VariableDeclaration",
"scope": 739,
"src": "9608:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 733,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9608:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 736,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 739,
"src": "9625:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 735,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "9625:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9577:59:0"
},
"payable": false,
"returnParameters": {
"id": 738,
"nodeType": "ParameterList",
"parameters": [],
"src": "9643:0:0"
},
"scope": 749,
"src": "9548:96:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"id": 748,
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "approveByLegacy",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 746,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 741,
"name": "from",
"nodeType": "VariableDeclaration",
"scope": 748,
"src": "9674:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 740,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9674:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 743,
"name": "spender",
"nodeType": "VariableDeclaration",
"scope": 748,
"src": "9688:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 742,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9688:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 745,
"name": "value",
"nodeType": "VariableDeclaration",
"scope": 748,
"src": "9705:10:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 744,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "9705:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9673:43:0"
},
"payable": false,
"returnParameters": {
"id": 747,
"nodeType": "ParameterList",
"parameters": [],
"src": "9723:0:0"
},
"scope": 749,
"src": "9649:75:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
}
],
"scope": 1143,
"src": "9298:428:0"
},
{
"baseContracts": [
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 750,
"name": "Pausable",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 603,
"src": "9752:8:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Pausable_$603",
"typeString": "contract Pausable"
}
},
"id": 751,
"nodeType": "InheritanceSpecifier",
"src": "9752:8:0"
},
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 752,
"name": "StandardToken",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 546,
"src": "9762:13:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_StandardToken_$546",
"typeString": "contract StandardToken"
}
},
"id": 753,
"nodeType": "InheritanceSpecifier",
"src": "9762:13:0"
},
{
"arguments": [],
"baseName": {
"contractScope": null,
"id": 754,
"name": "BlackList",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 717,
"src": "9777:9:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_BlackList_$717",
"typeString": "contract BlackList"
}
},
"id": 755,
"nodeType": "InheritanceSpecifier",
"src": "9777:9:0"
}
],
"contractDependencies": [
347,
139,
169,
205,
546,
603,
717
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1142,
"linearizedBaseContracts": [
1142,
717,
546,
205,
347,
169,
603,
139
],
"name": "TetherToken",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 757,
"name": "name",
"nodeType": "VariableDeclaration",
"scope": 1142,
"src": "9794:18:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
},
"typeName": {
"id": 756,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "9794:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string storage pointer"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 759,
"name": "symbol",
"nodeType": "VariableDeclaration",
"scope": 1142,
"src": "9818:20:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
},
"typeName": {
"id": 758,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "9818:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string storage pointer"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 761,
"name": "decimals",
"nodeType": "VariableDeclaration",
"scope": 1142,
"src": "9844:20:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 760,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "9844:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 763,
"name": "upgradedAddress",
"nodeType": "VariableDeclaration",
"scope": 1142,
"src": "9870:30:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 762,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "9870:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 765,
"name": "deprecated",
"nodeType": "VariableDeclaration",
"scope": 1142,
"src": "9906:22:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 764,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "9906:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "public"
},
{
"body": {
"id": 802,
"nodeType": "Block",
"src": "10318:194:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 778,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 776,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "10328:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 777,
"name": "_initialSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 767,
"src": "10343:14:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "10328:29:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 779,
"nodeType": "ExpressionStatement",
"src": "10328:29:0"
},
{
"expression": {
"argumentTypes": null,
"id": 782,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 780,
"name": "name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 757,
"src": "10367:4:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 781,
"name": "_name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 769,
"src": "10374:5:0",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
"src": "10367:12:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"id": 783,
"nodeType": "ExpressionStatement",
"src": "10367:12:0"
},
{
"expression": {
"argumentTypes": null,
"id": 786,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 784,
"name": "symbol",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 759,
"src": "10389:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 785,
"name": "_symbol",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 771,
"src": "10398:7:0",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
"src": "10389:16:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"id": 787,
"nodeType": "ExpressionStatement",
"src": "10389:16:0"
},
{
"expression": {
"argumentTypes": null,
"id": 790,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 788,
"name": "decimals",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 761,
"src": "10415:8:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 789,
"name": "_decimals",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 773,
"src": "10426:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "10415:20:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 791,
"nodeType": "ExpressionStatement",
"src": "10415:20:0"
},
{
"expression": {
"argumentTypes": null,
"id": 796,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 792,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "10445:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 794,
"indexExpression": {
"argumentTypes": null,
"id": 793,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "10454:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "10445:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 795,
"name": "_initialSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 767,
"src": "10463:14:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "10445:32:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 797,
"nodeType": "ExpressionStatement",
"src": "10445:32:0"
},
{
"expression": {
"argumentTypes": null,
"id": 800,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 798,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "10487:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 799,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "10500:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"src": "10487:18:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 801,
"nodeType": "ExpressionStatement",
"src": "10487:18:0"
}
]
},
"id": 803,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [],
"name": "TetherToken",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 774,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 767,
"name": "_initialSupply",
"nodeType": "VariableDeclaration",
"scope": 803,
"src": "10244:19:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 766,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "10244:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 769,
"name": "_name",
"nodeType": "VariableDeclaration",
"scope": 803,
"src": "10265:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
},
"typeName": {
"id": 768,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "10265:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string storage pointer"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 771,
"name": "_symbol",
"nodeType": "VariableDeclaration",
"scope": 803,
"src": "10279:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
},
"typeName": {
"id": 770,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "10279:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string storage pointer"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 773,
"name": "_decimals",
"nodeType": "VariableDeclaration",
"scope": 803,
"src": "10295:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 772,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "10295:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "10243:67:0"
},
"payable": false,
"returnParameters": {
"id": 775,
"nodeType": "ParameterList",
"parameters": [],
"src": "10318:0:0"
},
"scope": 1142,
"src": "10223:289:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 840,
"nodeType": "Block",
"src": "10659:254:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 817,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "!",
"prefix": true,
"src": "10677:26:0",
"subExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 813,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "10678:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 816,
"indexExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 814,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "10692:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 815,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "10692:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "10678:25:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 812,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "10669:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 818,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "10669:35:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 819,
"nodeType": "ExpressionStatement",
"src": "10669:35:0"
},
{
"condition": {
"argumentTypes": null,
"id": 820,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "10718:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 838,
"nodeType": "Block",
"src": "10848:59:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 834,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 805,
"src": "10884:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 835,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 807,
"src": "10889:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 832,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1184,
"src": "10869:5:0",
"typeDescriptions": {
"typeIdentifier": "t_super$_TetherToken_$1142",
"typeString": "contract super TetherToken"
}
},
"id": 833,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "transfer",
"nodeType": "MemberAccess",
"referencedDeclaration": 334,
"src": "10869:14:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 836,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "10869:27:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 811,
"id": 837,
"nodeType": "Return",
"src": "10862:34:0"
}
]
},
"id": 839,
"nodeType": "IfStatement",
"src": "10714:193:0",
"trueBody": {
"id": 831,
"nodeType": "Block",
"src": "10730:112:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 825,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "10807:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 826,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "10807:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 827,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 805,
"src": "10819:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 828,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 807,
"src": "10824:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 822,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "10773:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 821,
"name": "UpgradedStandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 749,
"src": "10751:21:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_UpgradedStandardToken_$749_$",
"typeString": "type(contract UpgradedStandardToken)"
}
},
"id": 823,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "10751:38:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_UpgradedStandardToken_$749",
"typeString": "contract UpgradedStandardToken"
}
},
"id": 824,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "transferByLegacy",
"nodeType": "MemberAccess",
"referencedDeclaration": 728,
"src": "10751:55:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256) external"
}
},
"id": 829,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "10751:80:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 811,
"id": 830,
"nodeType": "Return",
"src": "10744:87:0"
}
]
}
}
]
},
"id": 841,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 810,
"modifierName": {
"argumentTypes": null,
"id": 809,
"name": "whenNotPaused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 564,
"src": "10645:13:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "10645:13:0"
}
],
"name": "transfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 808,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 805,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 841,
"src": "10612:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 804,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "10612:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 807,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 841,
"src": "10625:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 806,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "10625:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "10611:26:0"
},
"payable": false,
"returnParameters": {
"id": 811,
"nodeType": "ParameterList",
"parameters": [],
"src": "10659:0:0"
},
"scope": 1142,
"src": "10594:319:0",
"stateMutability": "nonpayable",
"superFunction": 334,
"visibility": "public"
},
{
"body": {
"id": 881,
"nodeType": "Block",
"src": "11079:271:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 856,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "!",
"prefix": true,
"src": "11097:21:0",
"subExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 853,
"name": "isBlackListed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 631,
"src": "11098:13:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 855,
"indexExpression": {
"argumentTypes": null,
"id": 854,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 843,
"src": "11112:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "11098:20:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 852,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "11089:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 857,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11089:30:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 858,
"nodeType": "ExpressionStatement",
"src": "11089:30:0"
},
{
"condition": {
"argumentTypes": null,
"id": 859,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "11133:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 879,
"nodeType": "Block",
"src": "11274:70:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 874,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 843,
"src": "11314:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 875,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 845,
"src": "11321:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 876,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 847,
"src": "11326:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 872,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1184,
"src": "11295:5:0",
"typeDescriptions": {
"typeIdentifier": "t_super$_TetherToken_$1142",
"typeString": "contract super TetherToken"
}
},
"id": 873,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "transferFrom",
"nodeType": "MemberAccess",
"referencedDeclaration": 481,
"src": "11295:18:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256)"
}
},
"id": 877,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11295:38:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 851,
"id": 878,
"nodeType": "Return",
"src": "11288:45:0"
}
]
},
"id": 880,
"nodeType": "IfStatement",
"src": "11129:215:0",
"trueBody": {
"id": 871,
"nodeType": "Block",
"src": "11145:123:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 864,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "11226:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 865,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "11226:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 866,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 843,
"src": "11238:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 867,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 845,
"src": "11245:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 868,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 847,
"src": "11250:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 861,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "11188:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 860,
"name": "UpgradedStandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 749,
"src": "11166:21:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_UpgradedStandardToken_$749_$",
"typeString": "type(contract UpgradedStandardToken)"
}
},
"id": 862,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11166:38:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_UpgradedStandardToken_$749",
"typeString": "contract UpgradedStandardToken"
}
},
"id": 863,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "transferFromByLegacy",
"nodeType": "MemberAccess",
"referencedDeclaration": 739,
"src": "11166:59:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,address,uint256) external"
}
},
"id": 869,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11166:91:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 851,
"id": 870,
"nodeType": "Return",
"src": "11159:98:0"
}
]
}
}
]
},
"id": 882,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 850,
"modifierName": {
"argumentTypes": null,
"id": 849,
"name": "whenNotPaused",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 564,
"src": "11065:13:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "11065:13:0"
}
],
"name": "transferFrom",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 848,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 843,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 882,
"src": "11017:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 842,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "11017:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 845,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 882,
"src": "11032:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 844,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "11032:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 847,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 882,
"src": "11045:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 846,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "11045:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "11016:41:0"
},
"payable": false,
"returnParameters": {
"id": 851,
"nodeType": "ParameterList",
"parameters": [],
"src": "11079:0:0"
},
"scope": 1142,
"src": "10995:355:0",
"stateMutability": "nonpayable",
"superFunction": 481,
"visibility": "public"
},
{
"body": {
"id": 905,
"nodeType": "Block",
"src": "11495:175:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"id": 889,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "11509:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 903,
"nodeType": "Block",
"src": "11612:52:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 900,
"name": "who",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 884,
"src": "11649:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"id": 898,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1184,
"src": "11633:5:0",
"typeDescriptions": {
"typeIdentifier": "t_super$_TetherToken_$1142",
"typeString": "contract super TetherToken"
}
},
"id": 899,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "balanceOf",
"nodeType": "MemberAccess",
"referencedDeclaration": 346,
"src": "11633:15:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$",
"typeString": "function (address) view returns (uint256)"
}
},
"id": 901,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11633:20:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 888,
"id": 902,
"nodeType": "Return",
"src": "11626:27:0"
}
]
},
"id": 904,
"nodeType": "IfStatement",
"src": "11505:159:0",
"trueBody": {
"id": 897,
"nodeType": "Block",
"src": "11521:85:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 894,
"name": "who",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 884,
"src": "11591:3:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 891,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "11564:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 890,
"name": "UpgradedStandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 749,
"src": "11542:21:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_UpgradedStandardToken_$749_$",
"typeString": "type(contract UpgradedStandardToken)"
}
},
"id": 892,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11542:38:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_UpgradedStandardToken_$749",
"typeString": "contract UpgradedStandardToken"
}
},
"id": 893,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "balanceOf",
"nodeType": "MemberAccess",
"referencedDeclaration": 346,
"src": "11542:48:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
"typeString": "function (address) view external returns (uint256)"
}
},
"id": 895,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11542:53:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 888,
"id": 896,
"nodeType": "Return",
"src": "11535:60:0"
}
]
}
}
]
},
"id": 906,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "balanceOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 885,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 884,
"name": "who",
"nodeType": "VariableDeclaration",
"scope": 906,
"src": "11451:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 883,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "11451:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "11450:13:0"
},
"payable": false,
"returnParameters": {
"id": 888,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 887,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 906,
"src": "11489:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 886,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "11489:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "11488:6:0"
},
"scope": 1142,
"src": "11432:238:0",
"stateMutability": "view",
"superFunction": 346,
"visibility": "public"
},
{
"body": {
"id": 938,
"nodeType": "Block",
"src": "11831:217:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"id": 918,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "11845:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 936,
"nodeType": "Block",
"src": "11979:63:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 932,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 908,
"src": "12014:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 933,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 910,
"src": "12024:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 930,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1184,
"src": "12000:5:0",
"typeDescriptions": {
"typeIdentifier": "t_super$_TetherToken_$1142",
"typeString": "contract super TetherToken"
}
},
"id": 931,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "approve",
"nodeType": "MemberAccess",
"referencedDeclaration": 529,
"src": "12000:13:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 934,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12000:31:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 917,
"id": 935,
"nodeType": "Return",
"src": "11993:38:0"
}
]
},
"id": 937,
"nodeType": "IfStatement",
"src": "11841:201:0",
"trueBody": {
"id": 929,
"nodeType": "Block",
"src": "11857:116:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 923,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1154,
"src": "11933:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 924,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "11933:10:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 925,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 908,
"src": "11945:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 926,
"name": "_value",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 910,
"src": "11955:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 920,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "11900:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 919,
"name": "UpgradedStandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 749,
"src": "11878:21:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_UpgradedStandardToken_$749_$",
"typeString": "type(contract UpgradedStandardToken)"
}
},
"id": 921,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11878:38:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_UpgradedStandardToken_$749",
"typeString": "contract UpgradedStandardToken"
}
},
"id": 922,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "approveByLegacy",
"nodeType": "MemberAccess",
"referencedDeclaration": 748,
"src": "11878:54:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,address,uint256) external"
}
},
"id": 927,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "11878:84:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"functionReturnParameters": 917,
"id": 928,
"nodeType": "Return",
"src": "11871:91:0"
}
]
}
}
]
},
"id": 939,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"id": 915,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 913,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "11823:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3332",
"id": 914,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "11827:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"src": "11823:6:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
}
}
],
"id": 916,
"modifierName": {
"argumentTypes": null,
"id": 912,
"name": "onlyPayloadSize",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 240,
"src": "11807:15:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "11807:23:0"
}
],
"name": "approve",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 911,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 908,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 939,
"src": "11769:16:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 907,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "11769:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 910,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 939,
"src": "11787:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 909,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "11787:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "11768:31:0"
},
"payable": false,
"returnParameters": {
"id": 917,
"nodeType": "ParameterList",
"parameters": [],
"src": "11831:0:0"
},
"scope": 1142,
"src": "11752:296:0",
"stateMutability": "nonpayable",
"superFunction": 529,
"visibility": "public"
},
{
"body": {
"id": 966,
"nodeType": "Block",
"src": "12224:193:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"id": 948,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "12238:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 964,
"nodeType": "Block",
"src": "12346:65:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 960,
"name": "_owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 941,
"src": "12383:6:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 961,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 943,
"src": "12391:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"id": 958,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1184,
"src": "12367:5:0",
"typeDescriptions": {
"typeIdentifier": "t_super$_TetherToken_$1142",
"typeString": "contract super TetherToken"
}
},
"id": 959,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "allowance",
"nodeType": "MemberAccess",
"referencedDeclaration": 545,
"src": "12367:15:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view returns (uint256)"
}
},
"id": 962,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12367:33:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 947,
"id": 963,
"nodeType": "Return",
"src": "12360:40:0"
}
]
},
"id": 965,
"nodeType": "IfStatement",
"src": "12234:177:0",
"trueBody": {
"id": 957,
"nodeType": "Block",
"src": "12250:90:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 953,
"name": "_owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 941,
"src": "12312:6:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 954,
"name": "_spender",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 943,
"src": "12320:8:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 950,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "12285:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 949,
"name": "StandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 546,
"src": "12271:13:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_StandardToken_$546_$",
"typeString": "type(contract StandardToken)"
}
},
"id": 951,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12271:30:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_StandardToken_$546",
"typeString": "contract StandardToken"
}
},
"id": 952,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "allowance",
"nodeType": "MemberAccess",
"referencedDeclaration": 545,
"src": "12271:40:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view external returns (uint256)"
}
},
"id": 955,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12271:58:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 947,
"id": 956,
"nodeType": "Return",
"src": "12264:65:0"
}
]
}
}
]
},
"id": 967,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "allowance",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 944,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 941,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 967,
"src": "12149:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 940,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "12149:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 943,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 967,
"src": "12165:16:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 942,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "12165:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "12148:34:0"
},
"payable": false,
"returnParameters": {
"id": 947,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 946,
"name": "remaining",
"nodeType": "VariableDeclaration",
"scope": 967,
"src": "12208:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 945,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "12208:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "12207:16:0"
},
"scope": 1142,
"src": "12130:287:0",
"stateMutability": "view",
"superFunction": 545,
"visibility": "public"
},
{
"body": {
"id": 986,
"nodeType": "Block",
"src": "12542:115:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 976,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 974,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "12552:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 975,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "12565:4:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"src": "12552:17:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 977,
"nodeType": "ExpressionStatement",
"src": "12552:17:0"
},
{
"expression": {
"argumentTypes": null,
"id": 980,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 978,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "12579:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 979,
"name": "_upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 969,
"src": "12597:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "12579:34:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 981,
"nodeType": "ExpressionStatement",
"src": "12579:34:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 983,
"name": "_upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 969,
"src": "12633:16:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 982,
"name": "Deprecate",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1135,
"src": "12623:9:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$",
"typeString": "function (address)"
}
},
"id": 984,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12623:27:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 985,
"nodeType": "ExpressionStatement",
"src": "12623:27:0"
}
]
},
"id": 987,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 972,
"modifierName": {
"argumentTypes": null,
"id": 971,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "12532:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "12532:9:0"
}
],
"name": "deprecate",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 970,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 969,
"name": "_upgradedAddress",
"nodeType": "VariableDeclaration",
"scope": 987,
"src": "12499:24:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 968,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "12499:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "12498:26:0"
},
"payable": false,
"returnParameters": {
"id": 973,
"nodeType": "ParameterList",
"parameters": [],
"src": "12542:0:0"
},
"scope": 1142,
"src": "12480:177:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 1004,
"nodeType": "Block",
"src": "12774:158:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"id": 992,
"name": "deprecated",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 765,
"src": "12788:10:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 1002,
"nodeType": "Block",
"src": "12882:44:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1000,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "12903:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 991,
"id": 1001,
"nodeType": "Return",
"src": "12896:19:0"
}
]
},
"id": 1003,
"nodeType": "IfStatement",
"src": "12784:142:0",
"trueBody": {
"id": 999,
"nodeType": "Block",
"src": "12800:76:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 994,
"name": "upgradedAddress",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 763,
"src": "12835:15:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 993,
"name": "StandardToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 546,
"src": "12821:13:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_StandardToken_$546_$",
"typeString": "type(contract StandardToken)"
}
},
"id": 995,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12821:30:0",
"typeDescriptions": {
"typeIdentifier": "t_contract$_StandardToken_$546",
"typeString": "contract StandardToken"
}
},
"id": 996,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "totalSupply",
"nodeType": "MemberAccess",
"referencedDeclaration": 146,
"src": "12821:42:0",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
"typeString": "function () view external returns (uint256)"
}
},
"id": 997,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "12821:44:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 991,
"id": 998,
"nodeType": "Return",
"src": "12814:51:0"
}
]
}
}
]
},
"id": 1005,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "totalSupply",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 988,
"nodeType": "ParameterList",
"parameters": [],
"src": "12740:2:0"
},
"payable": false,
"returnParameters": {
"id": 991,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 990,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 1005,
"src": "12768:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 989,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "12768:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "12767:6:0"
},
"scope": 1142,
"src": "12720:212:0",
"stateMutability": "view",
"superFunction": 146,
"visibility": "public"
},
{
"body": {
"id": 1046,
"nodeType": "Block",
"src": "13135:214:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1017,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1015,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 1013,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "13153:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 1014,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1007,
"src": "13168:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13153:21:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"id": 1016,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "13177:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13153:36:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1012,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "13145:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1018,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13145:45:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1019,
"nodeType": "ExpressionStatement",
"src": "13145:45:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1029,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1025,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1021,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "13208:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 1023,
"indexExpression": {
"argumentTypes": null,
"id": 1022,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "13217:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "13208:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 1024,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1007,
"src": "13226:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13208:24:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1026,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "13235:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 1028,
"indexExpression": {
"argumentTypes": null,
"id": 1027,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "13244:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "13235:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13208:42:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1020,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "13200:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1030,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13200:51:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1031,
"nodeType": "ExpressionStatement",
"src": "13200:51:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1036,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1032,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "13262:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 1034,
"indexExpression": {
"argumentTypes": null,
"id": 1033,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "13271:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "13262:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "+=",
"rightHandSide": {
"argumentTypes": null,
"id": 1035,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1007,
"src": "13281:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13262:25:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1037,
"nodeType": "ExpressionStatement",
"src": "13262:25:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1040,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1038,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "13297:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "+=",
"rightHandSide": {
"argumentTypes": null,
"id": 1039,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1007,
"src": "13313:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13297:22:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1041,
"nodeType": "ExpressionStatement",
"src": "13297:22:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1043,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1007,
"src": "13335:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 1042,
"name": "Issue",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1127,
"src": "13329:5:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
}
},
"id": 1044,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13329:13:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1045,
"nodeType": "ExpressionStatement",
"src": "13329:13:0"
}
]
},
"id": 1047,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 1010,
"modifierName": {
"argumentTypes": null,
"id": 1009,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "13125:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "13125:9:0"
}
],
"name": "issue",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1008,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1007,
"name": "amount",
"nodeType": "VariableDeclaration",
"scope": 1047,
"src": "13105:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1006,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "13105:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "13104:13:0"
},
"payable": false,
"returnParameters": {
"id": 1011,
"nodeType": "ParameterList",
"parameters": [],
"src": "13135:0:0"
},
"scope": 1142,
"src": "13090:259:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 1082,
"nodeType": "Block",
"src": "13619:184:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1057,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 1055,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "13637:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"id": 1056,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1049,
"src": "13653:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13637:22:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1054,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "13629:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1058,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13629:31:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1059,
"nodeType": "ExpressionStatement",
"src": "13629:31:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1065,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1061,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "13678:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 1063,
"indexExpression": {
"argumentTypes": null,
"id": 1062,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "13687:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "13678:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"id": 1064,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1049,
"src": "13697:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13678:25:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1060,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "13670:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1066,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13670:34:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1067,
"nodeType": "ExpressionStatement",
"src": "13670:34:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1070,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1068,
"name": "_totalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 141,
"src": "13715:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "-=",
"rightHandSide": {
"argumentTypes": null,
"id": 1069,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1049,
"src": "13731:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13715:22:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1071,
"nodeType": "ExpressionStatement",
"src": "13715:22:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1076,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1072,
"name": "balances",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 216,
"src": "13747:8:0",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 1074,
"indexExpression": {
"argumentTypes": null,
"id": 1073,
"name": "owner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 99,
"src": "13756:5:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "13747:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "-=",
"rightHandSide": {
"argumentTypes": null,
"id": 1075,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1049,
"src": "13766:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "13747:25:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1077,
"nodeType": "ExpressionStatement",
"src": "13747:25:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1079,
"name": "amount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1049,
"src": "13789:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 1078,
"name": "Redeem",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1131,
"src": "13782:6:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
}
},
"id": 1080,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13782:14:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1081,
"nodeType": "ExpressionStatement",
"src": "13782:14:0"
}
]
},
"id": 1083,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 1052,
"modifierName": {
"argumentTypes": null,
"id": 1051,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "13609:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "13609:9:0"
}
],
"name": "redeem",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1050,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1049,
"name": "amount",
"nodeType": "VariableDeclaration",
"scope": 1083,
"src": "13589:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1048,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "13589:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "13588:13:0"
},
"payable": false,
"returnParameters": {
"id": 1053,
"nodeType": "ParameterList",
"parameters": [],
"src": "13619:0:0"
},
"scope": 1142,
"src": "13573:230:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 1122,
"nodeType": "Block",
"src": "13882:305:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1095,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 1093,
"name": "newBasisPoints",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1085,
"src": "13988:14:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3230",
"id": 1094,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "14005:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_20_by_1",
"typeString": "int_const 20"
},
"value": "20"
},
"src": "13988:19:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1092,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "13980:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1096,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "13980:28:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1097,
"nodeType": "ExpressionStatement",
"src": "13980:28:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1101,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 1099,
"name": "newMaxFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1087,
"src": "14026:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3530",
"id": 1100,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "14038:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_50_by_1",
"typeString": "int_const 50"
},
"value": "50"
},
"src": "14026:14:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 1098,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1157,
"src": "14018:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 1102,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "14018:23:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1103,
"nodeType": "ExpressionStatement",
"src": "14018:23:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1106,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1104,
"name": "basisPointsRate",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 219,
"src": "14052:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 1105,
"name": "newBasisPoints",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1085,
"src": "14070:14:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "14052:32:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1107,
"nodeType": "ExpressionStatement",
"src": "14052:32:0"
},
{
"expression": {
"argumentTypes": null,
"id": 1115,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1108,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "14094:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1113,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"hexValue": "3130",
"id": 1111,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "14121:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "BinaryOperation",
"operator": "**",
"rightExpression": {
"argumentTypes": null,
"id": 1112,
"name": "decimals",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 761,
"src": "14125:8:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "14121:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 1109,
"name": "newMaxFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1087,
"src": "14107:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1110,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 34,
"src": "14107:13:0",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 1114,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "14107:27:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "14094:40:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1116,
"nodeType": "ExpressionStatement",
"src": "14094:40:0"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1118,
"name": "basisPointsRate",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 219,
"src": "14152:15:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 1119,
"name": "maximumFee",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 222,
"src": "14169:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 1117,
"name": "Params",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1141,
"src": "14145:6:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$",
"typeString": "function (uint256,uint256)"
}
},
"id": 1120,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "14145:35:0",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1121,
"nodeType": "ExpressionStatement",
"src": "14145:35:0"
}
]
},
"id": 1123,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 1090,
"modifierName": {
"argumentTypes": null,
"id": 1089,
"name": "onlyOwner",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 119,
"src": "13872:9:0",
"typeDescriptions": {
"typeIdentifier": "t_modifier$__$",
"typeString": "modifier ()"
}
},
"nodeType": "ModifierInvocation",
"src": "13872:9:0"
}
],
"name": "setParams",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1088,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1085,
"name": "newBasisPoints",
"nodeType": "VariableDeclaration",
"scope": 1123,
"src": "13828:19:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1084,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "13828:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1087,
"name": "newMaxFee",
"nodeType": "VariableDeclaration",
"scope": 1123,
"src": "13849:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1086,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "13849:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "13827:37:0"
},
"payable": false,
"returnParameters": {
"id": 1091,
"nodeType": "ParameterList",
"parameters": [],
"src": "13882:0:0"
},
"scope": 1142,
"src": "13809:378:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"id": 1127,
"name": "Issue",
"nodeType": "EventDefinition",
"parameters": {
"id": 1126,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1125,
"indexed": false,
"name": "amount",
"nodeType": "VariableDeclaration",
"scope": 1127,
"src": "14245:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1124,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "14245:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "14244:13:0"
},
"src": "14233:25:0"
},
{
"anonymous": false,
"id": 1131,
"name": "Redeem",
"nodeType": "EventDefinition",
"parameters": {
"id": 1130,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1129,
"indexed": false,
"name": "amount",
"nodeType": "VariableDeclaration",
"scope": 1131,
"src": "14316:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1128,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "14316:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "14315:13:0"
},
"src": "14303:26:0"
},
{
"anonymous": false,
"id": 1135,
"name": "Deprecate",
"nodeType": "EventDefinition",
"parameters": {
"id": 1134,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1133,
"indexed": false,
"name": "newAddress",
"nodeType": "VariableDeclaration",
"scope": 1135,
"src": "14393:18:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1132,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "14393:7:0",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "14392:20:0"
},
"src": "14377:36:0"
},
{
"anonymous": false,
"id": 1141,
"name": "Params",
"nodeType": "EventDefinition",
"parameters": {
"id": 1140,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1137,
"indexed": false,
"name": "feeBasisPoints",
"nodeType": "VariableDeclaration",
"scope": 1141,
"src": "14473:19:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1136,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "14473:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1139,
"indexed": false,
"name": "maxFee",
"nodeType": "VariableDeclaration",
"scope": 1141,
"src": "14494:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1138,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "14494:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "14472:34:0"
},
"src": "14460:47:0"
}
],
"scope": 1143,
"src": "9728:4781:0"
}
],
"src": "67:14442:0"
},
"id": 0,
"legacyAST": {
"attributes": {
"absolutePath": "src/Contract.sol",
"exportedSymbols": {
"BasicToken": [
347
],
"BlackList": [
717
],
"ERC20": [
205
],
"ERC20Basic": [
169
],
"Ownable": [
139
],
"Pausable": [
603
],
"SafeMath": [
97
],
"StandardToken": [
546
],
"TetherToken": [
1142
],
"UpgradedStandardToken": [
749
]
}
},
"children": [
{
"attributes": {
"literals": [
"solidity",
"^",
"0.4",
".17"
]
},
"id": 1,
"name": "PragmaDirective",
"src": "67:24:0"
},
{
"attributes": {
"baseContracts": [
null
],
"contractDependencies": [
null
],
"contractKind": "library",
"documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error",
"fullyImplemented": true,
"linearizedBaseContracts": [
97
],
"name": "SafeMath",
"scope": 1143
},
"children": [
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "mul",
"payable": false,
"scope": 97,
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "a",
"scope": 34,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 2,
"name": "ElementaryTypeName",
"src": "219:7:0"
}
],
"id": 3,
"name": "VariableDeclaration",
"src": "219:9:0"
},
{
"attributes": {
"constant": false,
"name": "b",
"scope": 34,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 4,
"name": "ElementaryTypeName",
"src": "230:7:0"
}
],
"id": 5,
"name": "VariableDeclaration",
"src": "230:9:0"
}
],
"id": 6,
"name": "ParameterList",
"src": "218:22:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 34,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 7,
"name": "ElementaryTypeName",
"src": "264:7:0"
}
],
"id": 8,
"name": "VariableDeclaration",
"src": "264:7:0"
}
],
"id": 9,
"name": "ParameterList",
"src": "263:9:0"
},
{
"children": [
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "==",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 3,
"type": "uint256",
"value": "a"
},
"id": 10,
"name": "Identifier",
"src": "287:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 11,
"name": "Literal",
"src": "292:1:0"
}
],
"id": 12,
"name": "BinaryOperation",
"src": "287:6:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 9
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 13,
"name": "Literal",
"src": "316:1:0"
}
],
"id": 14,
"name": "Return",
"src": "309:8:0"
}
],
"id": 15,
"name": "Block",
"src": "295:33:0"
}
],
"id": 16,
"name": "IfStatement",
"src": "283:45:0"
},
{
"attributes": {
"assignments": [
18
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "c",
"scope": 34,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 17,
"name": "ElementaryTypeName",
"src": "337:7:0"
}
],
"id": 18,
"name": "VariableDeclaration",
"src": "337:9:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "*",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 3,
"type": "uint256",
"value": "a"
},
"id": 19,
"name": "Identifier",
"src": "349:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 5,
"type": "uint256",
"value": "b"
},
"id": 20,
"name": "Identifier",
"src": "353:1:0"
}
],
"id": 21,
"name": "BinaryOperation",
"src": "349:5:0"
}
],
"id": 22,
"name": "VariableDeclarationStatement",
"src": "337:17:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1145,
"type": "function (bool) pure",
"value": "assert"
},
"id": 23,
"name": "Identifier",
"src": "364:6:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "==",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "/",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 18,
"type": "uint256",
"value": "c"
},
"id": 24,
"name": "Identifier",
"src": "371:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 3,
"type": "uint256",
"value": "a"
},
"id": 25,
"name": "Identifier",
"src": "375:1:0"
}
],
"id": 26,
"name": "BinaryOperation",
"src": "371:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 5,
"type": "uint256",
"value": "b"
},
"id": 27,
"name": "Identifier",
"src": "380:1:0"
}
],
"id": 28,
"name": "BinaryOperation",
"src": "371:10:0"
}
],
"id": 29,
"name": "FunctionCall",
"src": "364:18:0"
}
],
"id": 30,
"name": "ExpressionStatement",
"src": "364:18:0"
},
{
"attributes": {
"functionReturnParameters": 9
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 18,
"type": "uint256",
"value": "c"
},
"id": 31,
"name": "Identifier",
"src": "399:1:0"
}
],
"id": 32,
"name": "Return",
"src": "392:8:0"
}
],
"id": 33,
"name": "Block",
"src": "273:134:0"
}
],
"id": 34,
"name": "FunctionDefinition",
"src": "206:201:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "div",
"payable": false,
"scope": 97,
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "a",
"scope": 52,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 35,
"name": "ElementaryTypeName",
"src": "426:7:0"
}
],
"id": 36,
"name": "VariableDeclaration",
"src": "426:9:0"
},
{
"attributes": {
"constant": false,
"name": "b",
"scope": 52,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 37,
"name": "ElementaryTypeName",
"src": "437:7:0"
}
],
"id": 38,
"name": "VariableDeclaration",
"src": "437:9:0"
}
],
"id": 39,
"name": "ParameterList",
"src": "425:22:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 52,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 40,
"name": "ElementaryTypeName",
"src": "471:7:0"
}
],
"id": 41,
"name": "VariableDeclaration",
"src": "471:7:0"
}
],
"id": 42,
"name": "ParameterList",
"src": "470:9:0"
},
{
"children": [
{
"attributes": {
"assignments": [
44
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "c",
"scope": 52,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 43,
"name": "ElementaryTypeName",
"src": "568:7:0"
}
],
"id": 44,
"name": "VariableDeclaration",
"src": "568:9:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "/",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 36,
"type": "uint256",
"value": "a"
},
"id": 45,
"name": "Identifier",
"src": "580:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 38,
"type": "uint256",
"value": "b"
},
"id": 46,
"name": "Identifier",
"src": "584:1:0"
}
],
"id": 47,
"name": "BinaryOperation",
"src": "580:5:0"
}
],
"id": 48,
"name": "VariableDeclarationStatement",
"src": "568:17:0"
},
{
"attributes": {
"functionReturnParameters": 42
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 44,
"type": "uint256",
"value": "c"
},
"id": 49,
"name": "Identifier",
"src": "688:1:0"
}
],
"id": 50,
"name": "Return",
"src": "681:8:0"
}
],
"id": 51,
"name": "Block",
"src": "480:216:0"
}
],
"id": 52,
"name": "FunctionDefinition",
"src": "413:283:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "sub",
"payable": false,
"scope": 97,
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "a",
"scope": 72,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 53,
"name": "ElementaryTypeName",
"src": "715:7:0"
}
],
"id": 54,
"name": "VariableDeclaration",
"src": "715:9:0"
},
{
"attributes": {
"constant": false,
"name": "b",
"scope": 72,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 55,
"name": "ElementaryTypeName",
"src": "726:7:0"
}
],
"id": 56,
"name": "VariableDeclaration",
"src": "726:9:0"
}
],
"id": 57,
"name": "ParameterList",
"src": "714:22:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 72,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 58,
"name": "ElementaryTypeName",
"src": "760:7:0"
}
],
"id": 59,
"name": "VariableDeclaration",
"src": "760:7:0"
}
],
"id": 60,
"name": "ParameterList",
"src": "759:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1145,
"type": "function (bool) pure",
"value": "assert"
},
"id": 61,
"name": "Identifier",
"src": "779:6:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "<=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 56,
"type": "uint256",
"value": "b"
},
"id": 62,
"name": "Identifier",
"src": "786:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 54,
"type": "uint256",
"value": "a"
},
"id": 63,
"name": "Identifier",
"src": "791:1:0"
}
],
"id": 64,
"name": "BinaryOperation",
"src": "786:6:0"
}
],
"id": 65,
"name": "FunctionCall",
"src": "779:14:0"
}
],
"id": 66,
"name": "ExpressionStatement",
"src": "779:14:0"
},
{
"attributes": {
"functionReturnParameters": 60
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "-",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 54,
"type": "uint256",
"value": "a"
},
"id": 67,
"name": "Identifier",
"src": "810:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 56,
"type": "uint256",
"value": "b"
},
"id": 68,
"name": "Identifier",
"src": "814:1:0"
}
],
"id": 69,
"name": "BinaryOperation",
"src": "810:5:0"
}
],
"id": 70,
"name": "Return",
"src": "803:12:0"
}
],
"id": 71,
"name": "Block",
"src": "769:53:0"
}
],
"id": 72,
"name": "FunctionDefinition",
"src": "702:120:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "add",
"payable": false,
"scope": 97,
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "a",
"scope": 96,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 73,
"name": "ElementaryTypeName",
"src": "841:7:0"
}
],
"id": 74,
"name": "VariableDeclaration",
"src": "841:9:0"
},
{
"attributes": {
"constant": false,
"name": "b",
"scope": 96,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 75,
"name": "ElementaryTypeName",
"src": "852:7:0"
}
],
"id": 76,
"name": "VariableDeclaration",
"src": "852:9:0"
}
],
"id": 77,
"name": "ParameterList",
"src": "840:22:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 96,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 78,
"name": "ElementaryTypeName",
"src": "886:7:0"
}
],
"id": 79,
"name": "VariableDeclaration",
"src": "886:7:0"
}
],
"id": 80,
"name": "ParameterList",
"src": "885:9:0"
},
{
"children": [
{
"attributes": {
"assignments": [
82
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "c",
"scope": 96,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint256",
"type": "uint256"
},
"id": 81,
"name": "ElementaryTypeName",
"src": "905:7:0"
}
],
"id": 82,
"name": "VariableDeclaration",
"src": "905:9:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 74,
"type": "uint256",
"value": "a"
},
"id": 83,
"name": "Identifier",
"src": "917:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 76,
"type": "uint256",
"value": "b"
},
"id": 84,
"name": "Identifier",
"src": "921:1:0"
}
],
"id": 85,
"name": "BinaryOperation",
"src": "917:5:0"
}
],
"id": 86,
"name": "VariableDeclarationStatement",
"src": "905:17:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1145,
"type": "function (bool) pure",
"value": "assert"
},
"id": 87,
"name": "Identifier",
"src": "932:6:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 82,
"type": "uint256",
"value": "c"
},
"id": 88,
"name": "Identifier",
"src": "939:1:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 74,
"type": "uint256",
"value": "a"
},
"id": 89,
"name": "Identifier",
"src": "944:1:0"
}
],
"id": 90,
"name": "BinaryOperation",
"src": "939:6:0"
}
],
"id": 91,
"name": "FunctionCall",
"src": "932:14:0"
}
],
"id": 92,
"name": "ExpressionStatement",
"src": "932:14:0"
},
{
"attributes": {
"functionReturnParameters": 80
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 82,
"type": "uint256",
"value": "c"
},
"id": 93,
"name": "Identifier",
"src": "963:1:0"
}
],
"id": 94,
"name": "Return",
"src": "956:8:0"
}
],
"id": 95,
"name": "Block",
"src": "895:76:0"
}
],
"id": 96,
"name": "FunctionDefinition",
"src": "828:143:0"
}
],
"id": 97,
"name": "ContractDefinition",
"src": "183:790:0"
},
{
"attributes": {
"baseContracts": [
null
],
"contractDependencies": [
null
],
"contractKind": "contract",
"documentation": "@title Ownable\n@dev The Ownable contract has an owner address, and provides basic authorization control\nfunctions, this simplifies the implementation of \"user permissions\".",
"fullyImplemented": true,
"linearizedBaseContracts": [
139
],
"name": "Ownable",
"scope": 1143
},
"children": [
{
"attributes": {
"constant": false,
"name": "owner",
"scope": 139,
"stateVariable": true,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 98,
"name": "ElementaryTypeName",
"src": "1188:7:0"
}
],
"id": 99,
"name": "VariableDeclaration",
"src": "1188:20:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": true,
"modifiers": [
null
],
"name": "Ownable",
"payable": false,
"scope": 139,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 100,
"name": "ParameterList",
"src": "1358:2:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 101,
"name": "ParameterList",
"src": "1368:0:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 102,
"name": "Identifier",
"src": "1378:5:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 103,
"name": "Identifier",
"src": "1386:3:0"
}
],
"id": 104,
"name": "MemberAccess",
"src": "1386:10:0"
}
],
"id": 105,
"name": "Assignment",
"src": "1378:18:0"
}
],
"id": 106,
"name": "ExpressionStatement",
"src": "1378:18:0"
}
],
"id": 107,
"name": "Block",
"src": "1368:35:0"
}
],
"id": 108,
"name": "FunctionDefinition",
"src": "1342:61:0"
},
{
"attributes": {
"name": "onlyOwner",
"visibility": "internal"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 109,
"name": "ParameterList",
"src": "1511:2:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 110,
"name": "Identifier",
"src": "1524:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "==",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 111,
"name": "Identifier",
"src": "1532:3:0"
}
],
"id": 112,
"name": "MemberAccess",
"src": "1532:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 113,
"name": "Identifier",
"src": "1546:5:0"
}
],
"id": 114,
"name": "BinaryOperation",
"src": "1532:19:0"
}
],
"id": 115,
"name": "FunctionCall",
"src": "1524:28:0"
}
],
"id": 116,
"name": "ExpressionStatement",
"src": "1524:28:0"
},
{
"id": 117,
"name": "PlaceholderStatement",
"src": "1562:1:0"
}
],
"id": 118,
"name": "Block",
"src": "1514:56:0"
}
],
"id": 119,
"name": "ModifierDefinition",
"src": "1493:77:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "transferOwnership",
"payable": false,
"scope": 139,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "newOwner",
"scope": 138,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 120,
"name": "ElementaryTypeName",
"src": "1765:7:0"
}
],
"id": 121,
"name": "VariableDeclaration",
"src": "1765:16:0"
}
],
"id": 122,
"name": "ParameterList",
"src": "1764:18:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 125,
"name": "ParameterList",
"src": "1800:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 123,
"name": "Identifier",
"src": "1790:9:0"
}
],
"id": 124,
"name": "ModifierInvocation",
"src": "1790:9:0"
},
{
"children": [
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 121,
"type": "address",
"value": "newOwner"
},
"id": 126,
"name": "Identifier",
"src": "1814:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": true,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "address",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
}
],
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"type": "type(address)",
"value": "address"
},
"id": 127,
"name": "ElementaryTypeNameExpression",
"src": "1826:7:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 128,
"name": "Literal",
"src": "1834:1:0"
}
],
"id": 129,
"name": "FunctionCall",
"src": "1826:10:0"
}
],
"id": 130,
"name": "BinaryOperation",
"src": "1814:22:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 131,
"name": "Identifier",
"src": "1852:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 121,
"type": "address",
"value": "newOwner"
},
"id": 132,
"name": "Identifier",
"src": "1860:8:0"
}
],
"id": 133,
"name": "Assignment",
"src": "1852:16:0"
}
],
"id": 134,
"name": "ExpressionStatement",
"src": "1852:16:0"
}
],
"id": 135,
"name": "Block",
"src": "1838:41:0"
}
],
"id": 136,
"name": "IfStatement",
"src": "1810:69:0"
}
],
"id": 137,
"name": "Block",
"src": "1800:85:0"
}
],
"id": 138,
"name": "FunctionDefinition",
"src": "1738:147:0"
}
],
"id": 139,
"name": "ContractDefinition",
"src": "1165:723:0"
},
{
"attributes": {
"baseContracts": [
null
],
"contractDependencies": [
null
],
"contractKind": "contract",
"documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20",
"fullyImplemented": false,
"linearizedBaseContracts": [
169
],
"name": "ERC20Basic",
"scope": 1143
},
"children": [
{
"attributes": {
"constant": false,
"name": "_totalSupply",
"scope": 169,
"stateVariable": true,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 140,
"name": "ElementaryTypeName",
"src": "2043:4:0"
}
],
"id": 141,
"name": "VariableDeclaration",
"src": "2043:24:0"
},
{
"attributes": {
"body": null,
"constant": true,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "totalSupply",
"payable": false,
"scope": 169,
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 142,
"name": "ParameterList",
"src": "2093:2:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 146,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 143,
"name": "ElementaryTypeName",
"src": "2121:4:0"
}
],
"id": 144,
"name": "VariableDeclaration",
"src": "2121:4:0"
}
],
"id": 145,
"name": "ParameterList",
"src": "2120:6:0"
}
],
"id": 146,
"name": "FunctionDefinition",
"src": "2073:54:0"
},
{
"attributes": {
"body": null,
"constant": true,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "balanceOf",
"payable": false,
"scope": 169,
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "who",
"scope": 153,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 147,
"name": "ElementaryTypeName",
"src": "2151:7:0"
}
],
"id": 148,
"name": "VariableDeclaration",
"src": "2151:11:0"
}
],
"id": 149,
"name": "ParameterList",
"src": "2150:13:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 153,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 150,
"name": "ElementaryTypeName",
"src": "2189:4:0"
}
],
"id": 151,
"name": "VariableDeclaration",
"src": "2189:4:0"
}
],
"id": 152,
"name": "ParameterList",
"src": "2188:6:0"
}
],
"id": 153,
"name": "FunctionDefinition",
"src": "2132:63:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "transfer",
"payable": false,
"scope": 169,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "to",
"scope": 160,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 154,
"name": "ElementaryTypeName",
"src": "2218:7:0"
}
],
"id": 155,
"name": "VariableDeclaration",
"src": "2218:10:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 160,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 156,
"name": "ElementaryTypeName",
"src": "2230:4:0"
}
],
"id": 157,
"name": "VariableDeclaration",
"src": "2230:10:0"
}
],
"id": 158,
"name": "ParameterList",
"src": "2217:24:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 159,
"name": "ParameterList",
"src": "2248:0:0"
}
],
"id": 160,
"name": "FunctionDefinition",
"src": "2200:49:0"
},
{
"attributes": {
"anonymous": false,
"name": "Transfer"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": true,
"name": "from",
"scope": 168,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 161,
"name": "ElementaryTypeName",
"src": "2269:7:0"
}
],
"id": 162,
"name": "VariableDeclaration",
"src": "2269:20:0"
},
{
"attributes": {
"constant": false,
"indexed": true,
"name": "to",
"scope": 168,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 163,
"name": "ElementaryTypeName",
"src": "2291:7:0"
}
],
"id": 164,
"name": "VariableDeclaration",
"src": "2291:18:0"
},
{
"attributes": {
"constant": false,
"indexed": false,
"name": "value",
"scope": 168,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 165,
"name": "ElementaryTypeName",
"src": "2311:4:0"
}
],
"id": 166,
"name": "VariableDeclaration",
"src": "2311:10:0"
}
],
"id": 167,
"name": "ParameterList",
"src": "2268:54:0"
}
],
"id": 168,
"name": "EventDefinition",
"src": "2254:69:0"
}
],
"id": 169,
"name": "ContractDefinition",
"src": "2017:308:0"
},
{
"attributes": {
"contractDependencies": [
169
],
"contractKind": "contract",
"documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20",
"fullyImplemented": false,
"linearizedBaseContracts": [
205,
169
],
"name": "ERC20",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "ERC20Basic",
"referencedDeclaration": 169,
"type": "contract ERC20Basic"
},
"id": 170,
"name": "UserDefinedTypeName",
"src": "2434:10:0"
}
],
"id": 171,
"name": "InheritanceSpecifier",
"src": "2434:10:0"
},
{
"attributes": {
"body": null,
"constant": true,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "allowance",
"payable": false,
"scope": 205,
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "owner",
"scope": 180,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 172,
"name": "ElementaryTypeName",
"src": "2470:7:0"
}
],
"id": 173,
"name": "VariableDeclaration",
"src": "2470:13:0"
},
{
"attributes": {
"constant": false,
"name": "spender",
"scope": 180,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 174,
"name": "ElementaryTypeName",
"src": "2485:7:0"
}
],
"id": 175,
"name": "VariableDeclaration",
"src": "2485:15:0"
}
],
"id": 176,
"name": "ParameterList",
"src": "2469:32:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 180,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 177,
"name": "ElementaryTypeName",
"src": "2527:4:0"
}
],
"id": 178,
"name": "VariableDeclaration",
"src": "2527:4:0"
}
],
"id": 179,
"name": "ParameterList",
"src": "2526:6:0"
}
],
"id": 180,
"name": "FunctionDefinition",
"src": "2451:82:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "transferFrom",
"payable": false,
"scope": 205,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "from",
"scope": 189,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 181,
"name": "ElementaryTypeName",
"src": "2560:7:0"
}
],
"id": 182,
"name": "VariableDeclaration",
"src": "2560:12:0"
},
{
"attributes": {
"constant": false,
"name": "to",
"scope": 189,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 183,
"name": "ElementaryTypeName",
"src": "2574:7:0"
}
],
"id": 184,
"name": "VariableDeclaration",
"src": "2574:10:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 189,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 185,
"name": "ElementaryTypeName",
"src": "2586:4:0"
}
],
"id": 186,
"name": "VariableDeclaration",
"src": "2586:10:0"
}
],
"id": 187,
"name": "ParameterList",
"src": "2559:38:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 188,
"name": "ParameterList",
"src": "2604:0:0"
}
],
"id": 189,
"name": "FunctionDefinition",
"src": "2538:67:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "approve",
"payable": false,
"scope": 205,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "spender",
"scope": 196,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 190,
"name": "ElementaryTypeName",
"src": "2627:7:0"
}
],
"id": 191,
"name": "VariableDeclaration",
"src": "2627:15:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 196,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 192,
"name": "ElementaryTypeName",
"src": "2644:4:0"
}
],
"id": 193,
"name": "VariableDeclaration",
"src": "2644:10:0"
}
],
"id": 194,
"name": "ParameterList",
"src": "2626:29:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 195,
"name": "ParameterList",
"src": "2662:0:0"
}
],
"id": 196,
"name": "FunctionDefinition",
"src": "2610:53:0"
},
{
"attributes": {
"anonymous": false,
"name": "Approval"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": true,
"name": "owner",
"scope": 204,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 197,
"name": "ElementaryTypeName",
"src": "2683:7:0"
}
],
"id": 198,
"name": "VariableDeclaration",
"src": "2683:21:0"
},
{
"attributes": {
"constant": false,
"indexed": true,
"name": "spender",
"scope": 204,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 199,
"name": "ElementaryTypeName",
"src": "2706:7:0"
}
],
"id": 200,
"name": "VariableDeclaration",
"src": "2706:23:0"
},
{
"attributes": {
"constant": false,
"indexed": false,
"name": "value",
"scope": 204,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 201,
"name": "ElementaryTypeName",
"src": "2731:4:0"
}
],
"id": 202,
"name": "VariableDeclaration",
"src": "2731:10:0"
}
],
"id": 203,
"name": "ParameterList",
"src": "2682:60:0"
}
],
"id": 204,
"name": "EventDefinition",
"src": "2668:75:0"
}
],
"id": 205,
"name": "ContractDefinition",
"src": "2416:329:0"
},
{
"attributes": {
"contractDependencies": [
139,
169
],
"contractKind": "contract",
"documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.",
"fullyImplemented": false,
"linearizedBaseContracts": [
347,
169,
139
],
"name": "BasicToken",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "Ownable",
"referencedDeclaration": 139,
"type": "contract Ownable"
},
"id": 206,
"name": "UserDefinedTypeName",
"src": "2860:7:0"
}
],
"id": 207,
"name": "InheritanceSpecifier",
"src": "2860:7:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "ERC20Basic",
"referencedDeclaration": 169,
"type": "contract ERC20Basic"
},
"id": 208,
"name": "UserDefinedTypeName",
"src": "2869:10:0"
}
],
"id": 209,
"name": "InheritanceSpecifier",
"src": "2869:10:0"
},
{
"children": [
{
"attributes": {
"contractScope": null,
"name": "SafeMath",
"referencedDeclaration": 97,
"type": "library SafeMath"
},
"id": 210,
"name": "UserDefinedTypeName",
"src": "2892:8:0"
},
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 211,
"name": "ElementaryTypeName",
"src": "2905:4:0"
}
],
"id": 212,
"name": "UsingForDirective",
"src": "2886:24:0"
},
{
"attributes": {
"constant": false,
"name": "balances",
"scope": 347,
"stateVariable": true,
"storageLocation": "default",
"type": "mapping(address => uint256)",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 213,
"name": "ElementaryTypeName",
"src": "2924:7:0"
},
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 214,
"name": "ElementaryTypeName",
"src": "2935:4:0"
}
],
"id": 215,
"name": "Mapping",
"src": "2916:24:0"
}
],
"id": 216,
"name": "VariableDeclaration",
"src": "2916:40:0"
},
{
"attributes": {
"constant": false,
"name": "basisPointsRate",
"scope": 347,
"stateVariable": true,
"storageLocation": "default",
"type": "uint256",
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 217,
"name": "ElementaryTypeName",
"src": "3041:4:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 218,
"name": "Literal",
"src": "3071:1:0"
}
],
"id": 219,
"name": "VariableDeclaration",
"src": "3041:31:0"
},
{
"attributes": {
"constant": false,
"name": "maximumFee",
"scope": 347,
"stateVariable": true,
"storageLocation": "default",
"type": "uint256",
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 220,
"name": "ElementaryTypeName",
"src": "3078:4:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 221,
"name": "Literal",
"src": "3103:1:0"
}
],
"id": 222,
"name": "VariableDeclaration",
"src": "3078:26:0"
},
{
"attributes": {
"name": "onlyPayloadSize",
"visibility": "internal"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "size",
"scope": 240,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 223,
"name": "ElementaryTypeName",
"src": "3202:4:0"
}
],
"id": 224,
"name": "VariableDeclaration",
"src": "3202:9:0"
}
],
"id": 225,
"name": "ParameterList",
"src": "3201:11:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 226,
"name": "Identifier",
"src": "3223:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!",
"prefix": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "<",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "length",
"referencedDeclaration": null,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "data",
"referencedDeclaration": null,
"type": "bytes calldata"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 227,
"name": "Identifier",
"src": "3233:3:0"
}
],
"id": 228,
"name": "MemberAccess",
"src": "3233:8:0"
}
],
"id": 229,
"name": "MemberAccess",
"src": "3233:15:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 224,
"type": "uint256",
"value": "size"
},
"id": 230,
"name": "Identifier",
"src": "3251:4:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "34",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 4",
"value": "4"
},
"id": 231,
"name": "Literal",
"src": "3258:1:0"
}
],
"id": 232,
"name": "BinaryOperation",
"src": "3251:8:0"
}
],
"id": 233,
"name": "BinaryOperation",
"src": "3233:26:0"
}
],
"id": 234,
"name": "TupleExpression",
"src": "3232:28:0"
}
],
"id": 235,
"name": "UnaryOperation",
"src": "3231:29:0"
}
],
"id": 236,
"name": "FunctionCall",
"src": "3223:38:0"
}
],
"id": 237,
"name": "ExpressionStatement",
"src": "3223:38:0"
},
{
"id": 238,
"name": "PlaceholderStatement",
"src": "3271:1:0"
}
],
"id": 239,
"name": "Block",
"src": "3213:66:0"
}
],
"id": 240,
"name": "ModifierDefinition",
"src": "3177:102:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "transfer",
"payable": false,
"scope": 347,
"stateMutability": "nonpayable",
"superFunction": 160,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_to",
"scope": 334,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 241,
"name": "ElementaryTypeName",
"src": "3463:7:0"
}
],
"id": 242,
"name": "VariableDeclaration",
"src": "3463:11:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 334,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 243,
"name": "ElementaryTypeName",
"src": "3476:4:0"
}
],
"id": 244,
"name": "VariableDeclaration",
"src": "3476:11:0"
}
],
"id": 245,
"name": "ParameterList",
"src": "3462:26:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 251,
"name": "ParameterList",
"src": "3520:0:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 240,
"type": "modifier (uint256)",
"value": "onlyPayloadSize"
},
"id": 246,
"name": "Identifier",
"src": "3496:15:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "*",
"type": "int_const 64"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "32",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 2",
"value": "2"
},
"id": 247,
"name": "Literal",
"src": "3512:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3332",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 32",
"value": "32"
},
"id": 248,
"name": "Literal",
"src": "3516:2:0"
}
],
"id": 249,
"name": "BinaryOperation",
"src": "3512:6:0"
}
],
"id": 250,
"name": "ModifierInvocation",
"src": "3496:23:0"
},
{
"children": [
{
"attributes": {
"assignments": [
253
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "fee",
"scope": 334,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 252,
"name": "ElementaryTypeName",
"src": "3530:4:0"
}
],
"id": 253,
"name": "VariableDeclaration",
"src": "3530:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "div",
"referencedDeclaration": 52,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "mul",
"referencedDeclaration": 34,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 244,
"type": "uint256",
"value": "_value"
},
"id": 254,
"name": "Identifier",
"src": "3542:6:0"
}
],
"id": 255,
"name": "MemberAccess",
"src": "3542:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 219,
"type": "uint256",
"value": "basisPointsRate"
},
"id": 256,
"name": "Identifier",
"src": "3553:15:0"
}
],
"id": 257,
"name": "FunctionCall",
"src": "3542:27:0"
}
],
"id": 258,
"name": "TupleExpression",
"src": "3541:29:0"
}
],
"id": 259,
"name": "MemberAccess",
"src": "3541:33:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3130303030",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 10000",
"value": "10000"
},
"id": 260,
"name": "Literal",
"src": "3575:5:0"
}
],
"id": 261,
"name": "FunctionCall",
"src": "3541:40:0"
}
],
"id": 262,
"name": "VariableDeclarationStatement",
"src": "3530:51:0"
},
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 263,
"name": "Identifier",
"src": "3595:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 264,
"name": "Identifier",
"src": "3601:10:0"
}
],
"id": 265,
"name": "BinaryOperation",
"src": "3595:16:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 266,
"name": "Identifier",
"src": "3627:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 267,
"name": "Identifier",
"src": "3633:10:0"
}
],
"id": 268,
"name": "Assignment",
"src": "3627:16:0"
}
],
"id": 269,
"name": "ExpressionStatement",
"src": "3627:16:0"
}
],
"id": 270,
"name": "Block",
"src": "3613:41:0"
}
],
"id": 271,
"name": "IfStatement",
"src": "3591:63:0"
},
{
"attributes": {
"assignments": [
273
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "sendAmount",
"scope": 334,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 272,
"name": "ElementaryTypeName",
"src": "3663:4:0"
}
],
"id": 273,
"name": "VariableDeclaration",
"src": "3663:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sub",
"referencedDeclaration": 72,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 244,
"type": "uint256",
"value": "_value"
},
"id": 274,
"name": "Identifier",
"src": "3681:6:0"
}
],
"id": 275,
"name": "MemberAccess",
"src": "3681:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 276,
"name": "Identifier",
"src": "3692:3:0"
}
],
"id": 277,
"name": "FunctionCall",
"src": "3681:15:0"
}
],
"id": 278,
"name": "VariableDeclarationStatement",
"src": "3663:33:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 279,
"name": "Identifier",
"src": "3706:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 280,
"name": "Identifier",
"src": "3715:3:0"
}
],
"id": 281,
"name": "MemberAccess",
"src": "3715:10:0"
}
],
"id": 282,
"name": "IndexAccess",
"src": "3706:20:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sub",
"referencedDeclaration": 72,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 283,
"name": "Identifier",
"src": "3729:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 284,
"name": "Identifier",
"src": "3738:3:0"
}
],
"id": 285,
"name": "MemberAccess",
"src": "3738:10:0"
}
],
"id": 286,
"name": "IndexAccess",
"src": "3729:20:0"
}
],
"id": 287,
"name": "MemberAccess",
"src": "3729:24:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 244,
"type": "uint256",
"value": "_value"
},
"id": 288,
"name": "Identifier",
"src": "3754:6:0"
}
],
"id": 289,
"name": "FunctionCall",
"src": "3729:32:0"
}
],
"id": 290,
"name": "Assignment",
"src": "3706:55:0"
}
],
"id": 291,
"name": "ExpressionStatement",
"src": "3706:55:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 292,
"name": "Identifier",
"src": "3771:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 242,
"type": "address",
"value": "_to"
},
"id": 293,
"name": "Identifier",
"src": "3780:3:0"
}
],
"id": 294,
"name": "IndexAccess",
"src": "3771:13:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "add",
"referencedDeclaration": 96,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 295,
"name": "Identifier",
"src": "3787:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 242,
"type": "address",
"value": "_to"
},
"id": 296,
"name": "Identifier",
"src": "3796:3:0"
}
],
"id": 297,
"name": "IndexAccess",
"src": "3787:13:0"
}
],
"id": 298,
"name": "MemberAccess",
"src": "3787:17:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 273,
"type": "uint256",
"value": "sendAmount"
},
"id": 299,
"name": "Identifier",
"src": "3805:10:0"
}
],
"id": 300,
"name": "FunctionCall",
"src": "3787:29:0"
}
],
"id": 301,
"name": "Assignment",
"src": "3771:45:0"
}
],
"id": 302,
"name": "ExpressionStatement",
"src": "3771:45:0"
},
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 303,
"name": "Identifier",
"src": "3830:3:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 304,
"name": "Literal",
"src": "3836:1:0"
}
],
"id": 305,
"name": "BinaryOperation",
"src": "3830:7:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 306,
"name": "Identifier",
"src": "3853:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 307,
"name": "Identifier",
"src": "3862:5:0"
}
],
"id": 308,
"name": "IndexAccess",
"src": "3853:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "add",
"referencedDeclaration": 96,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 309,
"name": "Identifier",
"src": "3871:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 310,
"name": "Identifier",
"src": "3880:5:0"
}
],
"id": 311,
"name": "IndexAccess",
"src": "3871:15:0"
}
],
"id": 312,
"name": "MemberAccess",
"src": "3871:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 313,
"name": "Identifier",
"src": "3891:3:0"
}
],
"id": 314,
"name": "FunctionCall",
"src": "3871:24:0"
}
],
"id": 315,
"name": "Assignment",
"src": "3853:42:0"
}
],
"id": 316,
"name": "ExpressionStatement",
"src": "3853:42:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 168,
"type": "function (address,address,uint256)",
"value": "Transfer"
},
"id": 317,
"name": "Identifier",
"src": "3909:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 318,
"name": "Identifier",
"src": "3918:3:0"
}
],
"id": 319,
"name": "MemberAccess",
"src": "3918:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 320,
"name": "Identifier",
"src": "3930:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 253,
"type": "uint256",
"value": "fee"
},
"id": 321,
"name": "Identifier",
"src": "3937:3:0"
}
],
"id": 322,
"name": "FunctionCall",
"src": "3909:32:0"
}
],
"id": 323,
"name": "ExpressionStatement",
"src": "3909:32:0"
}
],
"id": 324,
"name": "Block",
"src": "3839:113:0"
}
],
"id": 325,
"name": "IfStatement",
"src": "3826:126:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 168,
"type": "function (address,address,uint256)",
"value": "Transfer"
},
"id": 326,
"name": "Identifier",
"src": "3961:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 327,
"name": "Identifier",
"src": "3970:3:0"
}
],
"id": 328,
"name": "MemberAccess",
"src": "3970:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 242,
"type": "address",
"value": "_to"
},
"id": 329,
"name": "Identifier",
"src": "3982:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 273,
"type": "uint256",
"value": "sendAmount"
},
"id": 330,
"name": "Identifier",
"src": "3987:10:0"
}
],
"id": 331,
"name": "FunctionCall",
"src": "3961:37:0"
}
],
"id": 332,
"name": "ExpressionStatement",
"src": "3961:37:0"
}
],
"id": 333,
"name": "Block",
"src": "3520:485:0"
}
],
"id": 334,
"name": "FunctionDefinition",
"src": "3445:560:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "balanceOf",
"payable": false,
"scope": 347,
"stateMutability": "view",
"superFunction": 153,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_owner",
"scope": 346,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 335,
"name": "ElementaryTypeName",
"src": "4235:7:0"
}
],
"id": 336,
"name": "VariableDeclaration",
"src": "4235:14:0"
}
],
"id": 337,
"name": "ParameterList",
"src": "4234:16:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "balance",
"scope": 346,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 338,
"name": "ElementaryTypeName",
"src": "4276:4:0"
}
],
"id": 339,
"name": "VariableDeclaration",
"src": "4276:12:0"
}
],
"id": 340,
"name": "ParameterList",
"src": "4275:14:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 340
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 341,
"name": "Identifier",
"src": "4307:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 336,
"type": "address",
"value": "_owner"
},
"id": 342,
"name": "Identifier",
"src": "4316:6:0"
}
],
"id": 343,
"name": "IndexAccess",
"src": "4307:16:0"
}
],
"id": 344,
"name": "Return",
"src": "4300:23:0"
}
],
"id": 345,
"name": "Block",
"src": "4290:40:0"
}
],
"id": 346,
"name": "FunctionDefinition",
"src": "4216:114:0"
}
],
"id": 347,
"name": "ContractDefinition",
"src": "2837:1496:0"
},
{
"attributes": {
"contractDependencies": [
347,
139,
169,
205
],
"contractKind": "contract",
"documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based oncode by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol",
"fullyImplemented": false,
"linearizedBaseContracts": [
546,
205,
347,
169,
139
],
"name": "StandardToken",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "BasicToken",
"referencedDeclaration": 347,
"type": "contract BasicToken"
},
"id": 348,
"name": "UserDefinedTypeName",
"src": "4627:10:0"
}
],
"id": 349,
"name": "InheritanceSpecifier",
"src": "4627:10:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "ERC20",
"referencedDeclaration": 205,
"type": "contract ERC20"
},
"id": 350,
"name": "UserDefinedTypeName",
"src": "4639:5:0"
}
],
"id": 351,
"name": "InheritanceSpecifier",
"src": "4639:5:0"
},
{
"attributes": {
"constant": false,
"name": "allowed",
"scope": 546,
"stateVariable": true,
"storageLocation": "default",
"type": "mapping(address => mapping(address => uint256))",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"type": "mapping(address => mapping(address => uint256))"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 352,
"name": "ElementaryTypeName",
"src": "4661:7:0"
},
{
"attributes": {
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 353,
"name": "ElementaryTypeName",
"src": "4681:7:0"
},
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 354,
"name": "ElementaryTypeName",
"src": "4692:4:0"
}
],
"id": 355,
"name": "Mapping",
"src": "4672:25:0"
}
],
"id": 356,
"name": "Mapping",
"src": "4652:46:0"
}
],
"id": 357,
"name": "VariableDeclaration",
"src": "4652:61:0"
},
{
"attributes": {
"constant": true,
"name": "MAX_UINT",
"scope": 546,
"stateVariable": true,
"storageLocation": "default",
"type": "uint256",
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 358,
"name": "ElementaryTypeName",
"src": "4720:4:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639935"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "-",
"type": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639935"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1",
"typeString": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639936"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "**",
"type": "int_const 115792089237316195423570985008687907853269984665640564039457584007913129639936"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "32",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 2",
"value": "2"
},
"id": 359,
"name": "Literal",
"src": "4752:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "323536",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 256",
"value": "256"
},
"id": 360,
"name": "Literal",
"src": "4755:3:0"
}
],
"id": 361,
"name": "BinaryOperation",
"src": "4752:6:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "31",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 1",
"value": "1"
},
"id": 362,
"name": "Literal",
"src": "4761:1:0"
}
],
"id": 363,
"name": "BinaryOperation",
"src": "4752:10:0"
}
],
"id": 364,
"name": "VariableDeclaration",
"src": "4720:42:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "transferFrom",
"payable": false,
"scope": 546,
"stateMutability": "nonpayable",
"superFunction": 189,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_from",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 365,
"name": "ElementaryTypeName",
"src": "5066:7:0"
}
],
"id": 366,
"name": "VariableDeclaration",
"src": "5066:13:0"
},
{
"attributes": {
"constant": false,
"name": "_to",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 367,
"name": "ElementaryTypeName",
"src": "5081:7:0"
}
],
"id": 368,
"name": "VariableDeclaration",
"src": "5081:11:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 369,
"name": "ElementaryTypeName",
"src": "5094:4:0"
}
],
"id": 370,
"name": "VariableDeclaration",
"src": "5094:11:0"
}
],
"id": 371,
"name": "ParameterList",
"src": "5065:41:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 377,
"name": "ParameterList",
"src": "5138:0:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 240,
"type": "modifier (uint256)",
"value": "onlyPayloadSize"
},
"id": 372,
"name": "Identifier",
"src": "5114:15:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_96_by_1",
"typeString": "int_const 96"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "*",
"type": "int_const 96"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "33",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 3",
"value": "3"
},
"id": 373,
"name": "Literal",
"src": "5130:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3332",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 32",
"value": "32"
},
"id": 374,
"name": "Literal",
"src": "5134:2:0"
}
],
"id": 375,
"name": "BinaryOperation",
"src": "5130:6:0"
}
],
"id": 376,
"name": "ModifierInvocation",
"src": "5114:23:0"
},
{
"children": [
{
"attributes": {
"assignments": [
378
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "_allowance",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"typeName": null,
"value": null,
"visibility": "internal"
},
"children": [],
"id": 378,
"name": "VariableDeclaration",
"src": "5148:14:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 357,
"type": "mapping(address => mapping(address => uint256))",
"value": "allowed"
},
"id": 379,
"name": "Identifier",
"src": "5165:7:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 380,
"name": "Identifier",
"src": "5173:5:0"
}
],
"id": 381,
"name": "IndexAccess",
"src": "5165:14:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 382,
"name": "Identifier",
"src": "5180:3:0"
}
],
"id": 383,
"name": "MemberAccess",
"src": "5180:10:0"
}
],
"id": 384,
"name": "IndexAccess",
"src": "5165:26:0"
}
],
"id": 385,
"name": "VariableDeclarationStatement",
"src": "5148:43:0"
},
{
"attributes": {
"assignments": [
387
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "fee",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 386,
"name": "ElementaryTypeName",
"src": "5357:4:0"
}
],
"id": 387,
"name": "VariableDeclaration",
"src": "5357:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_10000_by_1",
"typeString": "int_const 10000"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "div",
"referencedDeclaration": 52,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "mul",
"referencedDeclaration": 34,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 370,
"type": "uint256",
"value": "_value"
},
"id": 388,
"name": "Identifier",
"src": "5369:6:0"
}
],
"id": 389,
"name": "MemberAccess",
"src": "5369:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 219,
"type": "uint256",
"value": "basisPointsRate"
},
"id": 390,
"name": "Identifier",
"src": "5380:15:0"
}
],
"id": 391,
"name": "FunctionCall",
"src": "5369:27:0"
}
],
"id": 392,
"name": "TupleExpression",
"src": "5368:29:0"
}
],
"id": 393,
"name": "MemberAccess",
"src": "5368:33:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3130303030",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 10000",
"value": "10000"
},
"id": 394,
"name": "Literal",
"src": "5402:5:0"
}
],
"id": 395,
"name": "FunctionCall",
"src": "5368:40:0"
}
],
"id": 396,
"name": "VariableDeclarationStatement",
"src": "5357:51:0"
},
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 397,
"name": "Identifier",
"src": "5422:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 398,
"name": "Identifier",
"src": "5428:10:0"
}
],
"id": 399,
"name": "BinaryOperation",
"src": "5422:16:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 400,
"name": "Identifier",
"src": "5454:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 401,
"name": "Identifier",
"src": "5460:10:0"
}
],
"id": 402,
"name": "Assignment",
"src": "5454:16:0"
}
],
"id": 403,
"name": "ExpressionStatement",
"src": "5454:16:0"
}
],
"id": 404,
"name": "Block",
"src": "5440:41:0"
}
],
"id": 405,
"name": "IfStatement",
"src": "5418:63:0"
},
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "<",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 378,
"type": "uint256",
"value": "_allowance"
},
"id": 406,
"name": "Identifier",
"src": "5494:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 364,
"type": "uint256",
"value": "MAX_UINT"
},
"id": 407,
"name": "Identifier",
"src": "5507:8:0"
}
],
"id": 408,
"name": "BinaryOperation",
"src": "5494:21:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 357,
"type": "mapping(address => mapping(address => uint256))",
"value": "allowed"
},
"id": 409,
"name": "Identifier",
"src": "5531:7:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 410,
"name": "Identifier",
"src": "5539:5:0"
}
],
"id": 413,
"name": "IndexAccess",
"src": "5531:14:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 411,
"name": "Identifier",
"src": "5546:3:0"
}
],
"id": 412,
"name": "MemberAccess",
"src": "5546:10:0"
}
],
"id": 414,
"name": "IndexAccess",
"src": "5531:26:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sub",
"referencedDeclaration": 72,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 378,
"type": "uint256",
"value": "_allowance"
},
"id": 415,
"name": "Identifier",
"src": "5560:10:0"
}
],
"id": 416,
"name": "MemberAccess",
"src": "5560:14:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 370,
"type": "uint256",
"value": "_value"
},
"id": 417,
"name": "Identifier",
"src": "5575:6:0"
}
],
"id": 418,
"name": "FunctionCall",
"src": "5560:22:0"
}
],
"id": 419,
"name": "Assignment",
"src": "5531:51:0"
}
],
"id": 420,
"name": "ExpressionStatement",
"src": "5531:51:0"
}
],
"id": 421,
"name": "Block",
"src": "5517:76:0"
}
],
"id": 422,
"name": "IfStatement",
"src": "5490:103:0"
},
{
"attributes": {
"assignments": [
424
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "sendAmount",
"scope": 481,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 423,
"name": "ElementaryTypeName",
"src": "5602:4:0"
}
],
"id": 424,
"name": "VariableDeclaration",
"src": "5602:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sub",
"referencedDeclaration": 72,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 370,
"type": "uint256",
"value": "_value"
},
"id": 425,
"name": "Identifier",
"src": "5620:6:0"
}
],
"id": 426,
"name": "MemberAccess",
"src": "5620:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 427,
"name": "Identifier",
"src": "5631:3:0"
}
],
"id": 428,
"name": "FunctionCall",
"src": "5620:15:0"
}
],
"id": 429,
"name": "VariableDeclarationStatement",
"src": "5602:33:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 430,
"name": "Identifier",
"src": "5645:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 431,
"name": "Identifier",
"src": "5654:5:0"
}
],
"id": 432,
"name": "IndexAccess",
"src": "5645:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sub",
"referencedDeclaration": 72,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 433,
"name": "Identifier",
"src": "5663:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 434,
"name": "Identifier",
"src": "5672:5:0"
}
],
"id": 435,
"name": "IndexAccess",
"src": "5663:15:0"
}
],
"id": 436,
"name": "MemberAccess",
"src": "5663:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 370,
"type": "uint256",
"value": "_value"
},
"id": 437,
"name": "Identifier",
"src": "5683:6:0"
}
],
"id": 438,
"name": "FunctionCall",
"src": "5663:27:0"
}
],
"id": 439,
"name": "Assignment",
"src": "5645:45:0"
}
],
"id": 440,
"name": "ExpressionStatement",
"src": "5645:45:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 441,
"name": "Identifier",
"src": "5700:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 368,
"type": "address",
"value": "_to"
},
"id": 442,
"name": "Identifier",
"src": "5709:3:0"
}
],
"id": 443,
"name": "IndexAccess",
"src": "5700:13:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "add",
"referencedDeclaration": 96,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 444,
"name": "Identifier",
"src": "5716:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 368,
"type": "address",
"value": "_to"
},
"id": 445,
"name": "Identifier",
"src": "5725:3:0"
}
],
"id": 446,
"name": "IndexAccess",
"src": "5716:13:0"
}
],
"id": 447,
"name": "MemberAccess",
"src": "5716:17:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 424,
"type": "uint256",
"value": "sendAmount"
},
"id": 448,
"name": "Identifier",
"src": "5734:10:0"
}
],
"id": 449,
"name": "FunctionCall",
"src": "5716:29:0"
}
],
"id": 450,
"name": "Assignment",
"src": "5700:45:0"
}
],
"id": 451,
"name": "ExpressionStatement",
"src": "5700:45:0"
},
{
"attributes": {
"falseBody": null
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 452,
"name": "Identifier",
"src": "5759:3:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 453,
"name": "Literal",
"src": "5765:1:0"
}
],
"id": 454,
"name": "BinaryOperation",
"src": "5759:7:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 455,
"name": "Identifier",
"src": "5782:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 456,
"name": "Identifier",
"src": "5791:5:0"
}
],
"id": 457,
"name": "IndexAccess",
"src": "5782:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "add",
"referencedDeclaration": 96,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 458,
"name": "Identifier",
"src": "5800:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 459,
"name": "Identifier",
"src": "5809:5:0"
}
],
"id": 460,
"name": "IndexAccess",
"src": "5800:15:0"
}
],
"id": 461,
"name": "MemberAccess",
"src": "5800:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 462,
"name": "Identifier",
"src": "5820:3:0"
}
],
"id": 463,
"name": "FunctionCall",
"src": "5800:24:0"
}
],
"id": 464,
"name": "Assignment",
"src": "5782:42:0"
}
],
"id": 465,
"name": "ExpressionStatement",
"src": "5782:42:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 168,
"type": "function (address,address,uint256)",
"value": "Transfer"
},
"id": 466,
"name": "Identifier",
"src": "5838:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 467,
"name": "Identifier",
"src": "5847:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 468,
"name": "Identifier",
"src": "5854:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 387,
"type": "uint256",
"value": "fee"
},
"id": 469,
"name": "Identifier",
"src": "5861:3:0"
}
],
"id": 470,
"name": "FunctionCall",
"src": "5838:27:0"
}
],
"id": 471,
"name": "ExpressionStatement",
"src": "5838:27:0"
}
],
"id": 472,
"name": "Block",
"src": "5768:108:0"
}
],
"id": 473,
"name": "IfStatement",
"src": "5755:121:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 168,
"type": "function (address,address,uint256)",
"value": "Transfer"
},
"id": 474,
"name": "Identifier",
"src": "5885:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 366,
"type": "address",
"value": "_from"
},
"id": 475,
"name": "Identifier",
"src": "5894:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 368,
"type": "address",
"value": "_to"
},
"id": 476,
"name": "Identifier",
"src": "5901:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 424,
"type": "uint256",
"value": "sendAmount"
},
"id": 477,
"name": "Identifier",
"src": "5906:10:0"
}
],
"id": 478,
"name": "FunctionCall",
"src": "5885:32:0"
}
],
"id": 479,
"name": "ExpressionStatement",
"src": "5885:32:0"
}
],
"id": 480,
"name": "Block",
"src": "5138:786:0"
}
],
"id": 481,
"name": "FunctionDefinition",
"src": "5044:880:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "approve",
"payable": false,
"scope": 546,
"stateMutability": "nonpayable",
"superFunction": 196,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_spender",
"scope": 529,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 482,
"name": "ElementaryTypeName",
"src": "6181:7:0"
}
],
"id": 483,
"name": "VariableDeclaration",
"src": "6181:16:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 529,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 484,
"name": "ElementaryTypeName",
"src": "6199:4:0"
}
],
"id": 485,
"name": "VariableDeclaration",
"src": "6199:11:0"
}
],
"id": 486,
"name": "ParameterList",
"src": "6180:31:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 492,
"name": "ParameterList",
"src": "6243:0:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 240,
"type": "modifier (uint256)",
"value": "onlyPayloadSize"
},
"id": 487,
"name": "Identifier",
"src": "6219:15:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "*",
"type": "int_const 64"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "32",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 2",
"value": "2"
},
"id": 488,
"name": "Literal",
"src": "6235:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3332",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 32",
"value": "32"
},
"id": 489,
"name": "Literal",
"src": "6239:2:0"
}
],
"id": 490,
"name": "BinaryOperation",
"src": "6235:6:0"
}
],
"id": 491,
"name": "ModifierInvocation",
"src": "6219:23:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 493,
"name": "Identifier",
"src": "6558:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!",
"prefix": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "&&",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 485,
"type": "uint256",
"value": "_value"
},
"id": 494,
"name": "Identifier",
"src": "6569:6:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 495,
"name": "Literal",
"src": "6579:1:0"
}
],
"id": 496,
"name": "BinaryOperation",
"src": "6569:11:0"
}
],
"id": 497,
"name": "TupleExpression",
"src": "6568:13:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 357,
"type": "mapping(address => mapping(address => uint256))",
"value": "allowed"
},
"id": 498,
"name": "Identifier",
"src": "6586:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 499,
"name": "Identifier",
"src": "6594:3:0"
}
],
"id": 500,
"name": "MemberAccess",
"src": "6594:10:0"
}
],
"id": 501,
"name": "IndexAccess",
"src": "6586:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 483,
"type": "address",
"value": "_spender"
},
"id": 502,
"name": "Identifier",
"src": "6606:8:0"
}
],
"id": 503,
"name": "IndexAccess",
"src": "6586:29:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 504,
"name": "Literal",
"src": "6619:1:0"
}
],
"id": 505,
"name": "BinaryOperation",
"src": "6586:34:0"
}
],
"id": 506,
"name": "TupleExpression",
"src": "6585:36:0"
}
],
"id": 507,
"name": "BinaryOperation",
"src": "6568:53:0"
}
],
"id": 508,
"name": "TupleExpression",
"src": "6567:55:0"
}
],
"id": 509,
"name": "UnaryOperation",
"src": "6566:56:0"
}
],
"id": 510,
"name": "FunctionCall",
"src": "6558:65:0"
}
],
"id": 511,
"name": "ExpressionStatement",
"src": "6558:65:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 357,
"type": "mapping(address => mapping(address => uint256))",
"value": "allowed"
},
"id": 512,
"name": "Identifier",
"src": "6634:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 513,
"name": "Identifier",
"src": "6642:3:0"
}
],
"id": 514,
"name": "MemberAccess",
"src": "6642:10:0"
}
],
"id": 516,
"name": "IndexAccess",
"src": "6634:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 483,
"type": "address",
"value": "_spender"
},
"id": 515,
"name": "Identifier",
"src": "6654:8:0"
}
],
"id": 517,
"name": "IndexAccess",
"src": "6634:29:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 485,
"type": "uint256",
"value": "_value"
},
"id": 518,
"name": "Identifier",
"src": "6666:6:0"
}
],
"id": 519,
"name": "Assignment",
"src": "6634:38:0"
}
],
"id": 520,
"name": "ExpressionStatement",
"src": "6634:38:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 204,
"type": "function (address,address,uint256)",
"value": "Approval"
},
"id": 521,
"name": "Identifier",
"src": "6682:8:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 522,
"name": "Identifier",
"src": "6691:3:0"
}
],
"id": 523,
"name": "MemberAccess",
"src": "6691:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 483,
"type": "address",
"value": "_spender"
},
"id": 524,
"name": "Identifier",
"src": "6703:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 485,
"type": "uint256",
"value": "_value"
},
"id": 525,
"name": "Identifier",
"src": "6713:6:0"
}
],
"id": 526,
"name": "FunctionCall",
"src": "6682:38:0"
}
],
"id": 527,
"name": "ExpressionStatement",
"src": "6682:38:0"
}
],
"id": 528,
"name": "Block",
"src": "6243:484:0"
}
],
"id": 529,
"name": "FunctionDefinition",
"src": "6164:563:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "allowance",
"payable": false,
"scope": 546,
"stateMutability": "view",
"superFunction": 180,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_owner",
"scope": 545,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 530,
"name": "ElementaryTypeName",
"src": "7071:7:0"
}
],
"id": 531,
"name": "VariableDeclaration",
"src": "7071:14:0"
},
{
"attributes": {
"constant": false,
"name": "_spender",
"scope": 545,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 532,
"name": "ElementaryTypeName",
"src": "7087:7:0"
}
],
"id": 533,
"name": "VariableDeclaration",
"src": "7087:16:0"
}
],
"id": 534,
"name": "ParameterList",
"src": "7070:34:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "remaining",
"scope": 545,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 535,
"name": "ElementaryTypeName",
"src": "7130:4:0"
}
],
"id": 536,
"name": "VariableDeclaration",
"src": "7130:14:0"
}
],
"id": 537,
"name": "ParameterList",
"src": "7129:16:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 537
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "mapping(address => uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 357,
"type": "mapping(address => mapping(address => uint256))",
"value": "allowed"
},
"id": 538,
"name": "Identifier",
"src": "7163:7:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 531,
"type": "address",
"value": "_owner"
},
"id": 539,
"name": "Identifier",
"src": "7171:6:0"
}
],
"id": 540,
"name": "IndexAccess",
"src": "7163:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 533,
"type": "address",
"value": "_spender"
},
"id": 541,
"name": "Identifier",
"src": "7179:8:0"
}
],
"id": 542,
"name": "IndexAccess",
"src": "7163:25:0"
}
],
"id": 543,
"name": "Return",
"src": "7156:32:0"
}
],
"id": 544,
"name": "Block",
"src": "7146:49:0"
}
],
"id": 545,
"name": "FunctionDefinition",
"src": "7052:143:0"
}
],
"id": 546,
"name": "ContractDefinition",
"src": "4601:2597:0"
},
{
"attributes": {
"contractDependencies": [
139
],
"contractKind": "contract",
"documentation": "@title Pausable\n@dev Base contract which allows children to implement an emergency stop mechanism.",
"fullyImplemented": true,
"linearizedBaseContracts": [
603,
139
],
"name": "Pausable",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "Ownable",
"referencedDeclaration": 139,
"type": "contract Ownable"
},
"id": 547,
"name": "UserDefinedTypeName",
"src": "7335:7:0"
}
],
"id": 548,
"name": "InheritanceSpecifier",
"src": "7335:7:0"
},
{
"attributes": {
"anonymous": false,
"name": "Pause"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 549,
"name": "ParameterList",
"src": "7358:2:0"
}
],
"id": 550,
"name": "EventDefinition",
"src": "7347:14:0"
},
{
"attributes": {
"anonymous": false,
"name": "Unpause"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 551,
"name": "ParameterList",
"src": "7377:2:0"
}
],
"id": 552,
"name": "EventDefinition",
"src": "7364:16:0"
},
{
"attributes": {
"constant": false,
"name": "paused",
"scope": 603,
"stateVariable": true,
"storageLocation": "default",
"type": "bool",
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "bool",
"type": "bool"
},
"id": 553,
"name": "ElementaryTypeName",
"src": "7384:4:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "66616c7365",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "false"
},
"id": 554,
"name": "Literal",
"src": "7405:5:0"
}
],
"id": 555,
"name": "VariableDeclaration",
"src": "7384:26:0"
},
{
"attributes": {
"name": "whenNotPaused",
"visibility": "internal"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 556,
"name": "ParameterList",
"src": "7535:2:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 557,
"name": "Identifier",
"src": "7544:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!",
"prefix": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 555,
"type": "bool",
"value": "paused"
},
"id": 558,
"name": "Identifier",
"src": "7553:6:0"
}
],
"id": 559,
"name": "UnaryOperation",
"src": "7552:7:0"
}
],
"id": 560,
"name": "FunctionCall",
"src": "7544:16:0"
}
],
"id": 561,
"name": "ExpressionStatement",
"src": "7544:16:0"
},
{
"id": 562,
"name": "PlaceholderStatement",
"src": "7566:1:0"
}
],
"id": 563,
"name": "Block",
"src": "7538:34:0"
}
],
"id": 564,
"name": "ModifierDefinition",
"src": "7513:59:0"
},
{
"attributes": {
"name": "whenPaused",
"visibility": "internal"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 565,
"name": "ParameterList",
"src": "7688:2:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 566,
"name": "Identifier",
"src": "7697:7:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 555,
"type": "bool",
"value": "paused"
},
"id": 567,
"name": "Identifier",
"src": "7705:6:0"
}
],
"id": 568,
"name": "FunctionCall",
"src": "7697:15:0"
}
],
"id": 569,
"name": "ExpressionStatement",
"src": "7697:15:0"
},
{
"id": 570,
"name": "PlaceholderStatement",
"src": "7718:1:0"
}
],
"id": 571,
"name": "Block",
"src": "7691:33:0"
}
],
"id": 572,
"name": "ModifierDefinition",
"src": "7669:55:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "pause",
"payable": false,
"scope": 603,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 573,
"name": "ParameterList",
"src": "7817:2:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 578,
"name": "ParameterList",
"src": "7851:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 574,
"name": "Identifier",
"src": "7820:9:0"
}
],
"id": 575,
"name": "ModifierInvocation",
"src": "7820:9:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 564,
"type": "modifier ()",
"value": "whenNotPaused"
},
"id": 576,
"name": "Identifier",
"src": "7830:13:0"
}
],
"id": 577,
"name": "ModifierInvocation",
"src": "7830:13:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 555,
"type": "bool",
"value": "paused"
},
"id": 579,
"name": "Identifier",
"src": "7857:6:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "74727565",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "true"
},
"id": 580,
"name": "Literal",
"src": "7866:4:0"
}
],
"id": 581,
"name": "Assignment",
"src": "7857:13:0"
}
],
"id": 582,
"name": "ExpressionStatement",
"src": "7857:13:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"arguments": [
null
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
null
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 550,
"type": "function ()",
"value": "Pause"
},
"id": 583,
"name": "Identifier",
"src": "7876:5:0"
}
],
"id": 584,
"name": "FunctionCall",
"src": "7876:7:0"
}
],
"id": 585,
"name": "ExpressionStatement",
"src": "7876:7:0"
}
],
"id": 586,
"name": "Block",
"src": "7851:37:0"
}
],
"id": 587,
"name": "FunctionDefinition",
"src": "7803:85:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "unpause",
"payable": false,
"scope": 603,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 588,
"name": "ParameterList",
"src": "7986:2:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 593,
"name": "ParameterList",
"src": "8017:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 589,
"name": "Identifier",
"src": "7989:9:0"
}
],
"id": 590,
"name": "ModifierInvocation",
"src": "7989:9:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 572,
"type": "modifier ()",
"value": "whenPaused"
},
"id": 591,
"name": "Identifier",
"src": "7999:10:0"
}
],
"id": 592,
"name": "ModifierInvocation",
"src": "7999:10:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 555,
"type": "bool",
"value": "paused"
},
"id": 594,
"name": "Identifier",
"src": "8023:6:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "66616c7365",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "false"
},
"id": 595,
"name": "Literal",
"src": "8032:5:0"
}
],
"id": 596,
"name": "Assignment",
"src": "8023:14:0"
}
],
"id": 597,
"name": "ExpressionStatement",
"src": "8023:14:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"arguments": [
null
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
null
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 552,
"type": "function ()",
"value": "Unpause"
},
"id": 598,
"name": "Identifier",
"src": "8043:7:0"
}
],
"id": 599,
"name": "FunctionCall",
"src": "8043:9:0"
}
],
"id": 600,
"name": "ExpressionStatement",
"src": "8043:9:0"
}
],
"id": 601,
"name": "Block",
"src": "8017:40:0"
}
],
"id": 602,
"name": "FunctionDefinition",
"src": "7970:87:0"
}
],
"id": 603,
"name": "ContractDefinition",
"src": "7314:745:0"
},
{
"attributes": {
"contractDependencies": [
347,
139,
169
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"linearizedBaseContracts": [
717,
347,
169,
139
],
"name": "BlackList",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "Ownable",
"referencedDeclaration": 139,
"type": "contract Ownable"
},
"id": 604,
"name": "UserDefinedTypeName",
"src": "8083:7:0"
}
],
"id": 605,
"name": "InheritanceSpecifier",
"src": "8083:7:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "BasicToken",
"referencedDeclaration": 347,
"type": "contract BasicToken"
},
"id": 606,
"name": "UserDefinedTypeName",
"src": "8092:10:0"
}
],
"id": 607,
"name": "InheritanceSpecifier",
"src": "8092:10:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "getBlackListStatus",
"payable": false,
"scope": 717,
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_maker",
"scope": 619,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 608,
"name": "ElementaryTypeName",
"src": "8257:7:0"
}
],
"id": 609,
"name": "VariableDeclaration",
"src": "8257:14:0"
}
],
"id": 610,
"name": "ParameterList",
"src": "8256:16:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 619,
"stateVariable": false,
"storageLocation": "default",
"type": "bool",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "bool",
"type": "bool"
},
"id": 611,
"name": "ElementaryTypeName",
"src": "8300:4:0"
}
],
"id": 612,
"name": "VariableDeclaration",
"src": "8300:4:0"
}
],
"id": 613,
"name": "ParameterList",
"src": "8299:6:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 613
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 614,
"name": "Identifier",
"src": "8323:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 609,
"type": "address",
"value": "_maker"
},
"id": 615,
"name": "Identifier",
"src": "8337:6:0"
}
],
"id": 616,
"name": "IndexAccess",
"src": "8323:21:0"
}
],
"id": 617,
"name": "Return",
"src": "8316:28:0"
}
],
"id": 618,
"name": "Block",
"src": "8306:45:0"
}
],
"id": 619,
"name": "FunctionDefinition",
"src": "8229:122:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "getOwner",
"payable": false,
"scope": 717,
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 620,
"name": "ParameterList",
"src": "8374:2:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 627,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 621,
"name": "ElementaryTypeName",
"src": "8404:7:0"
}
],
"id": 622,
"name": "VariableDeclaration",
"src": "8404:7:0"
}
],
"id": 623,
"name": "ParameterList",
"src": "8403:9:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 623
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 624,
"name": "Identifier",
"src": "8430:5:0"
}
],
"id": 625,
"name": "Return",
"src": "8423:12:0"
}
],
"id": 626,
"name": "Block",
"src": "8413:29:0"
}
],
"id": 627,
"name": "FunctionDefinition",
"src": "8357:85:0"
},
{
"attributes": {
"constant": false,
"name": "isBlackListed",
"scope": 717,
"stateVariable": true,
"storageLocation": "default",
"type": "mapping(address => bool)",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"type": "mapping(address => bool)"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 628,
"name": "ElementaryTypeName",
"src": "8457:7:0"
},
{
"attributes": {
"name": "bool",
"type": "bool"
},
"id": 629,
"name": "ElementaryTypeName",
"src": "8468:4:0"
}
],
"id": 630,
"name": "Mapping",
"src": "8448:25:0"
}
],
"id": 631,
"name": "VariableDeclaration",
"src": "8448:46:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "addBlackList",
"payable": false,
"scope": 717,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_evilUser",
"scope": 649,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 632,
"name": "ElementaryTypeName",
"src": "8528:7:0"
}
],
"id": 633,
"name": "VariableDeclaration",
"src": "8528:17:0"
}
],
"id": 634,
"name": "ParameterList",
"src": "8527:19:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 637,
"name": "ParameterList",
"src": "8564:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 635,
"name": "Identifier",
"src": "8554:9:0"
}
],
"id": 636,
"name": "ModifierInvocation",
"src": "8554:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 638,
"name": "Identifier",
"src": "8574:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 633,
"type": "address",
"value": "_evilUser"
},
"id": 639,
"name": "Identifier",
"src": "8588:9:0"
}
],
"id": 640,
"name": "IndexAccess",
"src": "8574:24:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "74727565",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "true"
},
"id": 641,
"name": "Literal",
"src": "8601:4:0"
}
],
"id": 642,
"name": "Assignment",
"src": "8574:31:0"
}
],
"id": 643,
"name": "ExpressionStatement",
"src": "8574:31:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 712,
"type": "function (address)",
"value": "AddedBlackList"
},
"id": 644,
"name": "Identifier",
"src": "8615:14:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 633,
"type": "address",
"value": "_evilUser"
},
"id": 645,
"name": "Identifier",
"src": "8630:9:0"
}
],
"id": 646,
"name": "FunctionCall",
"src": "8615:25:0"
}
],
"id": 647,
"name": "ExpressionStatement",
"src": "8615:25:0"
}
],
"id": 648,
"name": "Block",
"src": "8564:83:0"
}
],
"id": 649,
"name": "FunctionDefinition",
"src": "8505:142:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "removeBlackList",
"payable": false,
"scope": 717,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_clearedUser",
"scope": 667,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 650,
"name": "ElementaryTypeName",
"src": "8679:7:0"
}
],
"id": 651,
"name": "VariableDeclaration",
"src": "8679:20:0"
}
],
"id": 652,
"name": "ParameterList",
"src": "8678:22:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 655,
"name": "ParameterList",
"src": "8718:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 653,
"name": "Identifier",
"src": "8708:9:0"
}
],
"id": 654,
"name": "ModifierInvocation",
"src": "8708:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 656,
"name": "Identifier",
"src": "8728:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 651,
"type": "address",
"value": "_clearedUser"
},
"id": 657,
"name": "Identifier",
"src": "8742:12:0"
}
],
"id": 658,
"name": "IndexAccess",
"src": "8728:27:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "66616c7365",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "false"
},
"id": 659,
"name": "Literal",
"src": "8758:5:0"
}
],
"id": 660,
"name": "Assignment",
"src": "8728:35:0"
}
],
"id": 661,
"name": "ExpressionStatement",
"src": "8728:35:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 716,
"type": "function (address)",
"value": "RemovedBlackList"
},
"id": 662,
"name": "Identifier",
"src": "8773:16:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 651,
"type": "address",
"value": "_clearedUser"
},
"id": 663,
"name": "Identifier",
"src": "8790:12:0"
}
],
"id": 664,
"name": "FunctionCall",
"src": "8773:30:0"
}
],
"id": 665,
"name": "ExpressionStatement",
"src": "8773:30:0"
}
],
"id": 666,
"name": "Block",
"src": "8718:92:0"
}
],
"id": 667,
"name": "FunctionDefinition",
"src": "8653:157:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "destroyBlackFunds",
"payable": false,
"scope": 717,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_blackListedUser",
"scope": 702,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 668,
"name": "ElementaryTypeName",
"src": "8844:7:0"
}
],
"id": 669,
"name": "VariableDeclaration",
"src": "8844:24:0"
}
],
"id": 670,
"name": "ParameterList",
"src": "8843:26:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 673,
"name": "ParameterList",
"src": "8887:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 671,
"name": "Identifier",
"src": "8877:9:0"
}
],
"id": 672,
"name": "ModifierInvocation",
"src": "8877:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 674,
"name": "Identifier",
"src": "8897:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 675,
"name": "Identifier",
"src": "8905:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 669,
"type": "address",
"value": "_blackListedUser"
},
"id": 676,
"name": "Identifier",
"src": "8919:16:0"
}
],
"id": 677,
"name": "IndexAccess",
"src": "8905:31:0"
}
],
"id": 678,
"name": "FunctionCall",
"src": "8897:40:0"
}
],
"id": 679,
"name": "ExpressionStatement",
"src": "8897:40:0"
},
{
"attributes": {
"assignments": [
681
]
},
"children": [
{
"attributes": {
"constant": false,
"name": "dirtyFunds",
"scope": 702,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 680,
"name": "ElementaryTypeName",
"src": "8947:4:0"
}
],
"id": 681,
"name": "VariableDeclaration",
"src": "8947:15:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
346
],
"referencedDeclaration": 346,
"type": "function (address) view returns (uint256)",
"value": "balanceOf"
},
"id": 682,
"name": "Identifier",
"src": "8965:9:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 669,
"type": "address",
"value": "_blackListedUser"
},
"id": 683,
"name": "Identifier",
"src": "8975:16:0"
}
],
"id": 684,
"name": "FunctionCall",
"src": "8965:27:0"
}
],
"id": 685,
"name": "VariableDeclarationStatement",
"src": "8947:45:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 686,
"name": "Identifier",
"src": "9002:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 669,
"type": "address",
"value": "_blackListedUser"
},
"id": 687,
"name": "Identifier",
"src": "9011:16:0"
}
],
"id": 688,
"name": "IndexAccess",
"src": "9002:26:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "30",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 0",
"value": "0"
},
"id": 689,
"name": "Literal",
"src": "9031:1:0"
}
],
"id": 690,
"name": "Assignment",
"src": "9002:30:0"
}
],
"id": 691,
"name": "ExpressionStatement",
"src": "9002:30:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "-=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 692,
"name": "Identifier",
"src": "9042:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 681,
"type": "uint256",
"value": "dirtyFunds"
},
"id": 693,
"name": "Identifier",
"src": "9058:10:0"
}
],
"id": 694,
"name": "Assignment",
"src": "9042:26:0"
}
],
"id": 695,
"name": "ExpressionStatement",
"src": "9042:26:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 708,
"type": "function (address,uint256)",
"value": "DestroyedBlackFunds"
},
"id": 696,
"name": "Identifier",
"src": "9078:19:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 669,
"type": "address",
"value": "_blackListedUser"
},
"id": 697,
"name": "Identifier",
"src": "9098:16:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 681,
"type": "uint256",
"value": "dirtyFunds"
},
"id": 698,
"name": "Identifier",
"src": "9116:10:0"
}
],
"id": 699,
"name": "FunctionCall",
"src": "9078:49:0"
}
],
"id": 700,
"name": "ExpressionStatement",
"src": "9078:49:0"
}
],
"id": 701,
"name": "Block",
"src": "8887:247:0"
}
],
"id": 702,
"name": "FunctionDefinition",
"src": "8816:318:0"
},
{
"attributes": {
"anonymous": false,
"name": "DestroyedBlackFunds"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "_blackListedUser",
"scope": 708,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 703,
"name": "ElementaryTypeName",
"src": "9166:7:0"
}
],
"id": 704,
"name": "VariableDeclaration",
"src": "9166:24:0"
},
{
"attributes": {
"constant": false,
"indexed": false,
"name": "_balance",
"scope": 708,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 705,
"name": "ElementaryTypeName",
"src": "9192:4:0"
}
],
"id": 706,
"name": "VariableDeclaration",
"src": "9192:13:0"
}
],
"id": 707,
"name": "ParameterList",
"src": "9165:41:0"
}
],
"id": 708,
"name": "EventDefinition",
"src": "9140:67:0"
},
{
"attributes": {
"anonymous": false,
"name": "AddedBlackList"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "_user",
"scope": 712,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 709,
"name": "ElementaryTypeName",
"src": "9234:7:0"
}
],
"id": 710,
"name": "VariableDeclaration",
"src": "9234:13:0"
}
],
"id": 711,
"name": "ParameterList",
"src": "9233:15:0"
}
],
"id": 712,
"name": "EventDefinition",
"src": "9213:36:0"
},
{
"attributes": {
"anonymous": false,
"name": "RemovedBlackList"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "_user",
"scope": 716,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 713,
"name": "ElementaryTypeName",
"src": "9278:7:0"
}
],
"id": 714,
"name": "VariableDeclaration",
"src": "9278:13:0"
}
],
"id": 715,
"name": "ParameterList",
"src": "9277:15:0"
}
],
"id": 716,
"name": "EventDefinition",
"src": "9255:38:0"
}
],
"id": 717,
"name": "ContractDefinition",
"src": "8061:1235:0"
},
{
"attributes": {
"contractDependencies": [
347,
139,
169,
205,
546
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"linearizedBaseContracts": [
749,
546,
205,
347,
169,
139
],
"name": "UpgradedStandardToken",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "StandardToken",
"referencedDeclaration": 546,
"type": "contract StandardToken"
},
"id": 718,
"name": "UserDefinedTypeName",
"src": "9332:13:0"
}
],
"id": 719,
"name": "InheritanceSpecifier",
"src": "9332:13:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "transferByLegacy",
"payable": false,
"scope": 749,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "from",
"scope": 728,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 720,
"name": "ElementaryTypeName",
"src": "9498:7:0"
}
],
"id": 721,
"name": "VariableDeclaration",
"src": "9498:12:0"
},
{
"attributes": {
"constant": false,
"name": "to",
"scope": 728,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 722,
"name": "ElementaryTypeName",
"src": "9512:7:0"
}
],
"id": 723,
"name": "VariableDeclaration",
"src": "9512:10:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 728,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 724,
"name": "ElementaryTypeName",
"src": "9524:4:0"
}
],
"id": 725,
"name": "VariableDeclaration",
"src": "9524:10:0"
}
],
"id": 726,
"name": "ParameterList",
"src": "9497:38:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 727,
"name": "ParameterList",
"src": "9542:0:0"
}
],
"id": 728,
"name": "FunctionDefinition",
"src": "9472:71:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "transferFromByLegacy",
"payable": false,
"scope": 749,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "sender",
"scope": 739,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 729,
"name": "ElementaryTypeName",
"src": "9578:7:0"
}
],
"id": 730,
"name": "VariableDeclaration",
"src": "9578:14:0"
},
{
"attributes": {
"constant": false,
"name": "from",
"scope": 739,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 731,
"name": "ElementaryTypeName",
"src": "9594:7:0"
}
],
"id": 732,
"name": "VariableDeclaration",
"src": "9594:12:0"
},
{
"attributes": {
"constant": false,
"name": "spender",
"scope": 739,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 733,
"name": "ElementaryTypeName",
"src": "9608:7:0"
}
],
"id": 734,
"name": "VariableDeclaration",
"src": "9608:15:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 739,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 735,
"name": "ElementaryTypeName",
"src": "9625:4:0"
}
],
"id": 736,
"name": "VariableDeclaration",
"src": "9625:10:0"
}
],
"id": 737,
"name": "ParameterList",
"src": "9577:59:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 738,
"name": "ParameterList",
"src": "9643:0:0"
}
],
"id": 739,
"name": "FunctionDefinition",
"src": "9548:96:0"
},
{
"attributes": {
"body": null,
"constant": false,
"implemented": false,
"isConstructor": false,
"modifiers": [
null
],
"name": "approveByLegacy",
"payable": false,
"scope": 749,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "from",
"scope": 748,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 740,
"name": "ElementaryTypeName",
"src": "9674:7:0"
}
],
"id": 741,
"name": "VariableDeclaration",
"src": "9674:12:0"
},
{
"attributes": {
"constant": false,
"name": "spender",
"scope": 748,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 742,
"name": "ElementaryTypeName",
"src": "9688:7:0"
}
],
"id": 743,
"name": "VariableDeclaration",
"src": "9688:15:0"
},
{
"attributes": {
"constant": false,
"name": "value",
"scope": 748,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 744,
"name": "ElementaryTypeName",
"src": "9705:4:0"
}
],
"id": 745,
"name": "VariableDeclaration",
"src": "9705:10:0"
}
],
"id": 746,
"name": "ParameterList",
"src": "9673:43:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 747,
"name": "ParameterList",
"src": "9723:0:0"
}
],
"id": 748,
"name": "FunctionDefinition",
"src": "9649:75:0"
}
],
"id": 749,
"name": "ContractDefinition",
"src": "9298:428:0"
},
{
"attributes": {
"contractDependencies": [
347,
139,
169,
205,
546,
603,
717
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"linearizedBaseContracts": [
1142,
717,
546,
205,
347,
169,
603,
139
],
"name": "TetherToken",
"scope": 1143
},
"children": [
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "Pausable",
"referencedDeclaration": 603,
"type": "contract Pausable"
},
"id": 750,
"name": "UserDefinedTypeName",
"src": "9752:8:0"
}
],
"id": 751,
"name": "InheritanceSpecifier",
"src": "9752:8:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "StandardToken",
"referencedDeclaration": 546,
"type": "contract StandardToken"
},
"id": 752,
"name": "UserDefinedTypeName",
"src": "9762:13:0"
}
],
"id": 753,
"name": "InheritanceSpecifier",
"src": "9762:13:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"contractScope": null,
"name": "BlackList",
"referencedDeclaration": 717,
"type": "contract BlackList"
},
"id": 754,
"name": "UserDefinedTypeName",
"src": "9777:9:0"
}
],
"id": 755,
"name": "InheritanceSpecifier",
"src": "9777:9:0"
},
{
"attributes": {
"constant": false,
"name": "name",
"scope": 1142,
"stateVariable": true,
"storageLocation": "default",
"type": "string storage ref",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string storage pointer"
},
"id": 756,
"name": "ElementaryTypeName",
"src": "9794:6:0"
}
],
"id": 757,
"name": "VariableDeclaration",
"src": "9794:18:0"
},
{
"attributes": {
"constant": false,
"name": "symbol",
"scope": 1142,
"stateVariable": true,
"storageLocation": "default",
"type": "string storage ref",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string storage pointer"
},
"id": 758,
"name": "ElementaryTypeName",
"src": "9818:6:0"
}
],
"id": 759,
"name": "VariableDeclaration",
"src": "9818:20:0"
},
{
"attributes": {
"constant": false,
"name": "decimals",
"scope": 1142,
"stateVariable": true,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 760,
"name": "ElementaryTypeName",
"src": "9844:4:0"
}
],
"id": 761,
"name": "VariableDeclaration",
"src": "9844:20:0"
},
{
"attributes": {
"constant": false,
"name": "upgradedAddress",
"scope": 1142,
"stateVariable": true,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 762,
"name": "ElementaryTypeName",
"src": "9870:7:0"
}
],
"id": 763,
"name": "VariableDeclaration",
"src": "9870:30:0"
},
{
"attributes": {
"constant": false,
"name": "deprecated",
"scope": 1142,
"stateVariable": true,
"storageLocation": "default",
"type": "bool",
"value": null,
"visibility": "public"
},
"children": [
{
"attributes": {
"name": "bool",
"type": "bool"
},
"id": 764,
"name": "ElementaryTypeName",
"src": "9906:4:0"
}
],
"id": 765,
"name": "VariableDeclaration",
"src": "9906:22:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": true,
"modifiers": [
null
],
"name": "TetherToken",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_initialSupply",
"scope": 803,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 766,
"name": "ElementaryTypeName",
"src": "10244:4:0"
}
],
"id": 767,
"name": "VariableDeclaration",
"src": "10244:19:0"
},
{
"attributes": {
"constant": false,
"name": "_name",
"scope": 803,
"stateVariable": false,
"storageLocation": "default",
"type": "string memory",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string storage pointer"
},
"id": 768,
"name": "ElementaryTypeName",
"src": "10265:6:0"
}
],
"id": 769,
"name": "VariableDeclaration",
"src": "10265:12:0"
},
{
"attributes": {
"constant": false,
"name": "_symbol",
"scope": 803,
"stateVariable": false,
"storageLocation": "default",
"type": "string memory",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string storage pointer"
},
"id": 770,
"name": "ElementaryTypeName",
"src": "10279:6:0"
}
],
"id": 771,
"name": "VariableDeclaration",
"src": "10279:14:0"
},
{
"attributes": {
"constant": false,
"name": "_decimals",
"scope": 803,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 772,
"name": "ElementaryTypeName",
"src": "10295:4:0"
}
],
"id": 773,
"name": "VariableDeclaration",
"src": "10295:14:0"
}
],
"id": 774,
"name": "ParameterList",
"src": "10243:67:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 775,
"name": "ParameterList",
"src": "10318:0:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 776,
"name": "Identifier",
"src": "10328:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 767,
"type": "uint256",
"value": "_initialSupply"
},
"id": 777,
"name": "Identifier",
"src": "10343:14:0"
}
],
"id": 778,
"name": "Assignment",
"src": "10328:29:0"
}
],
"id": 779,
"name": "ExpressionStatement",
"src": "10328:29:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "string storage ref"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 757,
"type": "string storage ref",
"value": "name"
},
"id": 780,
"name": "Identifier",
"src": "10367:4:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 769,
"type": "string memory",
"value": "_name"
},
"id": 781,
"name": "Identifier",
"src": "10374:5:0"
}
],
"id": 782,
"name": "Assignment",
"src": "10367:12:0"
}
],
"id": 783,
"name": "ExpressionStatement",
"src": "10367:12:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "string storage ref"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 759,
"type": "string storage ref",
"value": "symbol"
},
"id": 784,
"name": "Identifier",
"src": "10389:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 771,
"type": "string memory",
"value": "_symbol"
},
"id": 785,
"name": "Identifier",
"src": "10398:7:0"
}
],
"id": 786,
"name": "Assignment",
"src": "10389:16:0"
}
],
"id": 787,
"name": "ExpressionStatement",
"src": "10389:16:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 761,
"type": "uint256",
"value": "decimals"
},
"id": 788,
"name": "Identifier",
"src": "10415:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 773,
"type": "uint256",
"value": "_decimals"
},
"id": 789,
"name": "Identifier",
"src": "10426:9:0"
}
],
"id": 790,
"name": "Assignment",
"src": "10415:20:0"
}
],
"id": 791,
"name": "ExpressionStatement",
"src": "10415:20:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 792,
"name": "Identifier",
"src": "10445:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 793,
"name": "Identifier",
"src": "10454:5:0"
}
],
"id": 794,
"name": "IndexAccess",
"src": "10445:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 767,
"type": "uint256",
"value": "_initialSupply"
},
"id": 795,
"name": "Identifier",
"src": "10463:14:0"
}
],
"id": 796,
"name": "Assignment",
"src": "10445:32:0"
}
],
"id": 797,
"name": "ExpressionStatement",
"src": "10445:32:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 798,
"name": "Identifier",
"src": "10487:10:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "66616c7365",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "false"
},
"id": 799,
"name": "Literal",
"src": "10500:5:0"
}
],
"id": 800,
"name": "Assignment",
"src": "10487:18:0"
}
],
"id": 801,
"name": "ExpressionStatement",
"src": "10487:18:0"
}
],
"id": 802,
"name": "Block",
"src": "10318:194:0"
}
],
"id": 803,
"name": "FunctionDefinition",
"src": "10223:289:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "transfer",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": 334,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_to",
"scope": 841,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 804,
"name": "ElementaryTypeName",
"src": "10612:7:0"
}
],
"id": 805,
"name": "VariableDeclaration",
"src": "10612:11:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 841,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 806,
"name": "ElementaryTypeName",
"src": "10625:4:0"
}
],
"id": 807,
"name": "VariableDeclaration",
"src": "10625:11:0"
}
],
"id": 808,
"name": "ParameterList",
"src": "10611:26:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 811,
"name": "ParameterList",
"src": "10659:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 564,
"type": "modifier ()",
"value": "whenNotPaused"
},
"id": 809,
"name": "Identifier",
"src": "10645:13:0"
}
],
"id": 810,
"name": "ModifierInvocation",
"src": "10645:13:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 812,
"name": "Identifier",
"src": "10669:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!",
"prefix": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 813,
"name": "Identifier",
"src": "10678:13:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 814,
"name": "Identifier",
"src": "10692:3:0"
}
],
"id": 815,
"name": "MemberAccess",
"src": "10692:10:0"
}
],
"id": 816,
"name": "IndexAccess",
"src": "10678:25:0"
}
],
"id": 817,
"name": "UnaryOperation",
"src": "10677:26:0"
}
],
"id": 818,
"name": "FunctionCall",
"src": "10669:35:0"
}
],
"id": 819,
"name": "ExpressionStatement",
"src": "10669:35:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 820,
"name": "Identifier",
"src": "10718:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 811
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "transferByLegacy",
"referencedDeclaration": 728,
"type": "function (address,address,uint256) external"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract UpgradedStandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 749,
"type": "type(contract UpgradedStandardToken)",
"value": "UpgradedStandardToken"
},
"id": 821,
"name": "Identifier",
"src": "10751:21:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 822,
"name": "Identifier",
"src": "10773:15:0"
}
],
"id": 823,
"name": "FunctionCall",
"src": "10751:38:0"
}
],
"id": 824,
"name": "MemberAccess",
"src": "10751:55:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 825,
"name": "Identifier",
"src": "10807:3:0"
}
],
"id": 826,
"name": "MemberAccess",
"src": "10807:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 805,
"type": "address",
"value": "_to"
},
"id": 827,
"name": "Identifier",
"src": "10819:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 807,
"type": "uint256",
"value": "_value"
},
"id": 828,
"name": "Identifier",
"src": "10824:6:0"
}
],
"id": 829,
"name": "FunctionCall",
"src": "10751:80:0"
}
],
"id": 830,
"name": "Return",
"src": "10744:87:0"
}
],
"id": 831,
"name": "Block",
"src": "10730:112:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 811
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "transfer",
"referencedDeclaration": 334,
"type": "function (address,uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1184,
"type": "contract super TetherToken",
"value": "super"
},
"id": 832,
"name": "Identifier",
"src": "10869:5:0"
}
],
"id": 833,
"name": "MemberAccess",
"src": "10869:14:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 805,
"type": "address",
"value": "_to"
},
"id": 834,
"name": "Identifier",
"src": "10884:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 807,
"type": "uint256",
"value": "_value"
},
"id": 835,
"name": "Identifier",
"src": "10889:6:0"
}
],
"id": 836,
"name": "FunctionCall",
"src": "10869:27:0"
}
],
"id": 837,
"name": "Return",
"src": "10862:34:0"
}
],
"id": 838,
"name": "Block",
"src": "10848:59:0"
}
],
"id": 839,
"name": "IfStatement",
"src": "10714:193:0"
}
],
"id": 840,
"name": "Block",
"src": "10659:254:0"
}
],
"id": 841,
"name": "FunctionDefinition",
"src": "10594:319:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "transferFrom",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": 481,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_from",
"scope": 882,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 842,
"name": "ElementaryTypeName",
"src": "11017:7:0"
}
],
"id": 843,
"name": "VariableDeclaration",
"src": "11017:13:0"
},
{
"attributes": {
"constant": false,
"name": "_to",
"scope": 882,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 844,
"name": "ElementaryTypeName",
"src": "11032:7:0"
}
],
"id": 845,
"name": "VariableDeclaration",
"src": "11032:11:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 882,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 846,
"name": "ElementaryTypeName",
"src": "11045:4:0"
}
],
"id": 847,
"name": "VariableDeclaration",
"src": "11045:11:0"
}
],
"id": 848,
"name": "ParameterList",
"src": "11016:41:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 851,
"name": "ParameterList",
"src": "11079:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 564,
"type": "modifier ()",
"value": "whenNotPaused"
},
"id": 849,
"name": "Identifier",
"src": "11065:13:0"
}
],
"id": 850,
"name": "ModifierInvocation",
"src": "11065:13:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 852,
"name": "Identifier",
"src": "11089:7:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "!",
"prefix": true,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 631,
"type": "mapping(address => bool)",
"value": "isBlackListed"
},
"id": 853,
"name": "Identifier",
"src": "11098:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 843,
"type": "address",
"value": "_from"
},
"id": 854,
"name": "Identifier",
"src": "11112:5:0"
}
],
"id": 855,
"name": "IndexAccess",
"src": "11098:20:0"
}
],
"id": 856,
"name": "UnaryOperation",
"src": "11097:21:0"
}
],
"id": 857,
"name": "FunctionCall",
"src": "11089:30:0"
}
],
"id": 858,
"name": "ExpressionStatement",
"src": "11089:30:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 859,
"name": "Identifier",
"src": "11133:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 851
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "transferFromByLegacy",
"referencedDeclaration": 739,
"type": "function (address,address,address,uint256) external"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract UpgradedStandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 749,
"type": "type(contract UpgradedStandardToken)",
"value": "UpgradedStandardToken"
},
"id": 860,
"name": "Identifier",
"src": "11166:21:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 861,
"name": "Identifier",
"src": "11188:15:0"
}
],
"id": 862,
"name": "FunctionCall",
"src": "11166:38:0"
}
],
"id": 863,
"name": "MemberAccess",
"src": "11166:59:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 864,
"name": "Identifier",
"src": "11226:3:0"
}
],
"id": 865,
"name": "MemberAccess",
"src": "11226:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 843,
"type": "address",
"value": "_from"
},
"id": 866,
"name": "Identifier",
"src": "11238:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 845,
"type": "address",
"value": "_to"
},
"id": 867,
"name": "Identifier",
"src": "11245:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 847,
"type": "uint256",
"value": "_value"
},
"id": 868,
"name": "Identifier",
"src": "11250:6:0"
}
],
"id": 869,
"name": "FunctionCall",
"src": "11166:91:0"
}
],
"id": 870,
"name": "Return",
"src": "11159:98:0"
}
],
"id": 871,
"name": "Block",
"src": "11145:123:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 851
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "transferFrom",
"referencedDeclaration": 481,
"type": "function (address,address,uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1184,
"type": "contract super TetherToken",
"value": "super"
},
"id": 872,
"name": "Identifier",
"src": "11295:5:0"
}
],
"id": 873,
"name": "MemberAccess",
"src": "11295:18:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 843,
"type": "address",
"value": "_from"
},
"id": 874,
"name": "Identifier",
"src": "11314:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 845,
"type": "address",
"value": "_to"
},
"id": 875,
"name": "Identifier",
"src": "11321:3:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 847,
"type": "uint256",
"value": "_value"
},
"id": 876,
"name": "Identifier",
"src": "11326:6:0"
}
],
"id": 877,
"name": "FunctionCall",
"src": "11295:38:0"
}
],
"id": 878,
"name": "Return",
"src": "11288:45:0"
}
],
"id": 879,
"name": "Block",
"src": "11274:70:0"
}
],
"id": 880,
"name": "IfStatement",
"src": "11129:215:0"
}
],
"id": 881,
"name": "Block",
"src": "11079:271:0"
}
],
"id": 882,
"name": "FunctionDefinition",
"src": "10995:355:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "balanceOf",
"payable": false,
"scope": 1142,
"stateMutability": "view",
"superFunction": 346,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "who",
"scope": 906,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 883,
"name": "ElementaryTypeName",
"src": "11451:7:0"
}
],
"id": 884,
"name": "VariableDeclaration",
"src": "11451:11:0"
}
],
"id": 885,
"name": "ParameterList",
"src": "11450:13:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 906,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 886,
"name": "ElementaryTypeName",
"src": "11489:4:0"
}
],
"id": 887,
"name": "VariableDeclaration",
"src": "11489:4:0"
}
],
"id": 888,
"name": "ParameterList",
"src": "11488:6:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 889,
"name": "Identifier",
"src": "11509:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 888
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "balanceOf",
"referencedDeclaration": 346,
"type": "function (address) view external returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract UpgradedStandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 749,
"type": "type(contract UpgradedStandardToken)",
"value": "UpgradedStandardToken"
},
"id": 890,
"name": "Identifier",
"src": "11542:21:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 891,
"name": "Identifier",
"src": "11564:15:0"
}
],
"id": 892,
"name": "FunctionCall",
"src": "11542:38:0"
}
],
"id": 893,
"name": "MemberAccess",
"src": "11542:48:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 884,
"type": "address",
"value": "who"
},
"id": 894,
"name": "Identifier",
"src": "11591:3:0"
}
],
"id": 895,
"name": "FunctionCall",
"src": "11542:53:0"
}
],
"id": 896,
"name": "Return",
"src": "11535:60:0"
}
],
"id": 897,
"name": "Block",
"src": "11521:85:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 888
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "balanceOf",
"referencedDeclaration": 346,
"type": "function (address) view returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1184,
"type": "contract super TetherToken",
"value": "super"
},
"id": 898,
"name": "Identifier",
"src": "11633:5:0"
}
],
"id": 899,
"name": "MemberAccess",
"src": "11633:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 884,
"type": "address",
"value": "who"
},
"id": 900,
"name": "Identifier",
"src": "11649:3:0"
}
],
"id": 901,
"name": "FunctionCall",
"src": "11633:20:0"
}
],
"id": 902,
"name": "Return",
"src": "11626:27:0"
}
],
"id": 903,
"name": "Block",
"src": "11612:52:0"
}
],
"id": 904,
"name": "IfStatement",
"src": "11505:159:0"
}
],
"id": 905,
"name": "Block",
"src": "11495:175:0"
}
],
"id": 906,
"name": "FunctionDefinition",
"src": "11432:238:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "approve",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": 529,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_spender",
"scope": 939,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 907,
"name": "ElementaryTypeName",
"src": "11769:7:0"
}
],
"id": 908,
"name": "VariableDeclaration",
"src": "11769:16:0"
},
{
"attributes": {
"constant": false,
"name": "_value",
"scope": 939,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 909,
"name": "ElementaryTypeName",
"src": "11787:4:0"
}
],
"id": 910,
"name": "VariableDeclaration",
"src": "11787:11:0"
}
],
"id": 911,
"name": "ParameterList",
"src": "11768:31:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 917,
"name": "ParameterList",
"src": "11831:0:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 240,
"type": "modifier (uint256)",
"value": "onlyPayloadSize"
},
"id": 912,
"name": "Identifier",
"src": "11807:15:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_rational_64_by_1",
"typeString": "int_const 64"
},
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"operator": "*",
"type": "int_const 64"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "32",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 2",
"value": "2"
},
"id": 913,
"name": "Literal",
"src": "11823:1:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3332",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 32",
"value": "32"
},
"id": 914,
"name": "Literal",
"src": "11827:2:0"
}
],
"id": 915,
"name": "BinaryOperation",
"src": "11823:6:0"
}
],
"id": 916,
"name": "ModifierInvocation",
"src": "11807:23:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 918,
"name": "Identifier",
"src": "11845:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 917
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "approveByLegacy",
"referencedDeclaration": 748,
"type": "function (address,address,uint256) external"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract UpgradedStandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 749,
"type": "type(contract UpgradedStandardToken)",
"value": "UpgradedStandardToken"
},
"id": 919,
"name": "Identifier",
"src": "11878:21:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 920,
"name": "Identifier",
"src": "11900:15:0"
}
],
"id": 921,
"name": "FunctionCall",
"src": "11878:38:0"
}
],
"id": 922,
"name": "MemberAccess",
"src": "11878:54:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "sender",
"referencedDeclaration": null,
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1154,
"type": "msg",
"value": "msg"
},
"id": 923,
"name": "Identifier",
"src": "11933:3:0"
}
],
"id": 924,
"name": "MemberAccess",
"src": "11933:10:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 908,
"type": "address",
"value": "_spender"
},
"id": 925,
"name": "Identifier",
"src": "11945:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 910,
"type": "uint256",
"value": "_value"
},
"id": 926,
"name": "Identifier",
"src": "11955:6:0"
}
],
"id": 927,
"name": "FunctionCall",
"src": "11878:84:0"
}
],
"id": 928,
"name": "Return",
"src": "11871:91:0"
}
],
"id": 929,
"name": "Block",
"src": "11857:116:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 917
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "approve",
"referencedDeclaration": 529,
"type": "function (address,uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1184,
"type": "contract super TetherToken",
"value": "super"
},
"id": 930,
"name": "Identifier",
"src": "12000:5:0"
}
],
"id": 931,
"name": "MemberAccess",
"src": "12000:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 908,
"type": "address",
"value": "_spender"
},
"id": 932,
"name": "Identifier",
"src": "12014:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 910,
"type": "uint256",
"value": "_value"
},
"id": 933,
"name": "Identifier",
"src": "12024:6:0"
}
],
"id": 934,
"name": "FunctionCall",
"src": "12000:31:0"
}
],
"id": 935,
"name": "Return",
"src": "11993:38:0"
}
],
"id": 936,
"name": "Block",
"src": "11979:63:0"
}
],
"id": 937,
"name": "IfStatement",
"src": "11841:201:0"
}
],
"id": 938,
"name": "Block",
"src": "11831:217:0"
}
],
"id": 939,
"name": "FunctionDefinition",
"src": "11752:296:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "allowance",
"payable": false,
"scope": 1142,
"stateMutability": "view",
"superFunction": 545,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_owner",
"scope": 967,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 940,
"name": "ElementaryTypeName",
"src": "12149:7:0"
}
],
"id": 941,
"name": "VariableDeclaration",
"src": "12149:14:0"
},
{
"attributes": {
"constant": false,
"name": "_spender",
"scope": 967,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 942,
"name": "ElementaryTypeName",
"src": "12165:7:0"
}
],
"id": 943,
"name": "VariableDeclaration",
"src": "12165:16:0"
}
],
"id": 944,
"name": "ParameterList",
"src": "12148:34:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "remaining",
"scope": 967,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 945,
"name": "ElementaryTypeName",
"src": "12208:4:0"
}
],
"id": 946,
"name": "VariableDeclaration",
"src": "12208:14:0"
}
],
"id": 947,
"name": "ParameterList",
"src": "12207:16:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 948,
"name": "Identifier",
"src": "12238:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 947
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "allowance",
"referencedDeclaration": 545,
"type": "function (address,address) view external returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract StandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 546,
"type": "type(contract StandardToken)",
"value": "StandardToken"
},
"id": 949,
"name": "Identifier",
"src": "12271:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 950,
"name": "Identifier",
"src": "12285:15:0"
}
],
"id": 951,
"name": "FunctionCall",
"src": "12271:30:0"
}
],
"id": 952,
"name": "MemberAccess",
"src": "12271:40:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 941,
"type": "address",
"value": "_owner"
},
"id": 953,
"name": "Identifier",
"src": "12312:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 943,
"type": "address",
"value": "_spender"
},
"id": 954,
"name": "Identifier",
"src": "12320:8:0"
}
],
"id": 955,
"name": "FunctionCall",
"src": "12271:58:0"
}
],
"id": 956,
"name": "Return",
"src": "12264:65:0"
}
],
"id": 957,
"name": "Block",
"src": "12250:90:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 947
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "allowance",
"referencedDeclaration": 545,
"type": "function (address,address) view returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1184,
"type": "contract super TetherToken",
"value": "super"
},
"id": 958,
"name": "Identifier",
"src": "12367:5:0"
}
],
"id": 959,
"name": "MemberAccess",
"src": "12367:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 941,
"type": "address",
"value": "_owner"
},
"id": 960,
"name": "Identifier",
"src": "12383:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 943,
"type": "address",
"value": "_spender"
},
"id": 961,
"name": "Identifier",
"src": "12391:8:0"
}
],
"id": 962,
"name": "FunctionCall",
"src": "12367:33:0"
}
],
"id": 963,
"name": "Return",
"src": "12360:40:0"
}
],
"id": 964,
"name": "Block",
"src": "12346:65:0"
}
],
"id": 965,
"name": "IfStatement",
"src": "12234:177:0"
}
],
"id": 966,
"name": "Block",
"src": "12224:193:0"
}
],
"id": 967,
"name": "FunctionDefinition",
"src": "12130:287:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "deprecate",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_upgradedAddress",
"scope": 987,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 968,
"name": "ElementaryTypeName",
"src": "12499:7:0"
}
],
"id": 969,
"name": "VariableDeclaration",
"src": "12499:24:0"
}
],
"id": 970,
"name": "ParameterList",
"src": "12498:26:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 973,
"name": "ParameterList",
"src": "12542:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 971,
"name": "Identifier",
"src": "12532:9:0"
}
],
"id": 972,
"name": "ModifierInvocation",
"src": "12532:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 974,
"name": "Identifier",
"src": "12552:10:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "74727565",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "true"
},
"id": 975,
"name": "Literal",
"src": "12565:4:0"
}
],
"id": 976,
"name": "Assignment",
"src": "12552:17:0"
}
],
"id": 977,
"name": "ExpressionStatement",
"src": "12552:17:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "address"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 978,
"name": "Identifier",
"src": "12579:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 969,
"type": "address",
"value": "_upgradedAddress"
},
"id": 979,
"name": "Identifier",
"src": "12597:16:0"
}
],
"id": 980,
"name": "Assignment",
"src": "12579:34:0"
}
],
"id": 981,
"name": "ExpressionStatement",
"src": "12579:34:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1135,
"type": "function (address)",
"value": "Deprecate"
},
"id": 982,
"name": "Identifier",
"src": "12623:9:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 969,
"type": "address",
"value": "_upgradedAddress"
},
"id": 983,
"name": "Identifier",
"src": "12633:16:0"
}
],
"id": 984,
"name": "FunctionCall",
"src": "12623:27:0"
}
],
"id": 985,
"name": "ExpressionStatement",
"src": "12623:27:0"
}
],
"id": 986,
"name": "Block",
"src": "12542:115:0"
}
],
"id": 987,
"name": "FunctionDefinition",
"src": "12480:177:0"
},
{
"attributes": {
"constant": true,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "totalSupply",
"payable": false,
"scope": 1142,
"stateMutability": "view",
"superFunction": 146,
"visibility": "public"
},
"children": [
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 988,
"name": "ParameterList",
"src": "12740:2:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "",
"scope": 1005,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 989,
"name": "ElementaryTypeName",
"src": "12768:4:0"
}
],
"id": 990,
"name": "VariableDeclaration",
"src": "12768:4:0"
}
],
"id": 991,
"name": "ParameterList",
"src": "12767:6:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 765,
"type": "bool",
"value": "deprecated"
},
"id": 992,
"name": "Identifier",
"src": "12788:10:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 991
},
"children": [
{
"attributes": {
"argumentTypes": null,
"arguments": [
null
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
null
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "totalSupply",
"referencedDeclaration": 146,
"type": "function () view external returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "contract StandardToken",
"type_conversion": true
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 546,
"type": "type(contract StandardToken)",
"value": "StandardToken"
},
"id": 993,
"name": "Identifier",
"src": "12821:13:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 763,
"type": "address",
"value": "upgradedAddress"
},
"id": 994,
"name": "Identifier",
"src": "12835:15:0"
}
],
"id": 995,
"name": "FunctionCall",
"src": "12821:30:0"
}
],
"id": 996,
"name": "MemberAccess",
"src": "12821:42:0"
}
],
"id": 997,
"name": "FunctionCall",
"src": "12821:44:0"
}
],
"id": 998,
"name": "Return",
"src": "12814:51:0"
}
],
"id": 999,
"name": "Block",
"src": "12800:76:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 991
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1000,
"name": "Identifier",
"src": "12903:12:0"
}
],
"id": 1001,
"name": "Return",
"src": "12896:19:0"
}
],
"id": 1002,
"name": "Block",
"src": "12882:44:0"
}
],
"id": 1003,
"name": "IfStatement",
"src": "12784:142:0"
}
],
"id": 1004,
"name": "Block",
"src": "12774:158:0"
}
],
"id": 1005,
"name": "FunctionDefinition",
"src": "12720:212:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "issue",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "amount",
"scope": 1047,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1006,
"name": "ElementaryTypeName",
"src": "13105:4:0"
}
],
"id": 1007,
"name": "VariableDeclaration",
"src": "13105:11:0"
}
],
"id": 1008,
"name": "ParameterList",
"src": "13104:13:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 1011,
"name": "ParameterList",
"src": "13135:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 1009,
"name": "Identifier",
"src": "13125:9:0"
}
],
"id": 1010,
"name": "ModifierInvocation",
"src": "13125:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1012,
"name": "Identifier",
"src": "13145:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1013,
"name": "Identifier",
"src": "13153:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1007,
"type": "uint256",
"value": "amount"
},
"id": 1014,
"name": "Identifier",
"src": "13168:6:0"
}
],
"id": 1015,
"name": "BinaryOperation",
"src": "13153:21:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1016,
"name": "Identifier",
"src": "13177:12:0"
}
],
"id": 1017,
"name": "BinaryOperation",
"src": "13153:36:0"
}
],
"id": 1018,
"name": "FunctionCall",
"src": "13145:45:0"
}
],
"id": 1019,
"name": "ExpressionStatement",
"src": "13145:45:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1020,
"name": "Identifier",
"src": "13200:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 1021,
"name": "Identifier",
"src": "13208:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 1022,
"name": "Identifier",
"src": "13217:5:0"
}
],
"id": 1023,
"name": "IndexAccess",
"src": "13208:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1007,
"type": "uint256",
"value": "amount"
},
"id": 1024,
"name": "Identifier",
"src": "13226:6:0"
}
],
"id": 1025,
"name": "BinaryOperation",
"src": "13208:24:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 1026,
"name": "Identifier",
"src": "13235:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 1027,
"name": "Identifier",
"src": "13244:5:0"
}
],
"id": 1028,
"name": "IndexAccess",
"src": "13235:15:0"
}
],
"id": 1029,
"name": "BinaryOperation",
"src": "13208:42:0"
}
],
"id": 1030,
"name": "FunctionCall",
"src": "13200:51:0"
}
],
"id": 1031,
"name": "ExpressionStatement",
"src": "13200:51:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 1032,
"name": "Identifier",
"src": "13262:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 1033,
"name": "Identifier",
"src": "13271:5:0"
}
],
"id": 1034,
"name": "IndexAccess",
"src": "13262:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1007,
"type": "uint256",
"value": "amount"
},
"id": 1035,
"name": "Identifier",
"src": "13281:6:0"
}
],
"id": 1036,
"name": "Assignment",
"src": "13262:25:0"
}
],
"id": 1037,
"name": "ExpressionStatement",
"src": "13262:25:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1038,
"name": "Identifier",
"src": "13297:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1007,
"type": "uint256",
"value": "amount"
},
"id": 1039,
"name": "Identifier",
"src": "13313:6:0"
}
],
"id": 1040,
"name": "Assignment",
"src": "13297:22:0"
}
],
"id": 1041,
"name": "ExpressionStatement",
"src": "13297:22:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1127,
"type": "function (uint256)",
"value": "Issue"
},
"id": 1042,
"name": "Identifier",
"src": "13329:5:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1007,
"type": "uint256",
"value": "amount"
},
"id": 1043,
"name": "Identifier",
"src": "13335:6:0"
}
],
"id": 1044,
"name": "FunctionCall",
"src": "13329:13:0"
}
],
"id": 1045,
"name": "ExpressionStatement",
"src": "13329:13:0"
}
],
"id": 1046,
"name": "Block",
"src": "13135:214:0"
}
],
"id": 1047,
"name": "FunctionDefinition",
"src": "13090:259:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "redeem",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "amount",
"scope": 1083,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1048,
"name": "ElementaryTypeName",
"src": "13589:4:0"
}
],
"id": 1049,
"name": "VariableDeclaration",
"src": "13589:11:0"
}
],
"id": 1050,
"name": "ParameterList",
"src": "13588:13:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 1053,
"name": "ParameterList",
"src": "13619:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 1051,
"name": "Identifier",
"src": "13609:9:0"
}
],
"id": 1052,
"name": "ModifierInvocation",
"src": "13609:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1054,
"name": "Identifier",
"src": "13629:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1055,
"name": "Identifier",
"src": "13637:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1049,
"type": "uint256",
"value": "amount"
},
"id": 1056,
"name": "Identifier",
"src": "13653:6:0"
}
],
"id": 1057,
"name": "BinaryOperation",
"src": "13637:22:0"
}
],
"id": 1058,
"name": "FunctionCall",
"src": "13629:31:0"
}
],
"id": 1059,
"name": "ExpressionStatement",
"src": "13629:31:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1060,
"name": "Identifier",
"src": "13670:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">=",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 1061,
"name": "Identifier",
"src": "13678:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 1062,
"name": "Identifier",
"src": "13687:5:0"
}
],
"id": 1063,
"name": "IndexAccess",
"src": "13678:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1049,
"type": "uint256",
"value": "amount"
},
"id": 1064,
"name": "Identifier",
"src": "13697:6:0"
}
],
"id": 1065,
"name": "BinaryOperation",
"src": "13678:25:0"
}
],
"id": 1066,
"name": "FunctionCall",
"src": "13670:34:0"
}
],
"id": 1067,
"name": "ExpressionStatement",
"src": "13670:34:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "-=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 141,
"type": "uint256",
"value": "_totalSupply"
},
"id": 1068,
"name": "Identifier",
"src": "13715:12:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1049,
"type": "uint256",
"value": "amount"
},
"id": 1069,
"name": "Identifier",
"src": "13731:6:0"
}
],
"id": 1070,
"name": "Assignment",
"src": "13715:22:0"
}
],
"id": 1071,
"name": "ExpressionStatement",
"src": "13715:22:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "-=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 216,
"type": "mapping(address => uint256)",
"value": "balances"
},
"id": 1072,
"name": "Identifier",
"src": "13747:8:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 99,
"type": "address",
"value": "owner"
},
"id": 1073,
"name": "Identifier",
"src": "13756:5:0"
}
],
"id": 1074,
"name": "IndexAccess",
"src": "13747:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1049,
"type": "uint256",
"value": "amount"
},
"id": 1075,
"name": "Identifier",
"src": "13766:6:0"
}
],
"id": 1076,
"name": "Assignment",
"src": "13747:25:0"
}
],
"id": 1077,
"name": "ExpressionStatement",
"src": "13747:25:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1131,
"type": "function (uint256)",
"value": "Redeem"
},
"id": 1078,
"name": "Identifier",
"src": "13782:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1049,
"type": "uint256",
"value": "amount"
},
"id": 1079,
"name": "Identifier",
"src": "13789:6:0"
}
],
"id": 1080,
"name": "FunctionCall",
"src": "13782:14:0"
}
],
"id": 1081,
"name": "ExpressionStatement",
"src": "13782:14:0"
}
],
"id": 1082,
"name": "Block",
"src": "13619:184:0"
}
],
"id": 1083,
"name": "FunctionDefinition",
"src": "13573:230:0"
},
{
"attributes": {
"constant": false,
"implemented": true,
"isConstructor": false,
"name": "setParams",
"payable": false,
"scope": 1142,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "newBasisPoints",
"scope": 1123,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1084,
"name": "ElementaryTypeName",
"src": "13828:4:0"
}
],
"id": 1085,
"name": "VariableDeclaration",
"src": "13828:19:0"
},
{
"attributes": {
"constant": false,
"name": "newMaxFee",
"scope": 1123,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1086,
"name": "ElementaryTypeName",
"src": "13849:4:0"
}
],
"id": 1087,
"name": "VariableDeclaration",
"src": "13849:14:0"
}
],
"id": 1088,
"name": "ParameterList",
"src": "13827:37:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 1091,
"name": "ParameterList",
"src": "13882:0:0"
},
{
"attributes": {
"arguments": [
null
]
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 119,
"type": "modifier ()",
"value": "onlyOwner"
},
"id": 1089,
"name": "Identifier",
"src": "13872:9:0"
}
],
"id": 1090,
"name": "ModifierInvocation",
"src": "13872:9:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1092,
"name": "Identifier",
"src": "13980:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "<",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1085,
"type": "uint256",
"value": "newBasisPoints"
},
"id": 1093,
"name": "Identifier",
"src": "13988:14:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3230",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 20",
"value": "20"
},
"id": 1094,
"name": "Literal",
"src": "14005:2:0"
}
],
"id": 1095,
"name": "BinaryOperation",
"src": "13988:19:0"
}
],
"id": 1096,
"name": "FunctionCall",
"src": "13980:28:0"
}
],
"id": 1097,
"name": "ExpressionStatement",
"src": "13980:28:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1157,
"type": "function (bool) pure",
"value": "require"
},
"id": 1098,
"name": "Identifier",
"src": "14018:7:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "<",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1087,
"type": "uint256",
"value": "newMaxFee"
},
"id": 1099,
"name": "Identifier",
"src": "14026:9:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3530",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 50",
"value": "50"
},
"id": 1100,
"name": "Literal",
"src": "14038:2:0"
}
],
"id": 1101,
"name": "BinaryOperation",
"src": "14026:14:0"
}
],
"id": 1102,
"name": "FunctionCall",
"src": "14018:23:0"
}
],
"id": 1103,
"name": "ExpressionStatement",
"src": "14018:23:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 219,
"type": "uint256",
"value": "basisPointsRate"
},
"id": 1104,
"name": "Identifier",
"src": "14052:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1085,
"type": "uint256",
"value": "newBasisPoints"
},
"id": 1105,
"name": "Identifier",
"src": "14070:14:0"
}
],
"id": 1106,
"name": "Assignment",
"src": "14052:32:0"
}
],
"id": 1107,
"name": "ExpressionStatement",
"src": "14052:32:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 1108,
"name": "Identifier",
"src": "14094:10:0"
},
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "uint256",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"member_name": "mul",
"referencedDeclaration": 34,
"type": "function (uint256,uint256) pure returns (uint256)"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1087,
"type": "uint256",
"value": "newMaxFee"
},
"id": 1109,
"name": "Identifier",
"src": "14107:9:0"
}
],
"id": 1110,
"name": "MemberAccess",
"src": "14107:13:0"
},
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "**",
"type": "uint256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3130",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 10",
"value": "10"
},
"id": 1111,
"name": "Literal",
"src": "14121:2:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 761,
"type": "uint256",
"value": "decimals"
},
"id": 1112,
"name": "Identifier",
"src": "14125:8:0"
}
],
"id": 1113,
"name": "BinaryOperation",
"src": "14121:12:0"
}
],
"id": 1114,
"name": "FunctionCall",
"src": "14107:27:0"
}
],
"id": 1115,
"name": "Assignment",
"src": "14094:40:0"
}
],
"id": 1116,
"name": "ExpressionStatement",
"src": "14094:40:0"
},
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"isStructConstructorCall": false,
"lValueRequested": false,
"names": [
null
],
"type": "tuple()",
"type_conversion": false
},
"children": [
{
"attributes": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"overloadedDeclarations": [
null
],
"referencedDeclaration": 1141,
"type": "function (uint256,uint256)",
"value": "Params"
},
"id": 1117,
"name": "Identifier",
"src": "14145:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 219,
"type": "uint256",
"value": "basisPointsRate"
},
"id": 1118,
"name": "Identifier",
"src": "14152:15:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 222,
"type": "uint256",
"value": "maximumFee"
},
"id": 1119,
"name": "Identifier",
"src": "14169:10:0"
}
],
"id": 1120,
"name": "FunctionCall",
"src": "14145:35:0"
}
],
"id": 1121,
"name": "ExpressionStatement",
"src": "14145:35:0"
}
],
"id": 1122,
"name": "Block",
"src": "13882:305:0"
}
],
"id": 1123,
"name": "FunctionDefinition",
"src": "13809:378:0"
},
{
"attributes": {
"anonymous": false,
"name": "Issue"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "amount",
"scope": 1127,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1124,
"name": "ElementaryTypeName",
"src": "14245:4:0"
}
],
"id": 1125,
"name": "VariableDeclaration",
"src": "14245:11:0"
}
],
"id": 1126,
"name": "ParameterList",
"src": "14244:13:0"
}
],
"id": 1127,
"name": "EventDefinition",
"src": "14233:25:0"
},
{
"attributes": {
"anonymous": false,
"name": "Redeem"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "amount",
"scope": 1131,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1128,
"name": "ElementaryTypeName",
"src": "14316:4:0"
}
],
"id": 1129,
"name": "VariableDeclaration",
"src": "14316:11:0"
}
],
"id": 1130,
"name": "ParameterList",
"src": "14315:13:0"
}
],
"id": 1131,
"name": "EventDefinition",
"src": "14303:26:0"
},
{
"attributes": {
"anonymous": false,
"name": "Deprecate"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "newAddress",
"scope": 1135,
"stateVariable": false,
"storageLocation": "default",
"type": "address",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "address",
"type": "address"
},
"id": 1132,
"name": "ElementaryTypeName",
"src": "14393:7:0"
}
],
"id": 1133,
"name": "VariableDeclaration",
"src": "14393:18:0"
}
],
"id": 1134,
"name": "ParameterList",
"src": "14392:20:0"
}
],
"id": 1135,
"name": "EventDefinition",
"src": "14377:36:0"
},
{
"attributes": {
"anonymous": false,
"name": "Params"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"indexed": false,
"name": "feeBasisPoints",
"scope": 1141,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1136,
"name": "ElementaryTypeName",
"src": "14473:4:0"
}
],
"id": 1137,
"name": "VariableDeclaration",
"src": "14473:19:0"
},
{
"attributes": {
"constant": false,
"indexed": false,
"name": "maxFee",
"scope": 1141,
"stateVariable": false,
"storageLocation": "default",
"type": "uint256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "uint",
"type": "uint256"
},
"id": 1138,
"name": "ElementaryTypeName",
"src": "14494:4:0"
}
],
"id": 1139,
"name": "VariableDeclaration",
"src": "14494:11:0"
}
],
"id": 1140,
"name": "ParameterList",
"src": "14472:34:0"
}
],
"id": 1141,
"name": "EventDefinition",
"src": "14460:47:0"
}
],
"id": 1142,
"name": "ContractDefinition",
"src": "9728:4781:0"
}
],
"id": 1143,
"name": "SourceUnit",
"src": "67:14442:0"
}
}
}
}