2018-05-10 11:12:13 +00:00
{
"contractName" : "GnosisSafePersonalEdition" ,
"abi" : [
{
"constant" : true ,
"inputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "owner" ,
"type" : "address"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "isOwner" ,
2018-05-10 11:12:13 +00:00
"outputs" : [
{
"name" : "" ,
2018-05-16 13:46:33 +00:00
"type" : "bool"
2018-05-10 11:12:13 +00:00
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "to" ,
2018-05-10 11:12:13 +00:00
"type" : "address"
} ,
{
2018-05-16 13:46:33 +00:00
"name" : "value" ,
"type" : "uint256"
} ,
2018-05-10 11:12:13 +00:00
{
2018-05-16 13:46:33 +00:00
"name" : "data" ,
"type" : "bytes"
} ,
2018-05-10 11:12:13 +00:00
{
2018-05-16 13:46:33 +00:00
"name" : "operation" ,
2018-05-10 11:12:13 +00:00
"type" : "uint8"
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "execTransactionFromModule" ,
2018-05-10 11:12:13 +00:00
"outputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "success" ,
2018-05-10 11:12:13 +00:00
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "module" ,
"type" : "address"
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "enableModule" ,
2018-05-10 11:12:13 +00:00
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "_masterCopy" ,
"type" : "address"
}
] ,
"name" : "changeMasterCopy" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"inputs" : [ ] ,
"name" : "SENTINEL_MODULES" ,
2018-05-10 11:12:13 +00:00
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "prevOwner" ,
"type" : "address"
2018-05-10 11:12:13 +00:00
} ,
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
}
] ,
"name" : "removeOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-05-16 13:46:33 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "SENTINEL_OWNERS" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-10 11:12:13 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "_owners" ,
"type" : "address[]"
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
} ,
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "data" ,
"type" : "bytes"
}
] ,
"name" : "setup" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"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"
} ,
2018-05-16 13:46:33 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getModules" ,
"outputs" : [
{
"name" : "" ,
"type" : "address[]"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-10 11:12:13 +00:00
{
"constant" : false ,
"inputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "_threshold" ,
2018-05-10 11:12:13 +00:00
"type" : "uint8"
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "changeThreshold" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
2018-05-10 11:12:13 +00:00
{
2018-05-16 13:46:33 +00:00
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "addOwnerWithThreshold" ,
"outputs" : [ ] ,
2018-05-10 11:12:13 +00:00
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
2018-05-16 13:46:33 +00:00
"constant" : false ,
"inputs" : [
2018-05-10 11:12:13 +00:00
{
2018-05-16 13:46:33 +00:00
"name" : "prevModule" ,
"type" : "address"
} ,
{
"name" : "module" ,
"type" : "address"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "disableModule" ,
"outputs" : [ ] ,
2018-05-10 11:12:13 +00:00
"payable" : false ,
2018-05-16 13:46:33 +00:00
"stateMutability" : "nonpayable" ,
2018-05-10 11:12:13 +00:00
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
2018-05-16 13:46:33 +00:00
"name" : "prevOwner" ,
"type" : "address"
} ,
{
"name" : "oldOwner" ,
"type" : "address"
} ,
{
"name" : "newOwner" ,
"type" : "address"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "swapOwner" ,
2018-05-10 11:12:13 +00:00
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-05-16 13:46:33 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getThreshold" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint8"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-10 11:12:13 +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 ,
"inputs" : [ ] ,
"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" : "v" ,
"type" : "uint8[]"
} ,
{
"name" : "r" ,
"type" : "bytes32[]"
} ,
{
"name" : "s" ,
"type" : "bytes32[]"
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "execPayTransaction" ,
2018-05-10 11:12:13 +00:00
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "executionGas" ,
"type" : "uint256"
} ,
{
"name" : "dataGas" ,
"type" : "uint256"
}
] ,
"name" : "totalGasCosts" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "pure" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "requiredTxGas" ,
2018-05-10 11:12:13 +00:00
"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" : "_nonce" ,
"type" : "uint256"
}
] ,
"name" : "getTransactionHash" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
}
] ,
2018-05-16 13:46:33 +00:00
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 50612 b 38806100206000396000 f 300608060405260043610610128576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680630 a 51 b 0 1 c 1461012 a 5780632 f 54 b f 6e146102 b 1578063468721 a 71461030 c 5780634 d b 5 d 0 39146103 c 4578063610 b 5925146104 a 85780637 d e 7 e d e f 146104 e b 57806385e332 c d 1461052e57806386040 a a 9146105855780638 c f f 6355146105 f 5578063 a 0 4222e11461064 c 578063 a 0e67 e 2 b 14610725578063 a 3 f 4 d f 7e14610791578063 a d 8 a 0 45014610821578063 a f f e d 0e01461086 c 578063 b 2494 d f 314610897578063 b 7 f 3358 d 14610903578063 b 91 a 667 f 14610933578063 c 4 c a 3 a 9 c 14610983578063e009 c f d e 14610 a 37578063e318 b 52 b 14610 a 9 a 578063e75235 b 814610 b 1 d 578063 f f a 1 a d 7414610 b 4e575 b 0 0 5 b 34801561013657600080 f d 5 b 506102 a f 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 169060200190929190803590602001909291908035906020019092919080359060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050610 b d e 565 b 0 0 5 b 3480156102 b d 57600080 f d 5 b 506102 f 2600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610 c c b 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561031857600080 f d 5 b 506103 a a 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 169060200190929190505050610 d 4 d 565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156103 d 0 57600080 f d 5 b 5061048 a 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 16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610 d e a 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 3480156104 b 457600080 f d 5 b 506104e9600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050611021565 b 0 0 5 b 3480156104 f 757600080 f d 5 b 5061052 c 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 16906020019092919050505061129e565 b 0 0 5 b 34801561053 a 57600080 f d 5 b 50610543611341565 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 34801561059157600080 f d 5 b 506105 f 3600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803560 f f 169060200190929190505050611346565 b 0 0 5 b 34801561060157600080 f d 5 b 5061060 a 6115 c c 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 34801561065857600080 f d 5 b 5061072360048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803560 f f 169060200190929190803573 f f f f f f f f f f f f f f f f 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 1602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506115 d 1565 b 0 0 5 b 34801561073157600080 f d 5 b 5061073 a 6115 e b 565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561077 d 578082015181840152602081019050610762565 b 505050509050019250505060405180910390 f 35 b 34801561079 d 57600080 f d 5 b 506107 a 6611786565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107e657808201
"deployedBytecode" : " 0 x 608060405260043610610128576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680630 a 51 b 0 1 c 1461012 a 5780632 f 54 b f 6e146102 b 1578063468721 a 71461030 c 5780634 d b 5 d 0 39146103 c 4578063610 b 5925146104 a 85780637 d e 7 e d e f 146104 e b 57806385e332 c d 1461052e57806386040 a a 9146105855780638 c f f 6355146105 f 5578063 a 0 4222e11461064 c 578063 a 0e67 e 2 b 14610725578063 a 3 f 4 d f 7e14610791578063 a d 8 a 0 45014610821578063 a f f e d 0e01461086 c 578063 b 2494 d f 314610897578063 b 7 f 3358 d 14610903578063 b 91 a 667 f 14610933578063 c 4 c a 3 a 9 c 14610983578063e009 c f d e 14610 a 37578063e318 b 52 b 14610 a 9 a 578063e75235 b 814610 b 1 d 578063 f f a 1 a d 7414610 b 4e575 b 0 0 5 b 34801561013657600080 f d 5 b 506102 a f 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 169060200190929190803590602001909291908035906020019092919080359060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050610 b d e 565 b 0 0 5 b 3480156102 b d 57600080 f d 5 b 506102 f 2600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610 c c b 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561031857600080 f d 5 b 506103 a a 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 169060200190929190505050610 d 4 d 565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156103 d 0 57600080 f d 5 b 5061048 a 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 16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610 d e a 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 3480156104 b 457600080 f d 5 b 506104e9600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050611021565 b 0 0 5 b 3480156104 f 757600080 f d 5 b 5061052 c 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 16906020019092919050505061129e565 b 0 0 5 b 34801561053 a 57600080 f d 5 b 50610543611341565 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 34801561059157600080 f d 5 b 506105 f 3600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803560 f f 169060200190929190505050611346565 b 0 0 5 b 34801561060157600080 f d 5 b 5061060 a 6115 c c 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 34801561065857600080 f d 5 b 5061072360048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803560 f f 169060200190929190803573 f f f f f f f f f f f f f f f f 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 1602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506115 d 1565 b 0 0 5 b 34801561073157600080 f d 5 b 5061073 a 6115 e b 565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561077 d 578082015181840152602081019050610762565 b 505050509050019250505060405180910390 f 35 b 34801561079 d 57600080 f d 5 b 506107 a 6611786565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107e65780820151818401526020810190506107 c b 565 b 50505050905090810190601 f
"sourceMap" : "314:5262:2:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;314:5262:2;;;;;;;" ,
"deployedSourceMap" : " 314 : 5262 : 2 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1443 : 1003 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1443 : 1003 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4841 : 129 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4841 : 129 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2522 : 377 : 6 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2522 : 377 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5150 : 424 : 2 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5150 : 424 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1235 : 391 : 6 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1235 : 391 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 208 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 626 : 208 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 499 : 55 : 6 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 499 : 55 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2776 : 573 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2776 : 573 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 287 : 54 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 287 : 54 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 693 : 301 : 1 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 693 : 301 : 1 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5052 : 458 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5052 : 458 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 5052 : 458 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 382 : 60 : 2 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 382 : 60 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 382 : 60 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2878 : 209 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2878 : 209 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 644 : 20 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 644 : 20 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4423 : 738 : 6 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4423 : 738 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 4423 : 738 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4398 : 318 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4398 : 318 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1906 : 528 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1906 : 528 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3786 : 299 : 2 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3786 : 299 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1887 : : 6 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1887 : 299 : 6 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3683 : 526 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3683 : 526 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4722 : 113 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4722 : 113 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 448 : 40 : 2 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 448 : 40 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 448 : 40 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1443 : 1003 ; 1748 : 16 ; 2137 ; 1767 : 9 ; 1748 : 28 ; ; 1786 : 103 ; 1796 : 83 ; 1815 : 2 ; 1819 : 5 ; 1826 : 4 ; 1832 : 9 ; 1843 ; 1854 : 7 ; 1863 : 8 ; 1873 : 5 ; ; 1796 : 18 ; : 83 : : i ; : : : - ; 1881 : 1 ; 1884 ; 1887 ; 1786 : 9 ; : 103 : : i ; : : : - ; 1950 : 5 ; ; : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; 2008 : 9 ; 602 : 5 ; 1975 : 9 ; : 29 ; : 42 ; ; 1967 : 51 ; ; ; ; ; ; ; ; 2033 : 46 ; 2041 : 2 ; 2045 : 5 ; 2052 : 4 ; 2058 : 9 ; 2069 ; 2033 : 7 ; : 46 : : i ; : : : - ; 2032 : 47 ; 2028 : 100 ; ; ; 2100 : 17 ; ; ; ; ; ; ; ; ; ; 2028 : 100 ; 2156 : 44 ; 2181 : 9 ; 2170 : 8 ; : 20 ; 2192 : 7 ; 2156 : 13 ; : 44 : : i ; : : : - ; 2137 : 63 ; ; 2400 : 9 ; : 18 ; ; : 39 ; 2430 : 8 ; 2419 ; : 19 ; 2400 : 39 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2400 : 39 : 2 ; 1443 : 1003 ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 4841 : 129 : 7 : - ; 4918 : 4 ; 4962 : 1 ; 4945 : 6 ; : 13 ; 4952 : 5 ; 4945 : 13 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 18 ; ; ; ; 4938 : 25 ; ; 4
"source" : "pragma solidity 0.4.23;\nimport \"./GnosisSafe.sol\";\nimport \"./MasterCopy.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>\ncontract GnosisSafePersonalEdition is MasterCopy, GnosisSafe {\n\n string public constant NAME = \"Gnosis Safe Personal Edition\";\n string public constant VERSION = \"0.0.1\" ; \ n \ n u i n t 256 i n t e r n a l c o n s t a n t B A S E _ T X _ G A S _ C O S T S = 21000 ; \ n u i n t 256 i n t e r n a l c o n s t a n t P A Y M E N T _ G A S _ C O S T S = 11000 ; \ n \ n e v e n t E x e c u t i o n F a i l e d ( ) ; \ n \ n u i n t 256 p u b l i c n o n c e ; \ n \ n /// @dev Allows to execute a Safe transaction confirmed by required number of owners.\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.\n /// @param gasPrice Gas price that should be used for the payment calculation.\n /// @param v Array of signature V values sorted by owner addresses.\n /// @param r Array of signature R values sorted by owner addresses.\n /// @param s Array of signature S values sorted by owner addresses.\n function execPayTransaction(\n address to, \n uint256 value, \n bytes data, \n Enum.Operation operation, \n uint256 safeTxGas,\n uint256 dataGas,\n uint256 gasPrice,\n uint8[] v, \n bytes32[] r, \n bytes32[] s\n )\n public\n {\n uint256 startGas = gasleft();\n checkHash(getTransactionHash(to, value, data, operation, safeTxGas, dataGas, gasPrice, nonce), v, r, s);\n // Increase nonce and execute transaction.\n nonce++;\n require(gasleft() - PAYMENT_GAS_COSTS >= safeTxGas);\n if (!execute(to, value, data, operation, safeTxGas)) {\n emit ExecutionFailed();\n }\n uint256 gasCosts = totalGasCosts(startGas - gasleft(), dataGas);\n\n // We transfer the calculated tx costs to the tx.origin to avoid sending it to intermediate contracts that have made calls\n // solium-disable-next-line security/no-tx-origin\n tx.origin.transfer(gasCosts * gasPrice);\n }\n\n /// @dev Calculates the total gas costs for a safe transaction with the gas costs for the execution of the transaction.\n /// @param executionGas Gas costs for the execution of the safe transaction.\n /// @param dataGas Gas costs for data used to trigger the safe transaction.\n /// @return Total gas costs for the execution (this includes gas costs for the payment to tx.origin, base transaction and payload data).\n function totalGasCosts(uint256 executionGas, uint256 dataGas) \n public \n pure\n returns (uint256) \n {\n return executionGas + dataGas + PAYMENT_GAS_COSTS + BASE_TX_GAS_COSTS;\n }\n\n /// @dev Allows to estimate a Safe transaction. \n /// This method can only be used by the safe itself in a transaction. 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 `execPayTransaction`\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).\n function requiredTxGas(address to, uint256 value, bytes data, Enum.Operation operation)\n public\n authorized\n returns (uint256)\n {\n uint256 startGas = gasleft();\n re
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
324
2018-05-10 11:12:13 +00:00
]
} ,
2018-05-16 13:46:33 +00:00
"id" : 325 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-05-16 13:46:33 +00:00
"id" : 41 ,
2018-05-10 11:12:13 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
2018-05-16 13:46:33 +00:00
"src" : "0:23:2"
2018-05-10 11:12:13 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"file" : "./GnosisSafe.sol" ,
2018-05-16 13:46:33 +00:00
"id" : 42 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ImportDirective" ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"sourceUnit" : 40 ,
"src" : "24:26:2" ,
2018-05-10 11:12:13 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/MasterCopy.sol" ,
"file" : "./MasterCopy.sol" ,
2018-05-16 13:46:33 +00:00
"id" : 43 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ImportDirective" ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"sourceUnit" : 581 ,
"src" : "51:26:2" ,
2018-05-10 11:12:13 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 44 ,
2018-05-10 11:12:13 +00:00
"name" : "MasterCopy" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 580 ,
"src" : "352:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_MasterCopy_$580" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract MasterCopy"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 45 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-05-16 13:46:33 +00:00
"src" : "352:10:2"
2018-05-10 11:12:13 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 46 ,
2018-05-10 11:12:13 +00:00
"name" : "GnosisSafe" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 39 ,
"src" : "364:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafe_$39" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafe"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 47 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-05-16 13:46:33 +00:00
"src" : "364:10:2"
2018-05-10 11:12:13 +00:00
}
] ,
"contractDependencies" : [
2018-05-16 13:46:33 +00:00
39 ,
580 ,
971 ,
1343 ,
1359
2018-05-10 11:12:13 +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>" ,
"fullyImplemented" : true ,
2018-05-16 13:46:33 +00:00
"id" : 324 ,
2018-05-10 11:12:13 +00:00
"linearizedBaseContracts" : [
2018-05-16 13:46:33 +00:00
324 ,
39 ,
1343 ,
971 ,
580 ,
1359
2018-05-10 11:12:13 +00:00
] ,
"name" : "GnosisSafePersonalEdition" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 50 ,
2018-05-10 11:12:13 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "382:60:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 48 ,
2018-05-10 11:12:13 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "382:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "476e6f736973205361666520506572736f6e616c2045646974696f6e" ,
2018-05-16 13:46:33 +00:00
"id" : 49 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "412:30:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 53 ,
2018-05-10 11:12:13 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "448:40:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 51 ,
2018-05-10 11:12:13 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "448:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-05-16 13:46:33 +00:00
"id" : 52 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "481:7:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 56 ,
2018-05-10 11:12:13 +00:00
"name" : "BASE_TX_GAS_COSTS" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "499:51:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 54 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "499:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "3231303030" ,
2018-05-16 13:46:33 +00:00
"id" : 55 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "545:5:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_21000_by_1" ,
"typeString" : "int_const 21000"
} ,
"value" : "21000"
} ,
"visibility" : "internal"
} ,
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 59 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "556:51:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 57 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "556:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"hexValue" : "3131303030" ,
"id" : 58 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "602:5:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_rational_11000_by_1" ,
"typeString" : "int_const 11000"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"value" : "11000"
2018-05-10 11:12:13 +00:00
} ,
"visibility" : "internal"
} ,
{
"anonymous" : false ,
"documentation" : null ,
2018-05-16 13:46:33 +00:00
"id" : 61 ,
2018-05-10 11:12:13 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 60 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "635:2:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"src" : "614:24:2"
2018-05-10 11:12:13 +00:00
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 63 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "644:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 62 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "644:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 155 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "1738:708:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
90
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 90 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1748:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 89 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1748:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 93 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 91 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "1767:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 92 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1767:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1748:28:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 96 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 65 ,
"src" : "1815:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 97 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 67 ,
"src" : "1819:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 98 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 69 ,
"src" : "1826:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 99 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 71 ,
"src" : "1832:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 100 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "1843:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 101 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 75 ,
"src" : "1854:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 102 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 77 ,
"src" : "1863:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 103 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 63 ,
"src" : "1873:5:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 95 ,
2018-05-10 11:12:13 +00:00
"name" : "getTransactionHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 323 ,
"src" : "1796:18:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_view$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256,uint256,uint256,uint256) view returns (bytes32)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 104 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1796:83:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 105 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 80 ,
"src" : "1881:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 106 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 83 ,
"src" : "1884:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 107 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 86 ,
"src" : "1887:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
} ,
{
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
} ,
{
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 94 ,
2018-05-10 11:12:13 +00:00
"name" : "checkHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 283 ,
"src" : "1786:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$_t_bytes32_$_t_array$_t_uint8_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$__$" ,
"typeString" : "function (bytes32,uint8[] memory,bytes32[] memory,bytes32[] memory) view"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 108 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1786:103:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 109 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1786:103:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 111 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-16 13:46:33 +00:00
"src" : "1950:7:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 110 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 63 ,
"src" : "1950:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 112 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1950:7:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 119 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 117 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 114 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "1975:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 115 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1975:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 116 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 59 ,
"src" : "1987:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "1975:29:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 118 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "2008:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "1975:42:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 113 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "1967:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 120 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1967:51:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 121 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1967:51:2"
2018-05-10 11:12:13 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 129 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
2018-05-16 13:46:33 +00:00
"src" : "2032:47:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 123 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 65 ,
"src" : "2041:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 124 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 67 ,
"src" : "2045:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 125 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 69 ,
"src" : "2052:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 126 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 71 ,
"src" : "2058:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 127 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "2069:9:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 122 ,
2018-05-10 11:12:13 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 860 ,
"src" : "2033:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$returns$_t_bool_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 128 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2033:46:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-05-16 13:46:33 +00:00
"id" : 134 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "IfStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2028:100:2" ,
2018-05-10 11:12:13 +00:00
"trueBody" : {
2018-05-16 13:46:33 +00:00
"id" : 133 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "2081:47:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 130 ,
2018-05-10 11:12:13 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 61 ,
"src" : "2100:15:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 131 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2100:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 132 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "EmitStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2095:22:2"
2018-05-10 11:12:13 +00:00
}
]
}
} ,
{
"assignments" : [
2018-05-16 13:46:33 +00:00
136
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 136 ,
2018-05-10 11:12:13 +00:00
"name" : "gasCosts" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "2137:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 135 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2137:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 144 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 141 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 138 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 90 ,
"src" : "2170:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 139 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "2181:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 140 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2181:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "2170:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 142 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 75 ,
"src" : "2192:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 137 ,
2018-05-10 11:12:13 +00:00
"name" : "totalGasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 174 ,
"src" : "2156:13:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 143 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2156:44:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2137:63:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 152 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 150 ,
2018-05-10 11:12:13 +00:00
"name" : "gasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 136 ,
"src" : "2419:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "*" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 151 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 77 ,
"src" : "2430:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "2419:19:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 145 ,
2018-05-10 11:12:13 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2408 ,
"src" : "2400:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 148 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-16 13:46:33 +00:00
"src" : "2400:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 149 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "transfer" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-16 13:46:33 +00:00
"src" : "2400:18:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_transfer_nonpayable$_t_uint256_$returns$__$" ,
"typeString" : "function (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 153 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2400:39:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 154 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2400:39:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : "@dev Allows to execute a Safe transaction confirmed by required number of owners.\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.\n @param gasPrice Gas price that should be used for the payment calculation.\n @param v Array of signature V values sorted by owner addresses.\n @param r Array of signature R values sorted by owner addresses.\n @param s Array of signature S values sorted by owner addresses." ,
2018-05-16 13:46:33 +00:00
"id" : 156 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
2018-05-16 13:46:33 +00:00
"name" : "execPayTransaction" ,
2018-05-10 11:12:13 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 87 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 65 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1480:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 64 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1480:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 67 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1501:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 66 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1501:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 69 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1525:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 68 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1525:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 71 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1546:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 70 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "1546:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 73 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1581:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 72 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1581:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 75 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1608:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 74 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1608:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 77 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1633:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 76 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1633:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 80 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1659:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 78 ,
2018-05-10 11:12:13 +00:00
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1659:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 79 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1659:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_storage_ptr" ,
"typeString" : "uint8[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 83 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1679:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 81 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1679:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 82 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1679:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 86 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1701:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 84 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1701:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 85 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1701:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "1470:248:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 88 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "1738:0:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "1443:1003:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 173 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "3001:86:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 171 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 169 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 167 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 165 ,
2018-05-10 11:12:13 +00:00
"name" : "executionGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 158 ,
"src" : "3018:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 166 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 160 ,
"src" : "3033:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:22:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 168 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 59 ,
"src" : "3043:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:42:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 170 ,
2018-05-10 11:12:13 +00:00
"name" : "BASE_TX_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 56 ,
"src" : "3063:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:62:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 164 ,
"id" : 172 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "3011:69:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : "@dev Calculates the total gas costs for a safe transaction with the gas costs for the execution of the transaction.\n @param executionGas Gas costs for the execution of the safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction.\n @return Total gas costs for the execution (this includes gas costs for the payment to tx.origin, base transaction and payload data)." ,
2018-05-16 13:46:33 +00:00
"id" : 174 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "totalGasCosts" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 161 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 158 ,
2018-05-10 11:12:13 +00:00
"name" : "executionGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2901:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 157 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2901:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 160 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2923:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 159 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2923:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "2900:39:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 164 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 163 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2987:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 162 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2987:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "2986:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "2878:209:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "pure" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 210 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "3938:147:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
190
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 190 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3948:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 189 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3948:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 193 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 191 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "3967:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 192 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3967:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "3948:28:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 196 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 176 ,
"src" : "4002:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 197 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 178 ,
"src" : "4006:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 198 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 180 ,
"src" : "4013:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 199 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 182 ,
"src" : "4019:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 200 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "4030:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 201 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4030:9:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 195 ,
2018-05-10 11:12:13 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 860 ,
"src" : "3994:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$returns$_t_bool_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 202 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3994:46:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 194 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "3986:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 203 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3986:55:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 204 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "3986:55:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 208 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 205 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 190 ,
"src" : "4058:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 206 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "4069:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 207 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4069:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4058:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 188 ,
"id" : 209 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "4051:27:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
2018-05-16 13:46:33 +00:00
"documentation" : "@dev Allows to estimate a Safe transaction. \n This method can only be used by the safe itself in a transaction. 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 `execPayTransaction`\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)." ,
"id" : 211 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-05-16 13:46:33 +00:00
"id" : 185 ,
2018-05-10 11:12:13 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 184 ,
2018-05-10 11:12:13 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 1358 ,
"src" : "3897:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-05-16 13:46:33 +00:00
"src" : "3897:10:2"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "requiredTxGas" ,
2018-05-10 11:12:13 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 183 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 176 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3809:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 175 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3809:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 178 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3821:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 177 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3821:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 180 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3836:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 179 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3836:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 182 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3848:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 181 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "3848:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "3808:65:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 188 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 187 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3925:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 186 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3925:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "3924:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "3786:299:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 282 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "4195:437:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
226
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 226 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4257:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 225 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4257:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 230 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 228 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "4285:1:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 227 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "4277:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-05-16 13:46:33 +00:00
"id" : 229 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4277:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4257:30:2"
2018-05-10 11:12:13 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 232 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4297:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 231 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4297:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 233 ,
2018-05-10 11:12:13 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4297:20:2"
2018-05-10 11:12:13 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 235 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4327:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 234 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4327:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 236 ,
2018-05-10 11:12:13 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4327:9:2"
2018-05-10 11:12:13 +00:00
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 280 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "4420:206:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 260 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 247 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4434:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 249 ,
2018-05-10 11:12:13 +00:00
"name" : "hash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 213 ,
"src" : "4459:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 250 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 216 ,
"src" : "4465:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 252 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 251 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4467:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4465:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 253 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 219 ,
"src" : "4471:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 255 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 254 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4473:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4471:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 256 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 222 ,
"src" : "4477:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 258 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 257 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4479:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4477:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 248 ,
2018-05-10 11:12:13 +00:00
"name" : "ecrecover" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2388 ,
"src" : "4449:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$" ,
"typeString" : "function (bytes32,uint8,bytes32,bytes32) pure returns (address)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 259 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4449:33:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4434:48:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 261 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4434:48:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"id" : 267 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
2018-05-10 11:12:13 +00:00
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"baseExpression" : {
"argumentTypes" : null ,
"id" : 263 ,
"name" : "owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 985 ,
"src" : "4504:6:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_address_$" ,
"typeString" : "mapping(address => address)"
}
} ,
"id" : 265 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 264 ,
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 232 ,
"src" : "4511:12:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4504:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 266 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4528:1:2" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "4504:25:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 262 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "4496:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 268 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4496:34:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 269 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4496:34:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-05-16 13:46:33 +00:00
"id" : 273 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 271 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4552:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 272 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 226 ,
"src" : "4567:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4552:24:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 270 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "4544:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 274 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4544:33:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 275 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4544:33:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 278 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 276 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 226 ,
"src" : "4591:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 277 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4603:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4591:24:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 279 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4591:24:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 243 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 241 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4400:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 242 ,
2018-05-10 11:12:13 +00:00
"name" : "threshold" ,
"nodeType" : "Identifier" ,
2018-05-16 13:46:33 +00:00
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 989 ,
"src" : "4404:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4400:13:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 281 ,
2018-05-10 11:12:13 +00:00
"initializationExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 239 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 237 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4393:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 238 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "4397:1:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-05-16 13:46:33 +00:00
"src" : "4393:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 240 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4393:5:2"
2018-05-10 11:12:13 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 245 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-16 13:46:33 +00:00
"src" : "4415:3:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 244 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4415:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 246 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4415:3:2"
2018-05-10 11:12:13 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4388:238:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : null ,
2018-05-16 13:46:33 +00:00
"id" : 283 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "checkHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 223 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 213 ,
2018-05-10 11:12:13 +00:00
"name" : "hash" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4110:12:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 212 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4110:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 216 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4124:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 214 ,
2018-05-10 11:12:13 +00:00
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4124:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 215 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4124:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_storage_ptr" ,
"typeString" : "uint8[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 219 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4135:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 217 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4135:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 218 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4135:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 222 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4148:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 220 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4148:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 221 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4148:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "4109:51:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 224 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "4195:0:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "4091:541:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 322 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "5448:126:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30783139" ,
2018-05-16 13:46:33 +00:00
"id" : 306 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "5480:4:2" ,
2018-05-10 11:12:13 +00:00
"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"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 305 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "5475:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
2018-05-16 13:46:33 +00:00
"id" : 307 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5475:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 309 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "5492:1:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 308 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "5487:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
2018-05-16 13:46:33 +00:00
"id" : 310 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5487:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 311 ,
2018-05-10 11:12:13 +00:00
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2423 ,
"src" : "5496:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafePersonalEdition_$324" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafePersonalEdition"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 312 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 285 ,
"src" : "5502:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 313 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 287 ,
"src" : "5506:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 314 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 289 ,
"src" : "5513:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 315 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 291 ,
"src" : "5519:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 316 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 293 ,
"src" : "5530:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 317 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 295 ,
"src" : "5541:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 318 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 297 ,
"src" : "5550:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 319 ,
2018-05-10 11:12:13 +00:00
"name" : "_nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 299 ,
"src" : "5560:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafePersonalEdition_$324" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafePersonalEdition"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 304 ,
2018-05-10 11:12:13 +00:00
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2390 ,
"src" : "5465:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 320 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5465:102:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 303 ,
"id" : 321 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "5458:109:2"
2018-05-10 11:12:13 +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 _nonce Transaction nonce.\n @return Transaction hash." ,
2018-05-16 13:46:33 +00:00
"id" : 323 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "getTransactionHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 300 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 285 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5187:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 284 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5187:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 287 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5208:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 286 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5208:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 289 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5232:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 288 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5232:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 291 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5253:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 290 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "5253:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 293 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5288:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 292 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5288:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 295 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5316:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 294 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5316:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 297 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5342:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 296 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5342:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 299 ,
2018-05-10 11:12:13 +00:00
"name" : "_nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5369:14:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 298 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5369:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "5177:212:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 303 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 302 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5435:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 301 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5435:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "5434:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "5150:424:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"src" : "314:5262:2"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "0:5577:2"
2018-05-10 11:12:13 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafePersonalEdition.sol" ,
"exportedSymbols" : {
"GnosisSafePersonalEdition" : [
2018-05-16 13:46:33 +00:00
324
2018-05-10 11:12:13 +00:00
]
} ,
2018-05-16 13:46:33 +00:00
"id" : 325 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-05-16 13:46:33 +00:00
"id" : 41 ,
2018-05-10 11:12:13 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
2018-05-16 13:46:33 +00:00
"src" : "0:23:2"
2018-05-10 11:12:13 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"file" : "./GnosisSafe.sol" ,
2018-05-16 13:46:33 +00:00
"id" : 42 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ImportDirective" ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"sourceUnit" : 40 ,
"src" : "24:26:2" ,
2018-05-10 11:12:13 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/MasterCopy.sol" ,
"file" : "./MasterCopy.sol" ,
2018-05-16 13:46:33 +00:00
"id" : 43 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ImportDirective" ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"sourceUnit" : 581 ,
"src" : "51:26:2" ,
2018-05-10 11:12:13 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 44 ,
2018-05-10 11:12:13 +00:00
"name" : "MasterCopy" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 580 ,
"src" : "352:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_MasterCopy_$580" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract MasterCopy"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 45 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-05-16 13:46:33 +00:00
"src" : "352:10:2"
2018-05-10 11:12:13 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 46 ,
2018-05-10 11:12:13 +00:00
"name" : "GnosisSafe" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 39 ,
"src" : "364:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafe_$39" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafe"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 47 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-05-16 13:46:33 +00:00
"src" : "364:10:2"
2018-05-10 11:12:13 +00:00
}
] ,
"contractDependencies" : [
2018-05-16 13:46:33 +00:00
39 ,
580 ,
971 ,
1343 ,
1359
2018-05-10 11:12:13 +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>" ,
"fullyImplemented" : true ,
2018-05-16 13:46:33 +00:00
"id" : 324 ,
2018-05-10 11:12:13 +00:00
"linearizedBaseContracts" : [
2018-05-16 13:46:33 +00:00
324 ,
39 ,
1343 ,
971 ,
580 ,
1359
2018-05-10 11:12:13 +00:00
] ,
"name" : "GnosisSafePersonalEdition" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 50 ,
2018-05-10 11:12:13 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "382:60:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 48 ,
2018-05-10 11:12:13 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "382:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "476e6f736973205361666520506572736f6e616c2045646974696f6e" ,
2018-05-16 13:46:33 +00:00
"id" : 49 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "412:30:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 53 ,
2018-05-10 11:12:13 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "448:40:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 51 ,
2018-05-10 11:12:13 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "448:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-05-16 13:46:33 +00:00
"id" : 52 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "481:7:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 56 ,
2018-05-10 11:12:13 +00:00
"name" : "BASE_TX_GAS_COSTS" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "499:51:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 54 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "499:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "3231303030" ,
2018-05-16 13:46:33 +00:00
"id" : 55 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "545:5:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_21000_by_1" ,
"typeString" : "int_const 21000"
} ,
"value" : "21000"
} ,
"visibility" : "internal"
} ,
{
"constant" : true ,
2018-05-16 13:46:33 +00:00
"id" : 59 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "556:51:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 57 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "556:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"hexValue" : "3131303030" ,
"id" : 58 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "602:5:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_rational_11000_by_1" ,
"typeString" : "int_const 11000"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"value" : "11000"
2018-05-10 11:12:13 +00:00
} ,
"visibility" : "internal"
} ,
{
"anonymous" : false ,
"documentation" : null ,
2018-05-16 13:46:33 +00:00
"id" : 61 ,
2018-05-10 11:12:13 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 60 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "635:2:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"src" : "614:24:2"
2018-05-10 11:12:13 +00:00
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 63 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "644:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 62 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "644:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 155 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "1738:708:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
90
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 90 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1748:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 89 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1748:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 93 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 91 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "1767:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 92 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1767:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1748:28:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 96 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 65 ,
"src" : "1815:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 97 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 67 ,
"src" : "1819:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 98 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 69 ,
"src" : "1826:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 99 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 71 ,
"src" : "1832:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 100 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "1843:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 101 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 75 ,
"src" : "1854:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 102 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 77 ,
"src" : "1863:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 103 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 63 ,
"src" : "1873:5:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 95 ,
2018-05-10 11:12:13 +00:00
"name" : "getTransactionHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 323 ,
"src" : "1796:18:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_view$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_bytes32_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256,uint256,uint256,uint256) view returns (bytes32)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 104 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1796:83:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 105 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 80 ,
"src" : "1881:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 106 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 83 ,
"src" : "1884:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 107 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 86 ,
"src" : "1887:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
} ,
{
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
} ,
{
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 94 ,
2018-05-10 11:12:13 +00:00
"name" : "checkHash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 283 ,
"src" : "1786:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$_t_bytes32_$_t_array$_t_uint8_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$__$" ,
"typeString" : "function (bytes32,uint8[] memory,bytes32[] memory,bytes32[] memory) view"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 108 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1786:103:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 109 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1786:103:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 111 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-16 13:46:33 +00:00
"src" : "1950:7:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 110 ,
2018-05-10 11:12:13 +00:00
"name" : "nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 63 ,
"src" : "1950:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 112 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1950:7:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 119 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 117 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 114 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "1975:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 115 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1975:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 116 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 59 ,
"src" : "1987:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "1975:29:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 118 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "2008:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "1975:42:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 113 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "1967:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 120 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "1967:51:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 121 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "1967:51:2"
2018-05-10 11:12:13 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 129 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
2018-05-16 13:46:33 +00:00
"src" : "2032:47:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 123 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 65 ,
"src" : "2041:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 124 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 67 ,
"src" : "2045:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 125 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 69 ,
"src" : "2052:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 126 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 71 ,
"src" : "2058:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 127 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 73 ,
"src" : "2069:9:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 122 ,
2018-05-10 11:12:13 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 860 ,
"src" : "2033:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$returns$_t_bool_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 128 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2033:46:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-05-16 13:46:33 +00:00
"id" : 134 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "IfStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2028:100:2" ,
2018-05-10 11:12:13 +00:00
"trueBody" : {
2018-05-16 13:46:33 +00:00
"id" : 133 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "2081:47:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 130 ,
2018-05-10 11:12:13 +00:00
"name" : "ExecutionFailed" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 61 ,
"src" : "2100:15:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 131 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2100:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 132 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "EmitStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2095:22:2"
2018-05-10 11:12:13 +00:00
}
]
}
} ,
{
"assignments" : [
2018-05-16 13:46:33 +00:00
136
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 136 ,
2018-05-10 11:12:13 +00:00
"name" : "gasCosts" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "2137:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 135 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2137:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 144 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 141 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 138 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 90 ,
"src" : "2170:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 139 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "2181:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 140 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2181:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "2170:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 142 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 75 ,
"src" : "2192:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 137 ,
2018-05-10 11:12:13 +00:00
"name" : "totalGasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 174 ,
"src" : "2156:13:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 143 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2156:44:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2137:63:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 152 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 150 ,
2018-05-10 11:12:13 +00:00
"name" : "gasCosts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 136 ,
"src" : "2419:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "*" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 151 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 77 ,
"src" : "2430:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "2419:19:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 145 ,
2018-05-10 11:12:13 +00:00
"name" : "tx" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2408 ,
"src" : "2400:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_transaction" ,
"typeString" : "tx"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 148 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "origin" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-16 13:46:33 +00:00
"src" : "2400:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 149 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "transfer" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-16 13:46:33 +00:00
"src" : "2400:18:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_transfer_nonpayable$_t_uint256_$returns$__$" ,
"typeString" : "function (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 153 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "2400:39:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 154 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "2400:39:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : "@dev Allows to execute a Safe transaction confirmed by required number of owners.\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.\n @param gasPrice Gas price that should be used for the payment calculation.\n @param v Array of signature V values sorted by owner addresses.\n @param r Array of signature R values sorted by owner addresses.\n @param s Array of signature S values sorted by owner addresses." ,
2018-05-16 13:46:33 +00:00
"id" : 156 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
2018-05-16 13:46:33 +00:00
"name" : "execPayTransaction" ,
2018-05-10 11:12:13 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 87 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 65 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1480:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 64 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1480:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 67 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1501:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 66 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1501:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 69 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1525:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 68 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1525:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 71 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1546:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 70 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "1546:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 73 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1581:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 72 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1581:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 75 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1608:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 74 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1608:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 77 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1633:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 76 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1633:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 80 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1659:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 78 ,
2018-05-10 11:12:13 +00:00
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1659:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 79 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1659:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_storage_ptr" ,
"typeString" : "uint8[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 83 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1679:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 81 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1679:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 82 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1679:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 86 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 156 ,
"src" : "1701:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 84 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1701:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 85 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "1701:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "1470:248:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 88 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "1738:0:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "1443:1003:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 173 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "3001:86:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 171 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 169 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 167 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 165 ,
2018-05-10 11:12:13 +00:00
"name" : "executionGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 158 ,
"src" : "3018:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 166 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 160 ,
"src" : "3033:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:22:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 168 ,
2018-05-10 11:12:13 +00:00
"name" : "PAYMENT_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 59 ,
"src" : "3043:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:42:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 170 ,
2018-05-10 11:12:13 +00:00
"name" : "BASE_TX_GAS_COSTS" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 56 ,
"src" : "3063:17:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "3018:62:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 164 ,
"id" : 172 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "3011:69:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : "@dev Calculates the total gas costs for a safe transaction with the gas costs for the execution of the transaction.\n @param executionGas Gas costs for the execution of the safe transaction.\n @param dataGas Gas costs for data used to trigger the safe transaction.\n @return Total gas costs for the execution (this includes gas costs for the payment to tx.origin, base transaction and payload data)." ,
2018-05-16 13:46:33 +00:00
"id" : 174 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "totalGasCosts" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 161 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 158 ,
2018-05-10 11:12:13 +00:00
"name" : "executionGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2901:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 157 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2901:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 160 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2923:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 159 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2923:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "2900:39:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 164 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 163 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 174 ,
"src" : "2987:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 162 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "2987:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "2986:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "2878:209:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "pure" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 210 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "3938:147:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
190
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 190 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3948:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 189 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3948:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 193 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 191 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "3967:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 192 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3967:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "3948:28:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 196 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 176 ,
"src" : "4002:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 197 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 178 ,
"src" : "4006:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 198 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 180 ,
"src" : "4013:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 199 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 182 ,
"src" : "4019:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 200 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "4030:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 201 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4030:9:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 195 ,
2018-05-10 11:12:13 +00:00
"name" : "execute" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 860 ,
"src" : "3994:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$5_$_t_uint256_$returns$_t_bool_$" ,
2018-05-10 11:12:13 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation,uint256) returns (bool)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 202 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3994:46:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 194 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "3986:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 203 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "3986:55:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 204 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "3986:55:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 208 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 205 ,
2018-05-10 11:12:13 +00:00
"name" : "startGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 190 ,
"src" : "4058:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-05-16 13:46:33 +00:00
"id" : 206 ,
2018-05-10 11:12:13 +00:00
"name" : "gasleft" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2389 ,
"src" : "4069:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_gasleft_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 207 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4069:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4058:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 188 ,
"id" : 209 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "4051:27:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
2018-05-16 13:46:33 +00:00
"documentation" : "@dev Allows to estimate a Safe transaction. \n This method can only be used by the safe itself in a transaction. 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 `execPayTransaction`\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)." ,
"id" : 211 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-05-16 13:46:33 +00:00
"id" : 185 ,
2018-05-10 11:12:13 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 184 ,
2018-05-10 11:12:13 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 1358 ,
"src" : "3897:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-05-16 13:46:33 +00:00
"src" : "3897:10:2"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"name" : "requiredTxGas" ,
2018-05-10 11:12:13 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 183 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 176 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3809:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 175 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3809:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 178 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3821:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 177 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3821:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 180 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3836:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 179 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3836:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 182 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3848:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 181 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "3848:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "3808:65:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 188 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 187 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 211 ,
"src" : "3925:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 186 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "3925:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "3924:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "3786:299:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 282 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "4195:437:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"assignments" : [
2018-05-16 13:46:33 +00:00
226
2018-05-10 11:12:13 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 226 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4257:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 225 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4257:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 230 ,
2018-05-10 11:12:13 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 228 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "4285:1:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 227 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "4277:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
2018-05-16 13:46:33 +00:00
"id" : 229 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4277:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4257:30:2"
2018-05-10 11:12:13 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 232 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4297:20:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 231 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4297:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 233 ,
2018-05-10 11:12:13 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4297:20:2"
2018-05-10 11:12:13 +00:00
} ,
{
"assignments" : [ ] ,
"declarations" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 235 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4327:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 234 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4327:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 236 ,
2018-05-10 11:12:13 +00:00
"initialValue" : null ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4327:9:2"
2018-05-10 11:12:13 +00:00
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 280 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "4420:206:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 260 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 247 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4434:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 249 ,
2018-05-10 11:12:13 +00:00
"name" : "hash" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 213 ,
"src" : "4459:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 250 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 216 ,
"src" : "4465:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 252 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 251 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4467:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4465:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 253 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 219 ,
"src" : "4471:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 255 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 254 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4473:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4471:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 256 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 222 ,
"src" : "4477:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[] memory"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 258 ,
2018-05-10 11:12:13 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 257 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4479:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-16 13:46:33 +00:00
"src" : "4477:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 248 ,
2018-05-10 11:12:13 +00:00
"name" : "ecrecover" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2388 ,
"src" : "4449:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$" ,
"typeString" : "function (bytes32,uint8,bytes32,bytes32) pure returns (address)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 259 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4449:33:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4434:48:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 261 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4434:48:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"id" : 267 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
2018-05-10 11:12:13 +00:00
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"baseExpression" : {
"argumentTypes" : null ,
"id" : 263 ,
"name" : "owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 985 ,
"src" : "4504:6:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_address_$" ,
"typeString" : "mapping(address => address)"
}
} ,
"id" : 265 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 264 ,
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 232 ,
"src" : "4511:12:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4504:20:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 266 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4528:1:2" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "4504:25:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 262 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "4496:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 268 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4496:34:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 269 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4496:34:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-05-16 13:46:33 +00:00
"id" : 273 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 271 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4552:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 272 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 226 ,
"src" : "4567:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4552:24:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 270 ,
2018-05-10 11:12:13 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-05-16 13:46:33 +00:00
2399 ,
2400
2018-05-10 11:12:13 +00:00
] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2399 ,
"src" : "4544:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 274 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "4544:33:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 275 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4544:33:2"
2018-05-10 11:12:13 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 278 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 276 ,
2018-05-10 11:12:13 +00:00
"name" : "lastOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 226 ,
"src" : "4591:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 277 ,
2018-05-10 11:12:13 +00:00
"name" : "currentOwner" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 232 ,
"src" : "4603:12:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4591:24:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 279 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4591:24:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-16 13:46:33 +00:00
"id" : 243 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 241 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4400:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 242 ,
2018-05-10 11:12:13 +00:00
"name" : "threshold" ,
"nodeType" : "Identifier" ,
2018-05-16 13:46:33 +00:00
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 989 ,
"src" : "4404:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"src" : "4400:13:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 281 ,
2018-05-10 11:12:13 +00:00
"initializationExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 239 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 237 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4393:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 238 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "4397:1:2" ,
2018-05-10 11:12:13 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-05-16 13:46:33 +00:00
"src" : "4393:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 240 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4393:5:2"
2018-05-10 11:12:13 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 245 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-16 13:46:33 +00:00
"src" : "4415:3:2" ,
2018-05-10 11:12:13 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 244 ,
2018-05-10 11:12:13 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 235 ,
"src" : "4415:1:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 246 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4415:3:2"
2018-05-10 11:12:13 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-05-16 13:46:33 +00:00
"src" : "4388:238:2"
2018-05-10 11:12:13 +00:00
}
]
} ,
"documentation" : null ,
2018-05-16 13:46:33 +00:00
"id" : 283 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "checkHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 223 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 213 ,
2018-05-10 11:12:13 +00:00
"name" : "hash" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4110:12:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 212 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4110:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 216 ,
2018-05-10 11:12:13 +00:00
"name" : "v" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4124:9:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_memory_ptr" ,
"typeString" : "uint8[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 214 ,
2018-05-10 11:12:13 +00:00
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4124:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 215 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4124:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint8_$dyn_storage_ptr" ,
"typeString" : "uint8[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 219 ,
2018-05-10 11:12:13 +00:00
"name" : "r" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4135:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 217 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4135:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 218 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4135:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 222 ,
2018-05-10 11:12:13 +00:00
"name" : "s" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 283 ,
"src" : "4148:11:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_memory_ptr" ,
"typeString" : "bytes32[]"
} ,
"typeName" : {
"baseType" : {
2018-05-16 13:46:33 +00:00
"id" : 220 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4148:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 221 ,
2018-05-10 11:12:13 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "4148:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_bytes32_$dyn_storage_ptr" ,
"typeString" : "bytes32[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "4109:51:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 224 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-16 13:46:33 +00:00
"src" : "4195:0:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "4091:541:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-05-16 13:46:33 +00:00
"id" : 322 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Block" ,
2018-05-16 13:46:33 +00:00
"src" : "5448:126:2" ,
2018-05-10 11:12:13 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30783139" ,
2018-05-16 13:46:33 +00:00
"id" : 306 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "5480:4:2" ,
2018-05-10 11:12:13 +00:00
"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"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 305 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "5475:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
2018-05-16 13:46:33 +00:00
"id" : 307 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5475:10:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-16 13:46:33 +00:00
"id" : 309 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-16 13:46:33 +00:00
"src" : "5492:1:2" ,
2018-05-10 11:12:13 +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-05-16 13:46:33 +00:00
"id" : 308 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
2018-05-16 13:46:33 +00:00
"src" : "5487:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_bytes1_$" ,
"typeString" : "type(bytes1)"
} ,
"typeName" : "byte"
} ,
2018-05-16 13:46:33 +00:00
"id" : 310 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5487:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 311 ,
2018-05-10 11:12:13 +00:00
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2423 ,
"src" : "5496:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafePersonalEdition_$324" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafePersonalEdition"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 312 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 285 ,
"src" : "5502:2:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 313 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 287 ,
"src" : "5506:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 314 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 289 ,
"src" : "5513:4:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 315 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 291 ,
"src" : "5519:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 316 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 293 ,
"src" : "5530:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 317 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 295 ,
"src" : "5541:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 318 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 297 ,
"src" : "5550:8:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
2018-05-16 13:46:33 +00:00
"id" : 319 ,
2018-05-10 11:12:13 +00:00
"name" : "_nonce" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 299 ,
"src" : "5560:6:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
"typeIdentifier" : "t_bytes1" ,
"typeString" : "bytes1"
} ,
{
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_contract$_GnosisSafePersonalEdition_$324" ,
2018-05-10 11:12:13 +00:00
"typeString" : "contract GnosisSafePersonalEdition"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-05-16 13:46:33 +00:00
"id" : 304 ,
2018-05-10 11:12:13 +00:00
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 2390 ,
"src" : "5465:9:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
2018-05-16 13:46:33 +00:00
"id" : 320 ,
2018-05-10 11:12:13 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-16 13:46:33 +00:00
"src" : "5465:102:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
2018-05-16 13:46:33 +00:00
"functionReturnParameters" : 303 ,
"id" : 321 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "Return" ,
2018-05-16 13:46:33 +00:00
"src" : "5458:109:2"
2018-05-10 11:12:13 +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 _nonce Transaction nonce.\n @return Transaction hash." ,
2018-05-16 13:46:33 +00:00
"id" : 323 ,
2018-05-10 11:12:13 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "getTransactionHash" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-16 13:46:33 +00:00
"id" : 300 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 285 ,
2018-05-10 11:12:13 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5187:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 284 ,
2018-05-10 11:12:13 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5187:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 287 ,
2018-05-10 11:12:13 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5208:13:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 286 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5208:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 289 ,
2018-05-10 11:12:13 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5232:10:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 288 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5232:5:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 291 ,
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5253:24:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
} ,
"typeName" : {
"contractScope" : null ,
2018-05-16 13:46:33 +00:00
"id" : 290 ,
2018-05-10 11:12:13 +00:00
"name" : "Enum.Operation" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-16 13:46:33 +00:00
"referencedDeclaration" : 5 ,
"src" : "5253:14:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
2018-05-16 13:46:33 +00:00
"typeIdentifier" : "t_enum$_Operation_$5" ,
2018-05-10 11:12:13 +00:00
"typeString" : "enum Enum.Operation"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 293 ,
2018-05-10 11:12:13 +00:00
"name" : "safeTxGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5288:17:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 292 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5288:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 295 ,
2018-05-10 11:12:13 +00:00
"name" : "dataGas" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5316:15:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 294 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5316:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 297 ,
2018-05-10 11:12:13 +00:00
"name" : "gasPrice" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5342:16:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 296 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5342:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 299 ,
2018-05-10 11:12:13 +00:00
"name" : "_nonce" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5369:14:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 298 ,
2018-05-10 11:12:13 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5369:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "5177:212:2"
2018-05-10 11:12:13 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-16 13:46:33 +00:00
"id" : 303 ,
2018-05-10 11:12:13 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-16 13:46:33 +00:00
"id" : 302 ,
2018-05-10 11:12:13 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-05-16 13:46:33 +00:00
"scope" : 323 ,
"src" : "5435:7:2" ,
2018-05-10 11:12:13 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
2018-05-16 13:46:33 +00:00
"id" : 301 ,
2018-05-10 11:12:13 +00:00
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-16 13:46:33 +00:00
"src" : "5435:7:2" ,
2018-05-10 11:12:13 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "5434:9:2"
2018-05-10 11:12:13 +00:00
} ,
2018-05-16 13:46:33 +00:00
"scope" : 324 ,
"src" : "5150:424:2" ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-05-16 13:46:33 +00:00
"scope" : 325 ,
"src" : "314:5262:2"
2018-05-10 11:12:13 +00:00
}
] ,
2018-05-16 13:46:33 +00:00
"src" : "0:5577:2"
2018-05-10 11:12:13 +00:00
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.4.23+commit.124ca40d.Emscripten.clang"
} ,
"networks" : {
"4" : {
"events" : { } ,
"links" : { } ,
2018-05-16 13:46:33 +00:00
"address" : "0xfa2be236995d09b0ee494b9e40637d661ff40494" ,
"transactionHash" : "0x1db063ae298dedb887690b77fc973264fd51dfbee9fdb699c430821998894113"
2018-05-10 11:12:13 +00:00
} ,
"1525950336085" : {
"events" : { } ,
"links" : { } ,
"address" : "0x1f8829f66b8ac7a6893109dd298007f5dd3bcadf" ,
"transactionHash" : "0x9a582bc25c7705ede926f13bef0ba8fa76176d0ec80dc0871e1b28d87382f545"
2018-05-14 07:48:41 +00:00
} ,
"1526283540628" : {
"events" : { } ,
"links" : { } ,
"address" : "0xad5d0371132b0959508b44c6221e6bc4de8df987" ,
"transactionHash" : "0x9a582bc25c7705ede926f13bef0ba8fa76176d0ec80dc0871e1b28d87382f545"
2018-05-16 13:46:33 +00:00
} ,
"1526478212260" : {
"events" : { } ,
"links" : { } ,
"address" : "0x6cd3878c8fce094d881e37ed48a6eb90bcea5ef7" ,
"transactionHash" : "0xd404a4c4c3ff550c031b238e6df539cbbd9d5727574d8446d0c40f2abf4638b1"
2018-05-22 07:22:38 +00:00
} ,
"1526973574996" : {
"events" : { } ,
"links" : { } ,
"address" : "0x38a0e040615367af9cd0626ef96441785f82f5c8" ,
"transactionHash" : "0xd404a4c4c3ff550c031b238e6df539cbbd9d5727574d8446d0c40f2abf4638b1"
2018-05-10 11:12:13 +00:00
}
} ,
"schemaVersion" : "2.0.0" ,
2018-05-22 07:22:38 +00:00
"updatedAt" : "2018-05-22T07:20:22.972Z"
2018-05-10 11:12:13 +00:00
}