2018-05-31 13:01:02 +00:00
{
"contractName" : "GnosisSafePersonalEdition" ,
"abi" : [
2018-06-28 17:13:59 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint256"
}
] ,
"name" : "addOwnerWithThreshold" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "_owners" ,
"type" : "address[]"
} ,
{
"name" : "_threshold" ,
"type" : "uint256"
} ,
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "data" ,
"type" : "bytes"
}
] ,
"name" : "setup" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : true ,
"inputs" : [
{
"name" : "owner" ,
"type" : "address"
}
] ,
"name" : "isOwner" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
}
] ,
"name" : "execTransactionFromModule" ,
"outputs" : [
{
"name" : "success" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "module" ,
"type" : "address"
}
] ,
"name" : "enableModule" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-06-20 08:09:14 +00:00
{
2018-06-28 17:13:59 +00:00
"constant" : false ,
2018-06-20 08:09:14 +00:00
"inputs" : [
{
2018-06-28 17:13:59 +00:00
"name" : "_threshold" ,
2018-06-20 08:09:14 +00:00
"type" : "uint256"
}
] ,
2018-06-28 17:13:59 +00:00
"name" : "changeThreshold" ,
"outputs" : [ ] ,
2018-06-20 08:09:14 +00:00
"payable" : false ,
2018-06-28 17:13:59 +00:00
"stateMutability" : "nonpayable" ,
2018-06-20 08:09:14 +00:00
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "_masterCopy" ,
"type" : "address"
}
] ,
"name" : "changeMasterCopy" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "SENTINEL_MODULES" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "SENTINEL_OWNERS" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getOwners" ,
"outputs" : [
{
"name" : "" ,
"type" : "address[]"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "NAME" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "nonce" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getModules" ,
"outputs" : [
{
"name" : "" ,
"type" : "address[]"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "domainSeperator" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "SAFE_TX_TYPEHASH" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "prevModule" ,
"type" : "address"
} ,
{
"name" : "module" ,
"type" : "address"
}
] ,
"name" : "disableModule" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "prevOwner" ,
"type" : "address"
} ,
{
"name" : "oldOwner" ,
"type" : "address"
} ,
{
"name" : "newOwner" ,
"type" : "address"
}
] ,
"name" : "swapOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getThreshold" ,
"outputs" : [
{
"name" : "" ,
2018-06-28 17:13:59 +00:00
"type" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-06-28 17:13:59 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "prevOwner" ,
"type" : "address"
} ,
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint256"
}
] ,
"name" : "removeOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "VERSION" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"payable" : true ,
"stateMutability" : "payable" ,
"type" : "fallback"
} ,
{
"anonymous" : false ,
2018-06-20 08:09:14 +00:00
"inputs" : [
{
"indexed" : false ,
"name" : "txHash" ,
"type" : "bytes32"
}
] ,
2018-05-31 13:01:02 +00:00
"name" : "ExecutionFailed" ,
"type" : "event"
} ,
{
"anonymous" : false ,
"inputs" : [
{
"indexed" : false ,
"name" : "newContract" ,
"type" : "address"
}
] ,
"name" : "ContractCreation" ,
"type" : "event"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
} ,
{
"name" : "safeTxGas" ,
"type" : "uint256"
} ,
{
"name" : "dataGas" ,
"type" : "uint256"
} ,
{
"name" : "gasPrice" ,
"type" : "uint256"
} ,
{
"name" : "gasToken" ,
"type" : "address"
} ,
{
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"type" : "bytes"
2018-05-31 13:01:02 +00:00
}
] ,
2018-06-20 08:09:14 +00:00
"name" : "execTransactionAndPaySubmitter" ,
2018-05-31 13:01:02 +00:00
"outputs" : [
{
2018-06-20 08:09:14 +00:00
"name" : "success" ,
"type" : "bool"
2018-05-31 13:01:02 +00:00
}
] ,
"payable" : false ,
2018-06-20 08:09:14 +00:00
"stateMutability" : "nonpayable" ,
2018-05-31 13:01:02 +00:00
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
}
] ,
"name" : "requiredTxGas" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
} ,
{
"name" : "safeTxGas" ,
"type" : "uint256"
} ,
{
"name" : "dataGas" ,
"type" : "uint256"
} ,
{
"name" : "gasPrice" ,
"type" : "uint256"
} ,
{
"name" : "gasToken" ,
"type" : "address"
} ,
{
"name" : "_nonce" ,
"type" : "uint256"
}
] ,
"name" : "getTransactionHash" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
}
] ,
2018-08-20 07:59:16 +00:00
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 506143 a b 806100206000396000 f 30060806040526004361061013e576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 16806309529334146101405780630 d 582 f 131461027 c 5780630 e c 78 d 9e146102 c 95780631 d a 5187 f 1461039 f 5780632 f 54 b f 6e146103 d 2578063468721 a 71461042 d 578063610 b 5925146104e5578063694 e 80 c 3146105285780637 d e 7 e d e f 1461055557806385e332 c d 146105985780638 c f f 6355146105 e f 578063 a 0e67 e 2 b 14610646578063 a 3 f 4 d f 7e146106 b 2578063 a f f e d 0e014610742578063 b 2494 d f 31461076 d 578063 b a 0 8 e a 24146107 d 9578063 c 4 c a 3 a 9 c 146108 d d 578063 c b 73 a c 5614610991578063 c c a f c 387146109 c 4578063e009 c f d e 146109 f 7578063e318 b 52 b 14610 a 5 a 578063e75235 b 814610 a d d 578063 f 8 d c 5 d d 914610 b 0 8578063 f f a 1 a d 7414610 b 75575 b 0 0 5 b 34801561014 c 57600080 f d 5 b 50610262600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560 f f 169060200190929190803590602001909291908035906020019092919080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610 c 0 5565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561028857600080 f d 5 b 506102 c 7600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610 f 0 b 565 b 0 0 5 b 3480156102 d 557600080 f d 5 b 5061039 d 6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611311565 b 0 0 5 b 3480156103 a b 57600080 f d 5 b 506103 b 4611497565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 3480156103 d e 57600080 f d 5 b 50610413600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291905050506114 b e 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561043957600080 f d 5 b 506104 c b 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560 f f 169060200190929190505050611540565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156104 f 157600080 f d 5 b 50610526600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061166 c 565 b 0 0 5 b 34801561053457600080 f d 5 b 5061055360048036038101908080359060200190929190505050611 a 4 a 565 b 0 0 5 b 34801561056157600080 f d 5 b 50610596600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050611 c 5 c 565 b 0 0 5 b 3480156105 a 457600080 f d 5 b 506105 a d 611e1 d 565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 3480156105 f b 57600080 f d 5 b 50610604611e22565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 34801561065257600080 f d 5 b 5061065 b 611e27565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561069e578082015181840152602081019050610683565 b 505050509050019250505060405180910390 f 35 b 3480156106 b e 57600080 f d 5 b 506106 c 7611 f c 2565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107075780820151818401526020810190506106 e c 565 b 50505050905090810190601 f 1680156107345780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561074e57600080 f d 5 b 50610757611 f f b 565 b 6040518082815260200191505060405180910390 f 35 b 34801561077957600080 f d 5 b 50610782612001565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156107 c 55780820151818401526020810190506107 a a 565 b 5050505090500192505050604051809103
"deployedBytecode" : " 0 x 60806040526004361061013e576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 16806309529334146101405780630 d 582 f 131461027 c 5780630 e c 78 d 9e146102 c 95780631 d a 5187 f 1461039 f 5780632 f 54 b f 6e146103 d 2578063468721 a 71461042 d 578063610 b 5925146104e5578063694 e 80 c 3146105285780637 d e 7 e d e f 1461055557806385e332 c d 146105985780638 c f f 6355146105 e f 578063 a 0e67 e 2 b 14610646578063 a 3 f 4 d f 7e146106 b 2578063 a f f e d 0e014610742578063 b 2494 d f 31461076 d 578063 b a 0 8 e a 24146107 d 9578063 c 4 c a 3 a 9 c 146108 d d 578063 c b 73 a c 5614610991578063 c c a f c 387146109 c 4578063e009 c f d e 146109 f 7578063e318 b 52 b 14610 a 5 a 578063e75235 b 814610 a d d 578063 f 8 d c 5 d d 914610 b 0 8578063 f f a 1 a d 7414610 b 75575 b 0 0 5 b 34801561014 c 57600080 f d 5 b 50610262600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560 f f 169060200190929190803590602001909291908035906020019092919080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610 c 0 5565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561028857600080 f d 5 b 506102 c 7600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610 f 0 b 565 b 0 0 5 b 3480156102 d 557600080 f d 5 b 5061039 d 6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611311565 b 0 0 5 b 3480156103 a b 57600080 f d 5 b 506103 b 4611497565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 3480156103 d e 57600080 f d 5 b 50610413600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291905050506114 b e 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561043957600080 f d 5 b 506104 c b 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560 f f 169060200190929190505050611540565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156104 f 157600080 f d 5 b 50610526600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061166 c 565 b 0 0 5 b 34801561053457600080 f d 5 b 5061055360048036038101908080359060200190929190505050611 a 4 a 565 b 0 0 5 b 34801561056157600080 f d 5 b 50610596600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050611 c 5 c 565 b 0 0 5 b 3480156105 a 457600080 f d 5 b 506105 a d 611e1 d 565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 3480156105 f b 57600080 f d 5 b 50610604611e22565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 34801561065257600080 f d 5 b 5061065 b 611e27565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561069e578082015181840152602081019050610683565 b 505050509050019250505060405180910390 f 35 b 3480156106 b e 57600080 f d 5 b 506106 c 7611 f c 2565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107075780820151818401526020810190506106 e c 565 b 50505050905090810190601 f 1680156107345780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561074e57600080 f d 5 b 50610757611 f f b 565 b 6040518082815260200191505060405180910390 f 35 b 34801561077957600080 f d 5 b 50610782612001565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156107 c 55780820151818401526020810190506107 a a 565 b 505050509050019250505060405180910390 f 35 b 3480156107e557600080 f d 5 b 506108 b f 600480360381019080
"sourceMap" : "483:6332:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;483:6332:5;;;;;;;" ,
"deployedSourceMap" : " 483 : 6332 : 5 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1980 : 1545 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1980 : 1545 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2093 : 595 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2093 : 595 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 933 : 457 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 933 : 457 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 458 : 118 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 458 : 118 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5613 : 129 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5613 : 129 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2712 : 429 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2712 : 429 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1182 : 459 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1182 : 459 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5087 : 399 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5087 : 399 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 626 : 248 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 488 : 55 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 488 : 55 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 287 : 54 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 287 : 54 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5824 : 458 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5824 : 458 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 5824 : 458 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 593 : 60 : 5 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 593 : 60 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 593 : 60 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1057 : 20 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1057 : 20 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3220 : 738 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3220 : 738 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 3220 : 738 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 6187 : 626 : 5 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 6187 : 626 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4452 : 523 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4452 : 523 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 583 : 30 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 583 : 30 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 893 : 109 : 5 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 893 : 109 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1902 : 474 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1902 : 474 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4147 : 751 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4147 : 751 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5492 : 115 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5492 : 115 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3030 : 783 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3030 : 783 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 659 : 40 : 5 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 659 : 40 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 659 : 40 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1980 : 1545 ; 2289 : 12 ; 2317 : 16 ; 2355 : 14 ; 2983 : 16 ; 3048 : 14 ; 2336 : 9 ; 2317 : 28 ; ; 2372 : 93 ; 2391 : 2 ; 2395 : 5 ; 2402 : 4 ; 2408 : 9 ; 2419 ; 2430 : 7 ; 2439 : 8 ; 2449 ; 2459 : 5 ; ; 2372 : 18 ; : 93 : : i ; : : : - ; 2355 : 110 ; ; 2475 : 29 ; 2485 : 6 ; 2493 : 10 ; 2475 : 9 ; : 29 : : i ; : : : - ; 2565 : 5 ; ; : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; 2603 : 9 ; 2590 ; : 22 ; ; 2582 : 77 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2679 : 46 ; 2687 : 2 ; 2691 : 5 ; 2698 : 4 ; 2704 : 9 ; 2715 ; 2679 : 7 ; : 46 : : i ; : : : - ; 2669 : 56 ; ; 2740 : 7 ; 2739 : 8 ; 2735 : 67 ; ; ; 2768 : 23 ; 2784 : 6 ; 2768 : 23 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2735 : 67 ; 2966 : 1 ; 2955 : 8 ; : 12 ; 2951 : 566 ; ; ; 3027 : 7 ; 3014 : 9 ; 3003 : 8 ; : 20 ; 3002 : 32 ; 2983 : 51 ; ; 3076 : 8 ; 3065 ; : 19 ; 3048 : 36 ; ; 3122 : 1 ; 3102 : 22 ; ; : 8 ; : 2
"source" : "pragma solidity 0.4.24;\nimport \"./GnosisSafe.sol\";\nimport \"./MasterCopy.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"./SecuredTokenTransfer.sol\";\n\n\n/// @title Gnosis Safe Personal Edition - A multisignature wallet with support for confirmations using signed messages based on ERC191.\n/// @author Stefan George - <stefan@gnosis.pm>\n/// @author Richard Meissner - <richard@gnosis.pm>\n/// @author Ricardo Guilherme Schmidt - (Status Research & Development GmbH) - Gas Token Payment\ncontract GnosisSafePersonalEdition is MasterCopy, GnosisSafe, SignatureValidator, SecuredTokenTransfer {\n\n string public constant NAME = \"Gnosis Safe Personal Edition\";\n string public constant VERSION = \"0.0.1\";\n //keccak256(\n // \"PersonalSafeTx(address to,uint256 value,bytes data,uint8 operation,uint256 safeTxGas,uint256 dataGas,uint256 gasPrice,address gasToken,uint256 nonce)\"\n //);\n bytes32 public constant SAFE_TX_TYPEHASH = 0x068c3b33cc9bff6dde08209527b62abfb1d4ed576706e2078229623d72374b5b;\n \n event ExecutionFailed(bytes32 txHash);\n\n uint256 public nonce;\n\n /// @dev Allows to execute a Safe transaction confirmed by required number of owners and then pays the account that submitted the transaction.\n /// Note: The fees are always transfered, even if the user transaction fails. \n /// @param to Destination address of Safe transaction.\n /// @param value Ether value of Safe transaction.\n /// @param data Data payload of Safe transaction.\n /// @param operation Operation type of Safe transaction.\n /// @param safeTxGas Gas that should be used for the Safe transaction.\n /// @param dataGas Gas costs for data used to trigger the safe transaction and to pay the payment transfer\n /// @param gasPrice Gas price that should be used for the payment calculation.\n /// @param gasToken Token address (or 0 if ETH) that is used for the payment.\n /// @param signatures Packed signature data ({bytes32 r}{bytes32 s}{uint8 v})\n function execTransactionAndPaySubmitter(\n address to, \n uint256 value, \n bytes data, \n Enum.Operation operation, \n uint256 safeTxGas,\n uint256 dataGas,\n uint256 gasPrice,\n address gasToken,\n bytes signatures\n )\n public\n returns (bool success)\n {\n uint256 startGas = gasleft();\n bytes32 txHash = getTransactionHash(to, value, data, operation, safeTxGas, dataGas, gasPrice, gasToken, nonce);\n checkHash(txHash, signatures);\n // Increase nonce and execute transaction.\n nonce++;\n require(gasleft() >= safeTxGas, \"Not enough gas to execute safe transaction\");\n success = execute(to, value, data, operation, safeTxGas);\n if (!success) {\n emit ExecutionFailed(txHash);\n }\n \n // We transfer the calculated tx costs to the tx.origin to avoid sending it to intermediate contracts that have made calls\n if (gasPrice > 0) {\n uint256 gasCosts = (startGas - gasleft()) + dataGas;\n uint256 amount = gasCosts * gasPrice;\n if (gasToken == address(0)) {\n // solium-disable-next-line security/no-tx-origin,security/no-send\n require(tx.origin.send(amount), \"Could not pay gas costs with ether\");\n } else {\n // solium-disable-next-line security/no-tx-origin\n require(transferToken(gasToken, tx.origin, amount), \"Could not pay gas costs with token\" ) ; \ n } \ n } \ n } \ n \ n /// @dev Allows to estimate a Safe transaction. \n /// This method is only meant for estimation purpose, therfore two different protection mechanism against execution in a transaction have been made:\n /// 1.) The method can only be called from the safe itself\n /// 2.) The response is returned with a revert\n /// When estimating set `from` to the address of the safe.\n /// Since the `estimateGas` function include
2018-05-31 13:01:02 +00:00
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafePersonalEdition.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafePersonalEdition.sol" ,
"exportedSymbols" : {
"GnosisSafePersonalEdition" : [
2018-08-20 07:59:16 +00:00
529
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 530 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 210 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-08-20 07:59:16 +00:00
"src" : "0:23:5"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"file" : "./GnosisSafe.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 211 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 209 ,
"src" : "24:26:5" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/MasterCopy.sol" ,
"file" : "./MasterCopy.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 212 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 814 ,
"src" : "51:26:5" ,
2018-06-20 08:09:14 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/SignatureValidator.sol" ,
"file" : "./SignatureValidator.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 213 ,
2018-06-28 17:13:59 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 1822 ,
"src" : "78:34:5" ,
2018-06-28 17:13:59 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/SecuredTokenTransfer.sol" ,
"file" : "./SecuredTokenTransfer.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 214 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 1749 ,
"src" : "113:36:5" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 215 ,
2018-05-31 13:01:02 +00:00
"name" : "MasterCopy" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 813 ,
"src" : "521:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_MasterCopy_$813" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract MasterCopy"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 216 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "521:10:5"
2018-05-31 13:01:02 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 217 ,
2018-05-31 13:01:02 +00:00
"name" : "GnosisSafe" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 208 ,
"src" : "533:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract GnosisSafe"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 218 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "533:10:5"
2018-06-20 08:09:14 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 219 ,
2018-06-20 08:09:14 +00:00
"name" : "SignatureValidator" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1821 ,
"src" : "545:18:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_SignatureValidator_$1821" ,
2018-06-20 08:09:14 +00:00
"typeString" : "contract SignatureValidator"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 220 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "545:18:5"
2018-06-28 17:13:59 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 221 ,
2018-06-28 17:13:59 +00:00
"name" : "SecuredTokenTransfer" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1748 ,
"src" : "565:20:5" ,
2018-06-28 17:13:59 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_SecuredTokenTransfer_$1748" ,
2018-06-28 17:13:59 +00:00
"typeString" : "contract SecuredTokenTransfer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 222 ,
2018-06-28 17:13:59 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "565:20:5"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-08-20 07:59:16 +00:00
208 ,
153 ,
37 ,
813 ,
1180 ,
1588 ,
1748 ,
1765 ,
1821
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Gnosis Safe Personal Edition - A multisignature wallet with support for confirmations using signed messages based on ERC191.\n @author Stefan George - <stefan@gnosis.pm>\n @author Richard Meissner - <richard@gnosis.pm>\n @author Ricardo Guilherme Schmidt - (Status Research & Development GmbH) - Gas Token Payment" ,
"fullyImplemented" : true ,
2018-08-20 07:59:16 +00:00
"id" : 529 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
529 ,
1748 ,
1821 ,
208 ,
1588 ,
1180 ,
153 ,
37 ,
813 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "GnosisSafePersonalEdition" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 225 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "593:60:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 223 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "593:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "476e6f736973205361666520506572736f6e616c2045646974696f6e" ,
2018-08-20 07:59:16 +00:00
"id" : 224 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "623:30:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_b657d2895d137bf089ce1df776b732639b1ebc2a3aec3bd837e225e9e0965154" ,
"typeString" : "literal_string \"Gnosis Safe Personal Edition\""
} ,
"value" : "Gnosis Safe Personal Edition"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 228 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "659:40:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 226 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "659:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-08-20 07:59:16 +00:00
"id" : 227 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "692:7:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"id" : 231 ,
"name" : "SAFE_TX_TYPEHASH" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 529 ,
"src" : "893:109:5" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 229 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "893:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "307830363863336233336363396266663664646530383230393532376236326162666231643465643537363730366532303738323239363233643732333734623562" ,
"id" : 230 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "936:66:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_2961644280108194065159135409573964622771032650926095796711509007169446431579_by_1" ,
"typeString" : "int_const 2961...(68 digits omitted)...1579"
} ,
"value" : "0x068c3b33cc9bff6dde08209527b62abfb1d4ed576706e2078229623d72374b5b"
} ,
"visibility" : "public"
} ,
2018-05-31 13:01:02 +00:00
{
"anonymous" : false ,
"documentation" : null ,
2018-08-20 07:59:16 +00:00
"id" : 235 ,
2018-05-31 13:01:02 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 234 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
2018-06-20 08:09:14 +00:00
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 233 ,
2018-06-20 08:09:14 +00:00
"indexed" : false ,
"name" : "txHash" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 235 ,
"src" : "1035:14:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 232 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "1035:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "1034:16:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"src" : "1013:38:5"
2018-05-31 13:01:02 +00:00
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 237 ,
2018-05-31 13:01:02 +00:00
"name" : "nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "1057:20:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 236 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "1057:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 361 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2307:1218:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
261
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 261 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2317:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 260 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2317:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 264 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 262 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "2336:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 263 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2336:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2317:28:5"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"assignments" : [
2018-08-20 07:59:16 +00:00
266
2018-06-20 08:09:14 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 266 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2355:14:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 265 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2355:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 278 ,
2018-06-20 08:09:14 +00:00
"initialValue" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 268 ,
2018-06-20 08:09:14 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 239 ,
"src" : "2391:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 269 ,
2018-06-20 08:09:14 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 241 ,
"src" : "2395:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 270 ,
2018-06-20 08:09:14 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 243 ,
"src" : "2402:4:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 271 ,
2018-06-20 08:09:14 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 245 ,
"src" : "2408:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-06-20 08:09:14 +00:00
"typeString" : "enum Enum.Operation"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 272 ,
2018-06-20 08:09:14 +00:00
"name" : "safeTxGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2419:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 273 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 249 ,
"src" : "2430:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 274 ,
2018-06-20 08:09:14 +00:00
"name" : "gasPrice" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "2439:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 275 ,
2018-06-20 08:09:14 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "2449:8:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 276 ,
2018-06-20 08:09:14 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 237 ,
"src" : "2459:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-06-20 08:09:14 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 267 ,
2018-06-20 08:09:14 +00:00
"name" : "getTransactionHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 528 ,
"src" : "2372:18:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_view$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_bytes32_$" ,
2018-06-20 08:09:14 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256,uint256,uint256,address,uint256) view returns (bytes32)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 277 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2372:93:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2355:110:5"
2018-06-20 08:09:14 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 280 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 266 ,
"src" : "2485:6:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 281 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 255 ,
"src" : "2493:10:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 279 ,
2018-05-31 13:01:02 +00:00
"name" : "checkHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 470 ,
"src" : "2475:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_internal_view$_t_bytes32_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (bytes32,bytes memory) view"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 282 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2475:29:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 283 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2475:29:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 285 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-08-20 07:59:16 +00:00
"src" : "2565:7:5" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 284 ,
2018-05-31 13:01:02 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 237 ,
"src" : "2565:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 286 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2565:7:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 291 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 288 ,
2018-06-20 08:09:14 +00:00
"name" : "gasleft" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "2590:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 289 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2590:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 290 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2603:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "2590:22:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4e6f7420656e6f7567682067617320746f20657865637574652073616665207472616e73616374696f6e" ,
2018-08-20 07:59:16 +00:00
"id" : 292 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "2614:44:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_e7ccb05a0f2c66d12451cdfc6bbab488c38ab704d0f6af9ad18763542e9e5f18" ,
"typeString" : "literal_string \"Not enough gas to execute safe transaction\""
} ,
"value" : "Not enough gas to execute safe transaction"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_e7ccb05a0f2c66d12451cdfc6bbab488c38ab704d0f6af9ad18763542e9e5f18" ,
"typeString" : "literal_string \"Not enough gas to execute safe transaction\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 287 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "2582:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 293 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2582:77:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 294 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2582:77:5"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"expression" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 303 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 295 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 258 ,
"src" : "2669:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 297 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 239 ,
"src" : "2687:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 298 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 241 ,
"src" : "2691:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 299 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 243 ,
"src" : "2698:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 300 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 245 ,
"src" : "2704:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 301 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2715:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 296 ,
2018-05-31 13:01:02 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 115 ,
"src" : "2679:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 302 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2679:46:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "2669:56:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 304 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2669:56:5"
2018-06-20 08:09:14 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 306 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
2018-08-20 07:59:16 +00:00
"src" : "2739:8:5" ,
2018-06-20 08:09:14 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 305 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 258 ,
"src" : "2740:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-08-20 07:59:16 +00:00
"id" : 312 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2735:67:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 311 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2749:53:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"eventCall" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 308 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 266 ,
"src" : "2784:6:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
2018-05-31 13:01:02 +00:00
"expression" : {
2018-06-20 08:09:14 +00:00
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 307 ,
2018-05-31 13:01:02 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 235 ,
"src" : "2768:15:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_event_nonpayable$_t_bytes32_$returns$__$" ,
"typeString" : "function (bytes32)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 309 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2768:23:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 310 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "EmitStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2763:28:5"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 315 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 313 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "2955:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 314 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "2966:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "2955:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-08-20 07:59:16 +00:00
"id" : 360 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2951:566:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 359 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2969:548:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
317
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 317 ,
2018-05-31 13:01:02 +00:00
"name" : "gasCosts" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2983:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 316 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2983:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 325 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 324 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"components" : [
{
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"commonType" : {
2018-05-31 13:01:02 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 321 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 318 ,
2018-06-20 08:09:14 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 261 ,
"src" : "3003:8:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 319 ,
2018-06-20 08:09:14 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "3014:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 320 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3014:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3003:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 322 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "3002:22:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 323 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 249 ,
"src" : "3027:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3002:32:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2983:51:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [
2018-08-20 07:59:16 +00:00
327
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 327 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "3048:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 326 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "3048:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 331 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 330 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 328 ,
2018-05-31 13:01:02 +00:00
"name" : "gasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 317 ,
"src" : "3065:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "*" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 329 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "3076:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3065:19:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3048:36:5"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 336 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 332 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "3102:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 334 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3122:1:5" ,
2018-05-31 13:01:02 +00:00
"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"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 333 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "3114:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 335 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3114:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3102:22:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-08-20 07:59:16 +00:00
"id" : 357 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "3318:189:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
2018-06-28 17:13:59 +00:00
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 349 ,
2018-06-28 17:13:59 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "3425:8:5" ,
2018-06-28 17:13:59 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-31 13:01:02 +00:00
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 350 ,
2018-05-31 13:01:02 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3840 ,
"src" : "3435:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 351 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3435:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 352 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 327 ,
"src" : "3446:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
2018-06-28 17:13:59 +00:00
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-05-31 13:01:02 +00:00
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 348 ,
2018-06-28 17:13:59 +00:00
"name" : "transferToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1747 ,
"src" : "3411:13:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (address,address,uint256) returns (bool)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 353 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3411:42:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74207061792067617320636f737473207769746820746f6b656e" ,
2018-08-20 07:59:16 +00:00
"id" : 354 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3455:36:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_8560a13547eca5648355c8db1a9f8653b6f657d31d476c36bca25e47b45b08f4" ,
"typeString" : "literal_string \"Could not pay gas costs with token\""
} ,
"value" : "Could not pay gas costs with token"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_8560a13547eca5648355c8db1a9f8653b6f657d31d476c36bca25e47b45b08f4" ,
"typeString" : "literal_string \"Could not pay gas costs with token\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 347 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "3403:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 355 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3403:89:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 356 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3403:89:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 358 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3098:409:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 346 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "3126:186:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 341 ,
2018-06-20 08:09:14 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 327 ,
"src" : "3251:6:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-05-31 13:01:02 +00:00
"expression" : {
2018-06-20 08:09:14 +00:00
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 338 ,
2018-06-20 08:09:14 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3840 ,
"src" : "3236:2:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 339 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3236:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 340 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "send" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3236:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_send_nonpayable$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (uint256) returns (bool)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 342 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
2018-06-20 08:09:14 +00:00
"kind" : "functionCall" ,
2018-05-31 13:01:02 +00:00
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3236:22:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74207061792067617320636f7374732077697468206574686572" ,
2018-08-20 07:59:16 +00:00
"id" : 343 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3260:36:5" ,
2018-06-20 08:09:14 +00:00
"subdenomination" : null ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_stringliteral_e2a11e15f7be1214c1340779ad55027af8aa33aee6cb521776a28a0a44aea377" ,
"typeString" : "literal_string \"Could not pay gas costs with ether\""
} ,
"value" : "Could not pay gas costs with ether"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_e2a11e15f7be1214c1340779ad55027af8aa33aee6cb521776a28a0a44aea377" ,
"typeString" : "literal_string \"Could not pay gas costs with ether\""
2018-05-31 13:01:02 +00:00
}
2018-06-20 08:09:14 +00:00
] ,
2018-08-20 07:59:16 +00:00
"id" : 337 ,
2018-06-20 08:09:14 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-06-20 08:09:14 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "3228:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 344 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3228:69:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 345 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3228:69:5"
2018-05-31 13:01:02 +00:00
}
]
}
}
]
}
}
]
} ,
2018-06-20 08:09:14 +00:00
"documentation" : "@dev Allows to execute a Safe transaction confirmed by required number of owners and then pays the account that submitted the transaction.\n Note: The fees are always transfered, even if the user transaction fails. \n @param to Destination address of Safe transaction.\n @param value Ether value of Safe transaction.\n @param data Data payload of Safe transaction.\n @param operation Operation type of Safe transaction.\n @param safeTxGas Gas that should be used for the Safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction and to pay the payment transfer\n @param gasPrice Gas price that should be used for the payment calculation.\n @param gasToken Token address (or 0 if ETH) that is used for the payment.\n @param signatures Packed signature data ({bytes32 r}{bytes32 s}{uint8 v})" ,
2018-08-20 07:59:16 +00:00
"id" : 362 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
2018-06-20 08:09:14 +00:00
"name" : "execTransactionAndPaySubmitter" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 256 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 239 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2029:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 238 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2029:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 241 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2050:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 240 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2050:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 243 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2074:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 242 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2074:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 245 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2095:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 244 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "2095:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 247 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2130:17:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 246 ,
2018-06-20 08:09:14 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2130:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-20 08:09:14 +00:00
"value" : null ,
"visibility" : "internal"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 249 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2157:15:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 248 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2157:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 251 ,
2018-06-20 08:09:14 +00:00
"name" : "gasPrice" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2182:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 250 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2182:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
2018-06-20 08:09:14 +00:00
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 253 ,
2018-06-20 08:09:14 +00:00
"name" : "gasToken" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2208:16:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 252 ,
2018-06-20 08:09:14 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2208:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 255 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2234:16:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 254 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2234:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "2019:237:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 259 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 258 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2289:12:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 257 ,
2018-06-20 08:09:14 +00:00
"name" : "bool" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2289:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "2288:14:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "1980:1545:5" ,
2018-06-20 08:09:14 +00:00
"stateMutability" : "nonpayable" ,
2018-05-31 13:01:02 +00:00
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 409 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "4604:371:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
378
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 378 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4614:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 377 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4614:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 381 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 379 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4633:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 380 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4633:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4614:28:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 384 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 364 ,
"src" : "4755:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 385 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 366 ,
"src" : "4759:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 386 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 368 ,
"src" : "4766:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 387 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 370 ,
"src" : "4772:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 388 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4783:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 389 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4783:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 383 ,
2018-05-31 13:01:02 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 115 ,
"src" : "4747:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 390 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4747:46:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 382 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3831 ,
"src" : "4739:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 391 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4739:55:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 392 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4739:55:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [
2018-08-20 07:59:16 +00:00
394
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 394 ,
2018-05-31 13:01:02 +00:00
"name" : "requiredGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4804:19:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 393 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4804:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 399 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 398 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 395 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 378 ,
"src" : "4826:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 396 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4837:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 397 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4837:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "4826:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4804:42:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 404 ,
2018-05-31 13:01:02 +00:00
"name" : "requiredGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 394 ,
"src" : "4954:11:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 402 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
"src" : "4937:3:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 403 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodePacked" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "4937:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 405 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4937:29:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 401 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "4930:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_string_storage_ptr_$" ,
"typeString" : "type(string storage pointer)"
} ,
"typeName" : "string"
} ,
2018-08-20 07:59:16 +00:00
"id" : 406 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4930:37:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 400 ,
2018-05-31 13:01:02 +00:00
"name" : "revert" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3833 ,
3834
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3834 ,
"src" : "4923:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_revert_pure$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 407 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4923:45:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 408 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4923:45:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-06-20 08:09:14 +00:00
"documentation" : "@dev Allows to estimate a Safe transaction. \n This method is only meant for estimation purpose, therfore two different protection mechanism against execution in a transaction have been made:\n 1.) The method can only be called from the safe itself\n 2.) The response is returned with a revert\n When estimating set `from` to the address of the safe.\n Since the `estimateGas` function includes refunds, call this method to get an estimated of the costs that are deducted from the safe with `execTransactionAndPaySubmitter`\n @param to Destination address of Safe transaction.\n @param value Ether value of Safe transaction.\n @param data Data payload of Safe transaction.\n @param operation Operation type of Safe transaction.\n @return Estimate without refunds and overhead fees (base transaction and payload data gas costs)." ,
2018-08-20 07:59:16 +00:00
"id" : 410 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-08-20 07:59:16 +00:00
"id" : 373 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 372 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1764 ,
"src" : "4563:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-08-20 07:59:16 +00:00
"src" : "4563:10:5"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "requiredTxGas" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 371 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 364 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4475:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 363 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4475:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 366 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4487:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 365 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4487:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 368 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4502:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 367 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4502:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 370 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4514:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 369 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "4514:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4474:65:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 376 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 375 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4591:7:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 374 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4591:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4590:9:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "4452:523:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 469 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "5068:519:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
418
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 418 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5130:17:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 417 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5130:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 422 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 420 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5158:1:5" ,
2018-05-31 13:01:02 +00:00
"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"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 419 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "5150:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 421 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5150:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5130:30:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 424 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5170:20:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 423 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5170:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 425 ,
2018-05-31 13:01:02 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5170:20:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 427 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5200:9:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 426 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5200:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 428 ,
2018-05-31 13:01:02 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5200:9:5"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 467 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "5293:288:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 445 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 439 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5307:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 441 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 412 ,
"src" : "5333:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 442 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 414 ,
"src" : "5341:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 443 ,
2018-06-20 08:09:14 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5353:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 440 ,
2018-06-20 08:09:14 +00:00
"name" : "recoverKey" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1805 ,
"src" : "5322:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_internal_pure$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_address_$" ,
"typeString" : "function (bytes32,bytes memory,uint256) pure returns (address)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 444 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5322:33:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5307:48:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 446 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5307:48:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 452 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 448 ,
2018-05-31 13:01:02 +00:00
"name" : "owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1194 ,
"src" : "5377:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_address_$" ,
"typeString" : "mapping(address => address)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 450 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 449 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5384:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-08-20 07:59:16 +00:00
"src" : "5377:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 451 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5401:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "5377:25:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "5369676e6174757265206e6f742070726f7669646564206279206f776e6572" ,
2018-08-20 07:59:16 +00:00
"id" : 453 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5404:33:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_09247dae670daab7cf1923d3334eea07c14df3c0a8f5233960935c63f47104a9" ,
"typeString" : "literal_string \"Signature not provided by owner\""
} ,
"value" : "Signature not provided by owner"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_09247dae670daab7cf1923d3334eea07c14df3c0a8f5233960935c63f47104a9" ,
"typeString" : "literal_string \"Signature not provided by owner\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 447 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "5369:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 454 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5369:69:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 455 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5369:69:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 459 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 457 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5460:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 458 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 418 ,
"src" : "5475:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5460:24:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "5369676e61747572657320617265206e6f74206f726465726564206279206f776e65722061646472657373" ,
2018-08-20 07:59:16 +00:00
"id" : 460 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5486:45:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_597a123a1bc14bc9690387ae0fec99721cc18eefa85fa2531a7593a762444235" ,
"typeString" : "literal_string \"Signatures are not ordered by owner address\""
} ,
"value" : "Signatures are not ordered by owner address"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_597a123a1bc14bc9690387ae0fec99721cc18eefa85fa2531a7593a762444235" ,
"typeString" : "literal_string \"Signatures are not ordered by owner address\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 456 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "5452:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 461 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5452:80:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 462 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5452:80:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 465 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 463 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 418 ,
"src" : "5546:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 464 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5558:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5546:24:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 466 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5546:24:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 435 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 433 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5273:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 434 ,
2018-05-31 13:01:02 +00:00
"name" : "threshold" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1198 ,
"src" : "5277:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5273:13:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 468 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 431 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 429 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5266:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 430 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5270:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "5266:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 432 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5266:5:5"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 437 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-08-20 07:59:16 +00:00
"src" : "5288:3:5" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 436 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5288:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 438 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5288:3:5"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5261:320:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-08-20 07:59:16 +00:00
"id" : 470 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "checkHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 415 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 412 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5000:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 411 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5000:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 414 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5016:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 413 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5016:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4999:34:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 416 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-08-20 07:59:16 +00:00
"src" : "5068:0:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "4981:606:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 527 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "6511:302:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
2018-08-20 07:59:16 +00:00
"assignments" : [
494
] ,
"declarations" : [
{
"constant" : false ,
"id" : 494 ,
"name" : "safeTxHash" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 528 ,
"src" : "6521:18:5" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 493 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "6521:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 512 ,
"initialValue" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 498 ,
"name" : "SAFE_TX_TYPEHASH" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 231 ,
"src" : "6576:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 499 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 472 ,
"src" : "6594:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 500 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 474 ,
"src" : "6598:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"arguments" : [
{
"argumentTypes" : null ,
"id" : 502 ,
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 476 ,
"src" : "6615:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 501 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "6605:9:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 503 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6605:15:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 504 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 478 ,
"src" : "6622:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 505 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 480 ,
"src" : "6633:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 506 ,
2018-05-31 13:01:02 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 482 ,
"src" : "6644:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 507 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 484 ,
"src" : "6653:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 508 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 486 ,
"src" : "6663:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 509 ,
2018-05-31 13:01:02 +00:00
"name" : "_nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 488 ,
"src" : "6673:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 496 ,
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3815 ,
"src" : "6565:3:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
"id" : 497 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encode" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "6565:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
"id" : 510 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6565:115:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 495 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "6542:9:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 511 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6542:148:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "6521:169:5"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30783139" ,
"id" : 517 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "6752:4:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_25_by_1" ,
"typeString" : "int_const 25"
} ,
"value" : "0x19"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_25_by_1" ,
"typeString" : "int_const 25"
}
] ,
"id" : 516 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "6747:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
"id" : 518 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6747:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "31" ,
"id" : 520 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "6764:1:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
} ,
"value" : "1"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
}
] ,
"id" : 519 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "6759:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
"id" : 521 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6759:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"id" : 522 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "6768:15:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"id" : 523 ,
"name" : "safeTxHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 494 ,
"src" : "6785:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 514 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
"src" : "6730:3:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 515 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodePacked" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "6730:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 524 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "6730:66:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 513 ,
2018-05-31 13:01:02 +00:00
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3822 ,
"src" : "6707:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 525 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "6707:99:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-08-20 07:59:16 +00:00
"functionReturnParameters" : 492 ,
"id" : 526 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-08-20 07:59:16 +00:00
"src" : "6700:106:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns hash to be signed by owners.\n @param to Destination address.\n @param value Ether value.\n @param data Data payload.\n @param operation Operation type.\n @param safeTxGas Fas that should be used for the safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction.\n @param gasPrice Maximum gas price that should be used for this transaction.\n @param gasToken Token address (or 0 if ETH) that is used for the payment.\n @param _nonce Transaction nonce.\n @return Transaction hash." ,
2018-08-20 07:59:16 +00:00
"id" : 528 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "getTransactionHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 489 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 472 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6224:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 471 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6224:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 474 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6245:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 473 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6245:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 476 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6269:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 475 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6269:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 478 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6290:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 477 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "6290:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 480 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6325:17:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 479 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6325:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 482 ,
2018-05-31 13:01:02 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6353:15:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 481 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6353:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 484 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6379:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 483 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6379:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 486 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6406:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 485 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6406:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 488 ,
2018-05-31 13:01:02 +00:00
"name" : "_nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6432:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 487 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6432:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "6214:238:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 492 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 491 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6498:7:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 490 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6498:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "6497:9:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "6187:626:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"src" : "483:6332:5"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "0:6816:5"
2018-05-31 13:01:02 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafePersonalEdition.sol" ,
"exportedSymbols" : {
"GnosisSafePersonalEdition" : [
2018-08-20 07:59:16 +00:00
529
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 530 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 210 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-08-20 07:59:16 +00:00
"src" : "0:23:5"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"file" : "./GnosisSafe.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 211 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 209 ,
"src" : "24:26:5" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/MasterCopy.sol" ,
"file" : "./MasterCopy.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 212 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 814 ,
"src" : "51:26:5" ,
2018-06-20 08:09:14 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/SignatureValidator.sol" ,
"file" : "./SignatureValidator.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 213 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 1822 ,
"src" : "78:34:5" ,
2018-06-28 17:13:59 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/SecuredTokenTransfer.sol" ,
"file" : "./SecuredTokenTransfer.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 214 ,
2018-06-28 17:13:59 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"sourceUnit" : 1749 ,
"src" : "113:36:5" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 215 ,
2018-05-31 13:01:02 +00:00
"name" : "MasterCopy" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 813 ,
"src" : "521:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_MasterCopy_$813" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract MasterCopy"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 216 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "521:10:5"
2018-06-20 08:09:14 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 217 ,
2018-06-20 08:09:14 +00:00
"name" : "GnosisSafe" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 208 ,
"src" : "533:10:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
2018-06-20 08:09:14 +00:00
"typeString" : "contract GnosisSafe"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 218 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "533:10:5"
2018-05-31 13:01:02 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 219 ,
2018-06-20 08:09:14 +00:00
"name" : "SignatureValidator" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1821 ,
"src" : "545:18:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_SignatureValidator_$1821" ,
2018-06-20 08:09:14 +00:00
"typeString" : "contract SignatureValidator"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 220 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "545:18:5"
2018-06-28 17:13:59 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 221 ,
2018-06-28 17:13:59 +00:00
"name" : "SecuredTokenTransfer" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1748 ,
"src" : "565:20:5" ,
2018-06-28 17:13:59 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_SecuredTokenTransfer_$1748" ,
2018-06-28 17:13:59 +00:00
"typeString" : "contract SecuredTokenTransfer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 222 ,
2018-06-28 17:13:59 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "565:20:5"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-08-20 07:59:16 +00:00
208 ,
153 ,
37 ,
813 ,
1180 ,
1588 ,
1748 ,
1765 ,
1821
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Gnosis Safe Personal Edition - A multisignature wallet with support for confirmations using signed messages based on ERC191.\n @author Stefan George - <stefan@gnosis.pm>\n @author Richard Meissner - <richard@gnosis.pm>\n @author Ricardo Guilherme Schmidt - (Status Research & Development GmbH) - Gas Token Payment" ,
"fullyImplemented" : true ,
2018-08-20 07:59:16 +00:00
"id" : 529 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
529 ,
1748 ,
1821 ,
208 ,
1588 ,
1180 ,
153 ,
37 ,
813 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "GnosisSafePersonalEdition" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 225 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "593:60:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 223 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "593:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "476e6f736973205361666520506572736f6e616c2045646974696f6e" ,
2018-08-20 07:59:16 +00:00
"id" : 224 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "623:30:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_b657d2895d137bf089ce1df776b732639b1ebc2a3aec3bd837e225e9e0965154" ,
"typeString" : "literal_string \"Gnosis Safe Personal Edition\""
} ,
"value" : "Gnosis Safe Personal Edition"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 228 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "659:40:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 226 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "659:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-08-20 07:59:16 +00:00
"id" : 227 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "692:7:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"id" : 231 ,
"name" : "SAFE_TX_TYPEHASH" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 529 ,
"src" : "893:109:5" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 229 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "893:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "307830363863336233336363396266663664646530383230393532376236326162666231643465643537363730366532303738323239363233643732333734623562" ,
"id" : 230 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "936:66:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_2961644280108194065159135409573964622771032650926095796711509007169446431579_by_1" ,
"typeString" : "int_const 2961...(68 digits omitted)...1579"
} ,
"value" : "0x068c3b33cc9bff6dde08209527b62abfb1d4ed576706e2078229623d72374b5b"
} ,
"visibility" : "public"
} ,
2018-05-31 13:01:02 +00:00
{
"anonymous" : false ,
"documentation" : null ,
2018-08-20 07:59:16 +00:00
"id" : 235 ,
2018-05-31 13:01:02 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 234 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
2018-06-20 08:09:14 +00:00
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 233 ,
2018-06-20 08:09:14 +00:00
"indexed" : false ,
"name" : "txHash" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 235 ,
"src" : "1035:14:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 232 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "1035:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "1034:16:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"src" : "1013:38:5"
2018-05-31 13:01:02 +00:00
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 237 ,
2018-05-31 13:01:02 +00:00
"name" : "nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "1057:20:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 236 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "1057:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 361 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2307:1218:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
261
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 261 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2317:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 260 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2317:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 264 ,
2018-06-20 08:09:14 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 262 ,
2018-06-20 08:09:14 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "2336:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 263 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2336:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2317:28:5"
2018-06-20 08:09:14 +00:00
} ,
{
"assignments" : [
2018-08-20 07:59:16 +00:00
266
2018-06-20 08:09:14 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 266 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2355:14:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 265 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2355:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 278 ,
2018-06-20 08:09:14 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 268 ,
2018-06-20 08:09:14 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 239 ,
"src" : "2391:2:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 269 ,
2018-06-20 08:09:14 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 241 ,
"src" : "2395:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 270 ,
2018-06-20 08:09:14 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 243 ,
"src" : "2402:4:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 271 ,
2018-06-20 08:09:14 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 245 ,
"src" : "2408:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-06-20 08:09:14 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 272 ,
2018-06-20 08:09:14 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2419:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
2018-06-20 08:09:14 +00:00
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 273 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 249 ,
"src" : "2430:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 274 ,
2018-06-20 08:09:14 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "2439:8:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 275 ,
2018-06-20 08:09:14 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "2449:8:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 276 ,
2018-06-20 08:09:14 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 237 ,
"src" : "2459:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-06-20 08:09:14 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 267 ,
2018-06-20 08:09:14 +00:00
"name" : "getTransactionHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 528 ,
"src" : "2372:18:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_view$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_bytes32_$" ,
2018-06-20 08:09:14 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256,uint256,uint256,address,uint256) view returns (bytes32)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 277 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2372:93:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2355:110:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 280 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 266 ,
"src" : "2485:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 281 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 255 ,
"src" : "2493:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 279 ,
2018-05-31 13:01:02 +00:00
"name" : "checkHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 470 ,
"src" : "2475:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_internal_view$_t_bytes32_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (bytes32,bytes memory) view"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 282 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2475:29:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 283 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2475:29:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 285 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-08-20 07:59:16 +00:00
"src" : "2565:7:5" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 284 ,
2018-05-31 13:01:02 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 237 ,
"src" : "2565:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 286 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2565:7:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 291 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 288 ,
2018-06-20 08:09:14 +00:00
"name" : "gasleft" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "2590:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 289 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2590:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 290 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2603:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "2590:22:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4e6f7420656e6f7567682067617320746f20657865637574652073616665207472616e73616374696f6e" ,
2018-08-20 07:59:16 +00:00
"id" : 292 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "2614:44:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_e7ccb05a0f2c66d12451cdfc6bbab488c38ab704d0f6af9ad18763542e9e5f18" ,
"typeString" : "literal_string \"Not enough gas to execute safe transaction\""
} ,
"value" : "Not enough gas to execute safe transaction"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_e7ccb05a0f2c66d12451cdfc6bbab488c38ab704d0f6af9ad18763542e9e5f18" ,
"typeString" : "literal_string \"Not enough gas to execute safe transaction\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 287 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "2582:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 293 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2582:77:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 294 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2582:77:5"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"expression" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 303 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 295 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 258 ,
"src" : "2669:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 297 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 239 ,
"src" : "2687:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 298 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 241 ,
"src" : "2691:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 299 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 243 ,
"src" : "2698:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 300 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 245 ,
"src" : "2704:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 301 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 247 ,
"src" : "2715:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 296 ,
2018-05-31 13:01:02 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 115 ,
"src" : "2679:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 302 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2679:46:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "2669:56:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 304 ,
2018-06-20 08:09:14 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2669:56:5"
2018-06-20 08:09:14 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 306 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
2018-08-20 07:59:16 +00:00
"src" : "2739:8:5" ,
2018-06-20 08:09:14 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 305 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 258 ,
"src" : "2740:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-08-20 07:59:16 +00:00
"id" : 312 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2735:67:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 311 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2749:53:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"eventCall" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 308 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 266 ,
"src" : "2784:6:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
2018-05-31 13:01:02 +00:00
"expression" : {
2018-06-20 08:09:14 +00:00
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 307 ,
2018-05-31 13:01:02 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 235 ,
"src" : "2768:15:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_event_nonpayable$_t_bytes32_$returns$__$" ,
"typeString" : "function (bytes32)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 309 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "2768:23:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 310 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "EmitStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2763:28:5"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 315 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 313 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "2955:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 314 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "2966:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "2955:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-08-20 07:59:16 +00:00
"id" : 360 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2951:566:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 359 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "2969:548:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
317
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 317 ,
2018-05-31 13:01:02 +00:00
"name" : "gasCosts" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2983:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 316 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2983:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 325 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 324 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"components" : [
{
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"commonType" : {
2018-05-31 13:01:02 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 321 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 318 ,
2018-06-20 08:09:14 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 261 ,
"src" : "3003:8:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 319 ,
2018-06-20 08:09:14 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "3014:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 320 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3014:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3003:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 322 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "3002:22:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 323 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 249 ,
"src" : "3027:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3002:32:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "2983:51:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [
2018-08-20 07:59:16 +00:00
327
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 327 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "3048:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 326 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "3048:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 331 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 330 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 328 ,
2018-05-31 13:01:02 +00:00
"name" : "gasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 317 ,
"src" : "3065:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "*" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 329 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 251 ,
"src" : "3076:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3065:19:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3048:36:5"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 336 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 332 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "3102:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 334 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3122:1:5" ,
2018-05-31 13:01:02 +00:00
"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"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 333 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "3114:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 335 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3114:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "3102:22:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-08-20 07:59:16 +00:00
"id" : 357 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "3318:189:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
2018-06-28 17:13:59 +00:00
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 349 ,
2018-06-28 17:13:59 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 253 ,
"src" : "3425:8:5" ,
2018-06-28 17:13:59 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-31 13:01:02 +00:00
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 350 ,
2018-05-31 13:01:02 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3840 ,
"src" : "3435:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 351 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3435:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 352 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 327 ,
"src" : "3446:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
2018-06-28 17:13:59 +00:00
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-05-31 13:01:02 +00:00
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 348 ,
2018-06-28 17:13:59 +00:00
"name" : "transferToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1747 ,
"src" : "3411:13:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (address,address,uint256) returns (bool)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 353 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3411:42:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74207061792067617320636f737473207769746820746f6b656e" ,
2018-08-20 07:59:16 +00:00
"id" : 354 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3455:36:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_8560a13547eca5648355c8db1a9f8653b6f657d31d476c36bca25e47b45b08f4" ,
"typeString" : "literal_string \"Could not pay gas costs with token\""
} ,
"value" : "Could not pay gas costs with token"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_8560a13547eca5648355c8db1a9f8653b6f657d31d476c36bca25e47b45b08f4" ,
"typeString" : "literal_string \"Could not pay gas costs with token\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 347 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "3403:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 355 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3403:89:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 356 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3403:89:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 358 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3098:409:5" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-08-20 07:59:16 +00:00
"id" : 346 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "3126:186:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-20 08:09:14 +00:00
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 341 ,
2018-06-20 08:09:14 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 327 ,
"src" : "3251:6:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-05-31 13:01:02 +00:00
"expression" : {
2018-06-20 08:09:14 +00:00
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 338 ,
2018-06-20 08:09:14 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3840 ,
"src" : "3236:2:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 339 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3236:9:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 340 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "send" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "3236:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_send_nonpayable$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (uint256) returns (bool)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 342 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
2018-06-20 08:09:14 +00:00
"kind" : "functionCall" ,
2018-05-31 13:01:02 +00:00
"lValueRequested" : false ,
2018-06-20 08:09:14 +00:00
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3236:22:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
2018-05-31 13:01:02 +00:00
}
} ,
2018-06-20 08:09:14 +00:00
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74207061792067617320636f7374732077697468206574686572" ,
2018-08-20 07:59:16 +00:00
"id" : 343 ,
2018-06-20 08:09:14 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "3260:36:5" ,
2018-06-20 08:09:14 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_e2a11e15f7be1214c1340779ad55027af8aa33aee6cb521776a28a0a44aea377" ,
"typeString" : "literal_string \"Could not pay gas costs with ether\""
} ,
"value" : "Could not pay gas costs with ether"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_e2a11e15f7be1214c1340779ad55027af8aa33aee6cb521776a28a0a44aea377" ,
"typeString" : "literal_string \"Could not pay gas costs with ether\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 337 ,
2018-06-20 08:09:14 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-06-20 08:09:14 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "3228:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 344 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "3228:69:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 345 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "3228:69:5"
2018-05-31 13:01:02 +00:00
}
]
}
}
]
}
}
]
} ,
2018-06-20 08:09:14 +00:00
"documentation" : "@dev Allows to execute a Safe transaction confirmed by required number of owners and then pays the account that submitted the transaction.\n Note: The fees are always transfered, even if the user transaction fails. \n @param to Destination address of Safe transaction.\n @param value Ether value of Safe transaction.\n @param data Data payload of Safe transaction.\n @param operation Operation type of Safe transaction.\n @param safeTxGas Gas that should be used for the Safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction and to pay the payment transfer\n @param gasPrice Gas price that should be used for the payment calculation.\n @param gasToken Token address (or 0 if ETH) that is used for the payment.\n @param signatures Packed signature data ({bytes32 r}{bytes32 s}{uint8 v})" ,
2018-08-20 07:59:16 +00:00
"id" : 362 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
2018-06-20 08:09:14 +00:00
"name" : "execTransactionAndPaySubmitter" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 256 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 239 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2029:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 238 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2029:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 241 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2050:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 240 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2050:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 243 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2074:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 242 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2074:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 245 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2095:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 244 ,
2018-06-20 08:09:14 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "2095:14:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-06-20 08:09:14 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 247 ,
2018-06-20 08:09:14 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2130:17:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 246 ,
2018-06-20 08:09:14 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2130:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-20 08:09:14 +00:00
"value" : null ,
"visibility" : "internal"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 249 ,
2018-06-20 08:09:14 +00:00
"name" : "dataGas" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2157:15:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 248 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2157:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 251 ,
2018-06-20 08:09:14 +00:00
"name" : "gasPrice" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2182:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 250 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2182:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
2018-06-20 08:09:14 +00:00
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 253 ,
2018-06-20 08:09:14 +00:00
"name" : "gasToken" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2208:16:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 252 ,
2018-06-20 08:09:14 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2208:7:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 255 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2234:16:5" ,
2018-06-20 08:09:14 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 254 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2234:5:5" ,
2018-06-20 08:09:14 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "2019:237:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 259 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 258 ,
2018-06-20 08:09:14 +00:00
"name" : "success" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 362 ,
"src" : "2289:12:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 257 ,
2018-06-20 08:09:14 +00:00
"name" : "bool" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "2289:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "2288:14:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "1980:1545:5" ,
2018-06-20 08:09:14 +00:00
"stateMutability" : "nonpayable" ,
2018-05-31 13:01:02 +00:00
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 409 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "4604:371:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
378
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 378 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4614:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 377 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4614:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 381 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 379 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4633:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 380 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4633:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4614:28:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 384 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 364 ,
"src" : "4755:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 385 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 366 ,
"src" : "4759:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 386 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 368 ,
"src" : "4766:4:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 387 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 370 ,
"src" : "4772:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 388 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4783:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 389 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4783:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 383 ,
2018-05-31 13:01:02 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 115 ,
"src" : "4747:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$_t_uint256_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 390 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4747:46:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 382 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3831 ,
"src" : "4739:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 391 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4739:55:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 392 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4739:55:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [
2018-08-20 07:59:16 +00:00
394
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 394 ,
2018-05-31 13:01:02 +00:00
"name" : "requiredGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4804:19:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 393 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4804:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 399 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 398 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 395 ,
2018-05-31 13:01:02 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 378 ,
"src" : "4826:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 396 ,
2018-05-31 13:01:02 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3821 ,
"src" : "4837:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 397 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4837:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "4826:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4804:42:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 404 ,
2018-05-31 13:01:02 +00:00
"name" : "requiredGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 394 ,
"src" : "4954:11:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 402 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
"src" : "4937:3:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 403 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodePacked" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "4937:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 405 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4937:29:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 401 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "4930:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_string_storage_ptr_$" ,
"typeString" : "type(string storage pointer)"
} ,
"typeName" : "string"
} ,
2018-08-20 07:59:16 +00:00
"id" : 406 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4930:37:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 400 ,
2018-05-31 13:01:02 +00:00
"name" : "revert" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3833 ,
3834
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3834 ,
"src" : "4923:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_revert_pure$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 407 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "4923:45:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 408 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "4923:45:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-06-20 08:09:14 +00:00
"documentation" : "@dev Allows to estimate a Safe transaction. \n This method is only meant for estimation purpose, therfore two different protection mechanism against execution in a transaction have been made:\n 1.) The method can only be called from the safe itself\n 2.) The response is returned with a revert\n When estimating set `from` to the address of the safe.\n Since the `estimateGas` function includes refunds, call this method to get an estimated of the costs that are deducted from the safe with `execTransactionAndPaySubmitter`\n @param to Destination address of Safe transaction.\n @param value Ether value of Safe transaction.\n @param data Data payload of Safe transaction.\n @param operation Operation type of Safe transaction.\n @return Estimate without refunds and overhead fees (base transaction and payload data gas costs)." ,
2018-08-20 07:59:16 +00:00
"id" : 410 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-08-20 07:59:16 +00:00
"id" : 373 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 372 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1764 ,
"src" : "4563:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-08-20 07:59:16 +00:00
"src" : "4563:10:5"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "requiredTxGas" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 371 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 364 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4475:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 363 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4475:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 366 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4487:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 365 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4487:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 368 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4502:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 367 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4502:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 370 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4514:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 369 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "4514:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4474:65:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 376 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 375 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 410 ,
"src" : "4591:7:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 374 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "4591:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4590:9:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "4452:523:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 469 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "5068:519:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-08-20 07:59:16 +00:00
418
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 418 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5130:17:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 417 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5130:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 422 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 420 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5158:1:5" ,
2018-05-31 13:01:02 +00:00
"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"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 419 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-08-20 07:59:16 +00:00
"src" : "5150:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 421 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5150:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5130:30:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 424 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5170:20:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 423 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5170:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 425 ,
2018-05-31 13:01:02 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5170:20:5"
2018-05-31 13:01:02 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 427 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5200:9:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 426 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5200:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 428 ,
2018-05-31 13:01:02 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5200:9:5"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 467 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "5293:288:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 445 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 439 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5307:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 441 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 412 ,
"src" : "5333:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 442 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 414 ,
"src" : "5341:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 443 ,
2018-06-20 08:09:14 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5353:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 440 ,
2018-06-20 08:09:14 +00:00
"name" : "recoverKey" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1805 ,
"src" : "5322:10:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_function_internal_pure$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_address_$" ,
"typeString" : "function (bytes32,bytes memory,uint256) pure returns (address)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 444 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5322:33:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5307:48:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 446 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5307:48:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 452 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 448 ,
2018-05-31 13:01:02 +00:00
"name" : "owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1194 ,
"src" : "5377:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_address_$" ,
"typeString" : "mapping(address => address)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 450 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 449 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5384:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-08-20 07:59:16 +00:00
"src" : "5377:20:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 451 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5401:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "5377:25:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "5369676e6174757265206e6f742070726f7669646564206279206f776e6572" ,
2018-08-20 07:59:16 +00:00
"id" : 453 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5404:33:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_09247dae670daab7cf1923d3334eea07c14df3c0a8f5233960935c63f47104a9" ,
"typeString" : "literal_string \"Signature not provided by owner\""
} ,
"value" : "Signature not provided by owner"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_09247dae670daab7cf1923d3334eea07c14df3c0a8f5233960935c63f47104a9" ,
"typeString" : "literal_string \"Signature not provided by owner\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 447 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "5369:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 454 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5369:69:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 455 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5369:69:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-08-20 07:59:16 +00:00
"id" : 459 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 457 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5460:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 458 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 418 ,
"src" : "5475:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5460:24:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "5369676e61747572657320617265206e6f74206f726465726564206279206f776e65722061646472657373" ,
2018-08-20 07:59:16 +00:00
"id" : 460 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5486:45:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_597a123a1bc14bc9690387ae0fec99721cc18eefa85fa2531a7593a762444235" ,
"typeString" : "literal_string \"Signatures are not ordered by owner address\""
} ,
"value" : "Signatures are not ordered by owner address"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_597a123a1bc14bc9690387ae0fec99721cc18eefa85fa2531a7593a762444235" ,
"typeString" : "literal_string \"Signatures are not ordered by owner address\""
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 456 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
"src" : "5452:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 461 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "5452:80:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 462 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5452:80:5"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 465 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 463 ,
2018-05-31 13:01:02 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 418 ,
"src" : "5546:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 464 ,
2018-05-31 13:01:02 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 424 ,
"src" : "5558:12:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5546:24:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 466 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5546:24:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-08-20 07:59:16 +00:00
"id" : 435 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 433 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5273:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 434 ,
2018-05-31 13:01:02 +00:00
"name" : "threshold" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1198 ,
"src" : "5277:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"src" : "5273:13:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 468 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 431 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 429 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5266:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 430 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-08-20 07:59:16 +00:00
"src" : "5270:1:5" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-08-20 07:59:16 +00:00
"src" : "5266:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 432 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5266:5:5"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 437 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-08-20 07:59:16 +00:00
"src" : "5288:3:5" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 436 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 427 ,
"src" : "5288:1:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 438 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5288:3:5"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "5261:320:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-08-20 07:59:16 +00:00
"id" : 470 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "checkHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 415 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 412 ,
2018-06-20 08:09:14 +00:00
"name" : "txHash" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5000:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 411 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5000:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 414 ,
2018-06-20 08:09:14 +00:00
"name" : "signatures" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 470 ,
"src" : "5016:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 413 ,
2018-06-20 08:09:14 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "5016:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-20 08:09:14 +00:00
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "4999:34:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 416 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-08-20 07:59:16 +00:00
"src" : "5068:0:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "4981:606:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 527 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "6511:302:5" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
2018-08-20 07:59:16 +00:00
"assignments" : [
494
] ,
"declarations" : [
{
"constant" : false ,
"id" : 494 ,
"name" : "safeTxHash" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 528 ,
"src" : "6521:18:5" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 493 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "6521:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 512 ,
"initialValue" : {
2018-05-31 13:01:02 +00:00
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 498 ,
"name" : "SAFE_TX_TYPEHASH" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 231 ,
"src" : "6576:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 499 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 472 ,
"src" : "6594:2:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 500 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 474 ,
"src" : "6598:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"arguments" : [
{
"argumentTypes" : null ,
"id" : 502 ,
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 476 ,
"src" : "6615:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 501 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "6605:9:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 503 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6605:15:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 504 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 478 ,
"src" : "6622:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 505 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 480 ,
"src" : "6633:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 506 ,
2018-05-31 13:01:02 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 482 ,
"src" : "6644:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 507 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 484 ,
"src" : "6653:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 508 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 486 ,
"src" : "6663:8:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 509 ,
2018-05-31 13:01:02 +00:00
"name" : "_nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 488 ,
"src" : "6673:6:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
2018-05-31 13:01:02 +00:00
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 496 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
"src" : "6565:3:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 497 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encode" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "6565:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
"id" : 510 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6565:115:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 495 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "6542:9:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 511 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6542:148:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "6521:169:5"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30783139" ,
"id" : 517 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "6752:4:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_25_by_1" ,
"typeString" : "int_const 25"
} ,
"value" : "0x19"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_25_by_1" ,
"typeString" : "int_const 25"
}
] ,
"id" : 516 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "6747:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
"id" : 518 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6747:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "31" ,
"id" : 520 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "6764:1:5" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
} ,
"value" : "1"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
}
] ,
"id" : 519 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "6759:4:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
"id" : 521 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "6759:7:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"id" : 522 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "6768:15:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"id" : 523 ,
"name" : "safeTxHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 494 ,
"src" : "6785:10:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 514 ,
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3815 ,
"src" : "6730:3:5" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
"id" : 515 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodePacked" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-08-20 07:59:16 +00:00
"src" : "6730:16:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 524 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "6730:66:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 513 ,
2018-05-31 13:01:02 +00:00
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3822 ,
"src" : "6707:9:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 525 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "6707:99:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-08-20 07:59:16 +00:00
"functionReturnParameters" : 492 ,
"id" : 526 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-08-20 07:59:16 +00:00
"src" : "6700:106:5"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns hash to be signed by owners.\n @param to Destination address.\n @param value Ether value.\n @param data Data payload.\n @param operation Operation type.\n @param safeTxGas Fas that should be used for the safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction.\n @param gasPrice Maximum gas price that should be used for this transaction.\n @param gasToken Token address (or 0 if ETH) that is used for the payment.\n @param _nonce Transaction nonce.\n @return Transaction hash." ,
2018-08-20 07:59:16 +00:00
"id" : 528 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "getTransactionHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 489 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 472 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6224:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 471 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6224:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 474 ,
2018-05-31 13:01:02 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6245:13:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 473 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6245:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 476 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6269:10:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 475 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6269:5:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 478 ,
2018-05-31 13:01:02 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6290:24:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 477 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-28 17:13:59 +00:00
"referencedDeclaration" : 29 ,
2018-08-20 07:59:16 +00:00
"src" : "6290:14:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_enum$_Operation_$29" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 480 ,
2018-05-31 13:01:02 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6325:17:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 479 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6325:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 482 ,
2018-05-31 13:01:02 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6353:15:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 481 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6353:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 484 ,
2018-05-31 13:01:02 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6379:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 483 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6379:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 486 ,
2018-05-31 13:01:02 +00:00
"name" : "gasToken" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6406:16:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 485 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6406:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 488 ,
2018-05-31 13:01:02 +00:00
"name" : "_nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6432:14:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 487 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6432:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "6214:238:5"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 492 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 491 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 528 ,
"src" : "6498:7:5" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 490 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "6498:7:5" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "6497:9:5"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 529 ,
"src" : "6187:626:5" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 530 ,
"src" : "483:6332:5"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "0:6816:5"
2018-05-31 13:01:02 +00:00
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.4.24+commit.e67f0147.Emscripten.clang"
} ,
"networks" : {
2018-06-29 11:23:01 +00:00
"4" : {
2018-06-26 11:48:05 +00:00
"events" : { } ,
"links" : { } ,
2018-08-20 07:59:16 +00:00
"address" : "0xaaccf4196ff4fe89da8251a9dfedd40400fb4cbc" ,
"transactionHash" : "0x19ffaf24e1f95232c9cc086d410e35eafa280967778800a1bbffcd5e99f085a8"
2018-07-03 11:14:01 +00:00
} ,
2018-08-20 07:59:16 +00:00
"1534750848541" : {
2018-07-03 11:14:01 +00:00
"events" : { } ,
"links" : { } ,
2018-08-20 07:59:16 +00:00
"address" : "0xfc628dd79137395f3c9744e33b1c5de554d94882" ,
"transactionHash" : "0xb3bdadd14f16f8ed80bbef04d5c539f7b41fc170a1356d295290d04cf62f2c2a"
2018-05-31 13:01:02 +00:00
}
} ,
2018-06-29 11:23:01 +00:00
"schemaVersion" : "2.0.0" ,
2018-08-20 07:59:16 +00:00
"updatedAt" : "2018-08-20T07:50:29.713Z"
2018-05-31 13:01:02 +00:00
}