2018-05-31 13:01:02 +00:00
{
"contractName" : "GnosisSafe" ,
"abi" : [
2018-06-28 17:13:59 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint256"
}
] ,
"name" : "addOwnerWithThreshold" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : true ,
"inputs" : [
{
"name" : "owner" ,
"type" : "address"
}
] ,
"name" : "isOwner" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
} ,
{
"name" : "operation" ,
"type" : "uint8"
}
] ,
"name" : "execTransactionFromModule" ,
"outputs" : [
{
"name" : "success" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "module" ,
"type" : "address"
}
] ,
"name" : "enableModule" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
2018-06-28 17:13:59 +00:00
"constant" : false ,
"inputs" : [
2018-05-31 13:01:02 +00:00
{
2018-06-28 17:13:59 +00:00
"name" : "_threshold" ,
"type" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-06-28 17:13:59 +00:00
"name" : "changeThreshold" ,
"outputs" : [ ] ,
2018-05-31 13:01:02 +00:00
"payable" : false ,
2018-06-28 17:13:59 +00:00
"stateMutability" : "nonpayable" ,
2018-05-31 13:01:02 +00:00
"type" : "function"
} ,
{
2018-06-28 17:13:59 +00:00
"constant" : true ,
"inputs" : [ ] ,
"name" : "SENTINEL_MODULES" ,
"outputs" : [
2018-05-31 13:01:02 +00:00
{
2018-06-28 17:13:59 +00:00
"name" : "" ,
2018-05-31 13:01:02 +00:00
"type" : "address"
}
] ,
"payable" : false ,
2018-06-28 17:13:59 +00:00
"stateMutability" : "view" ,
2018-05-31 13:01:02 +00:00
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "SENTINEL_OWNERS" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getOwners" ,
"outputs" : [
{
"name" : "" ,
"type" : "address[]"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "NAME" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getModules" ,
"outputs" : [
{
"name" : "" ,
"type" : "address[]"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "domainSeperator" ,
"outputs" : [
{
"name" : "" ,
"type" : "bytes32"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "prevModule" ,
"type" : "address"
} ,
{
"name" : "module" ,
"type" : "address"
}
] ,
"name" : "disableModule" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "prevOwner" ,
"type" : "address"
} ,
{
"name" : "oldOwner" ,
"type" : "address"
} ,
{
"name" : "newOwner" ,
"type" : "address"
}
] ,
"name" : "swapOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getThreshold" ,
"outputs" : [
{
"name" : "" ,
2018-06-28 17:13:59 +00:00
"type" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-06-28 17:13:59 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "prevOwner" ,
"type" : "address"
} ,
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint256"
}
] ,
"name" : "removeOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-05-31 13:01:02 +00:00
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "VERSION" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"payable" : true ,
"stateMutability" : "payable" ,
"type" : "fallback"
} ,
{
"anonymous" : false ,
"inputs" : [
{
"indexed" : false ,
"name" : "newContract" ,
"type" : "address"
}
] ,
"name" : "ContractCreation" ,
"type" : "event"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "_owners" ,
"type" : "address[]"
} ,
{
"name" : "_threshold" ,
2018-06-28 17:13:59 +00:00
"type" : "uint256"
2018-05-31 13:01:02 +00:00
} ,
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "data" ,
"type" : "bytes"
}
] ,
"name" : "setup" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
}
] ,
2018-08-20 07:59:16 +00:00
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 506131 e b 806100206000396000 f 3006080604052600436106100 f c 576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680630 d 582 f 13146100 f e 5780630 e c 78 d 9e1461014 b 5780631 d a 5187 f 146102215780632 f 54 b f 6e14610254578063468721 a 7146102 a f 578063610 b 592514610367578063694e80 c 3146103 a a 57806385e332 c d 146103 d 75780638 c f f 63551461042e578063 a 0e67 e 2 b 14610485578063 a 3 f 4 d f 7e146104 f 1578063 b 2494 d f 314610581578063 c b 73 a c 56146105 e d 578063e009 c f d e 14610620578063e318 b 52 b 14610683578063e75235 b 814610706578063 f 8 d c 5 d d 914610731578063 f f a 1 a d 741461079e575 b 0 0 5 b 34801561010 a 57600080 f d 5 b 50610149600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291908035906020019092919050505061082e565 b 0 0 5 b 34801561015757600080 f d 5 b 5061021 f 6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610 c 34565 b 0 0 5 b 34801561022 d 57600080 f d 5 b 50610236610 d b a 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 34801561026057600080 f d 5 b 50610295600480360381019080803573 f f f f f f f f f f f f f f f f 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 d e 1565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156102 b b 57600080 f d 5 b 5061034 d 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 169060200190929190505050610e63565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561037357600080 f d 5 b 506103 a 8600480360381019080803573 f f f f f f f f f f f f f f f f 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 f 8e565 b 0 0 5 b 3480156103 b 657600080 f d 5 b 506103 d 560048036038101908080359060200190929190505050611368565 b 0 0 5 b 3480156103e357600080 f d 5 b 506103 e c 61157 a 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 34801561043 a 57600080 f d 5 b 5061044361157 f 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 34801561049157600080 f d 5 b 5061049 a 611584565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156104 d d 5780820151818401526020810190506104 c 2565 b 505050509050019250505060405180910390 f 35 b 3480156104 f d 57600080 f d 5 b 5061050661171 f 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 8381101561054657808201518184015260208101905061052 b 565 b 50505050905090810190601 f 1680156105735780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561058 d 57600080 f d 5 b 50610596611758565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156105 d 95780820151818401526020810190506105 b e 565 b 505050509050019250505060405180910390 f 35 b 3480156105 f 957600080 f d 5 b 506106026119 f b 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 34801561062 c 57600080 f d 5 b 50610681600480360381019080803573 f f f f f f f f f f f f f f f f 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 169060200190929190505050611 a 0 1565 b 0 0 5 b 34801561068 f 57600080 f d 5 b 50610704600480360381019080803573 f f f f f f f f f f f f f f f f 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 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 169060200190929190505050611e16565 b 0 0 5 b 34801561071257600080 f d 5 b 5061071 b 612463565 b 6040518082815260200191505060405180910390 f 35 b 34801561073 d 57600080 f d 5 b 5061079 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 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 1690602001909291908035906020019092919050505061246 d 565 b 0 0 5 b 3480156107 a a 57600080 f d 5 b 506107 b 3612952565 b 6040518080602001828103825283818151815260200191508051906020019080838360
"deployedBytecode" : " 0 x 6080604052600436106100 f c 576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680630 d 582 f 13146100 f e 5780630 e c 78 d 9e1461014 b 5780631 d a 5187 f 146102215780632 f 54 b f 6e14610254578063468721 a 7146102 a f 578063610 b 592514610367578063694e80 c 3146103 a a 57806385e332 c d 146103 d 75780638 c f f 63551461042e578063 a 0e67 e 2 b 14610485578063 a 3 f 4 d f 7e146104 f 1578063 b 2494 d f 314610581578063 c b 73 a c 56146105 e d 578063e009 c f d e 14610620578063e318 b 52 b 14610683578063e75235 b 814610706578063 f 8 d c 5 d d 914610731578063 f f a 1 a d 741461079e575 b 0 0 5 b 34801561010 a 57600080 f d 5 b 50610149600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291908035906020019092919050505061082e565 b 0 0 5 b 34801561015757600080 f d 5 b 5061021 f 6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803590602001908201803590602001908080601 f 0 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610 c 34565 b 0 0 5 b 34801561022 d 57600080 f d 5 b 50610236610 d b a 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 34801561026057600080 f d 5 b 50610295600480360381019080803573 f f f f f f f f f f f f f f f f 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 d e 1565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156102 b b 57600080 f d 5 b 5061034 d 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 169060200190929190505050610e63565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561037357600080 f d 5 b 506103 a 8600480360381019080803573 f f f f f f f f f f f f f f f f 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 f 8e565 b 0 0 5 b 3480156103 b 657600080 f d 5 b 506103 d 560048036038101908080359060200190929190505050611368565 b 0 0 5 b 3480156103e357600080 f d 5 b 506103 e c 61157 a 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 34801561043 a 57600080 f d 5 b 5061044361157 f 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 34801561049157600080 f d 5 b 5061049 a 611584565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156104 d d 5780820151818401526020810190506104 c 2565 b 505050509050019250505060405180910390 f 35 b 3480156104 f d 57600080 f d 5 b 5061050661171 f 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 8381101561054657808201518184015260208101905061052 b 565 b 50505050905090810190601 f 1680156105735780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561058 d 57600080 f d 5 b 50610596611758565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 838110156105 d 95780820151818401526020810190506105 b e 565 b 505050509050019250505060405180910390 f 35 b 3480156105 f 957600080 f d 5 b 506106026119 f b 565 b 60405180826000191660001916815260200191505060405180910390 f 35 b 34801561062 c 57600080 f d 5 b 50610681600480360381019080803573 f f f f f f f f f f f f f f f f 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 169060200190929190505050611 a 0 1565 b 0 0 5 b 34801561068 f 57600080 f d 5 b 50610704600480360381019080803573 f f f f f f f f f f f f f f f f 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 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 169060200190929190505050611e16565 b 0 0 5 b 34801561071257600080 f d 5 b 5061071 b 612463565 b 6040518082815260200191505060405180910390 f 35 b 34801561073 d 57600080 f d 5 b 5061079 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 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 1690602001909291908035906020019092919050505061246 d 565 b 0 0 5 b 3480156107 a a 57600080 f d 5 b 506107 b 3612952565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107 f 35780820151818401526020810190506107 d 856
"sourceMap" : "322:1070:4:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;322:1070:4;;;;;;;" ,
"deployedSourceMap" : " 322 : 1070 : 4 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2093 : 595 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2093 : 595 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 933 : 457 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 933 : 457 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 458 : 118 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 458 : 118 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5613 : 129 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5613 : 129 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2712 : 429 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2712 : 429 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1182 : 459 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1182 : 459 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5087 : 399 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5087 : 399 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 488 : 55 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 488 : 55 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 287 : 54 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 287 : 54 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5824 : 458 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5824 : 458 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 5824 : 458 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 390 : 46 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 390 : 46 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 390 : 46 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3220 : 738 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3220 : 738 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 3220 : 738 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 583 : 30 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 583 : 30 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1902 : 474 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1902 : 474 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4147 : 751 : 11 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4147 : 751 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 5492 : 115 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 5492 : 115 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3030 : 783 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3030 : 783 : 11 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 442 : 40 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 442 : 40 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 23 : 1 : -1 ; 8 : 100 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 99 : 1 ; 94 : 3 ; 90 : 11 ; 84 : 18 ; 80 : 1 ; 75 : 3 ; 71 : 11 ; 64 : 39 ; 52 : 2 ; 49 : 1 ; 45 : 10 ; 40 : 15 ; ; 8 : 100 ; ; ; 12 : 14 ; 442 : 40 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2093 : 595 : 11 ; 244 : 4 : 16 ; 222 : 27 ; ; : 10 ; : 27 ; ; ; 214 : 84 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2265 : 1 : 11 ; 2256 : 5 ; : 10 ; ; ; ; : 38 ; ; ; ; ; 337 : 3 ; 2270 : 24 ; ; : 5 ; : 24 ; ; ; ; 2256 : 38 ; 2248 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2404 : 1 ; 2387 : 6 ; : 13 ; 2394 : 5 ; 2387 : 13 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 18 ; ; ; 2379 : 58 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2463 : 6 ; : 23 ; 337 : 3 ; 2463 : 23 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2447 : 6 ; : 13 ; 2454 : 5 ; 2447 : 13 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 39 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2522 : 5 ; 2496 : 6 ; : 23 ; 337 : 3 ; 2496 : 23 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 31 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2537 : 10 ; ; : 12 ; ; ; ; ; ; ; ; ; ; ; ; ; 2630 : 10 ; 2617 : 9 ; ; : 23 ; ; 2613 : 68 ; ; ; 2654 : 27 ; 2670 : 10 ; 2654 : 15 ; : 27 : : i ; : : : - ; 2613 : 68 ; 2093 : 595 ; ; : : : o ; 933 : 457 : 4 : - ; 1067 : 1 ; 1048 : 20 ; ; : 15 ; ; : 20 ; ; ; ; 1040 : 62 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 510 : 66 ; 1151 : 25 ; ; 1178 : 4 ; 1140 : 43 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 49 : 4 : -1 ; 39 : 7 ; 30 ; 26 : 21 ; 22 : 32 ; 13 : 7 ; 6 : 49 ; 1140 : 43 : 4 ; ; ; 1130 : 54 ; ; ; ; ; ; ; ; ; ; ; ; ; 36 : 153 : -1 ; 66 : 2 ; 61 : 3 ; 58 : 11 ; 51 : 19 ; 36 : 153 ; ; ; 182 : 3 ; 176 : 10 ; 171 : 3 ; 164 : 23 ; 98 : 2 ; 93 : 3 ; 89 : 12 ; 82 : 19 ; ; 123 : 2 ; 118 : 3 ; 114 : 12 ; 107 : 19 ; ; 148 : 2 ; 143 : 3 ; 139 : 12 ; 132 : 19 ; ; 36 : 153 ; ; ; 274 : 1 ; 267 : 3 ; 263 : 2 ; 259 : 12 ; 254 : 3 ; 250 : 22 ; 246 : 30 ; 315 : 4 ; 311 : 9 ; 305 : 3 ; 299 : 10 ; 295 : 26 ; 356 : 4 ; 350 : 3 ; 344 : 10 ; 340 : 21 ; 389 : 7 ; 380 ; 377 : 20 ; 372 : 3 ; 365 : 33 ; 3 : 399 ; ; ; 1130 : 54 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1112 : 15 ; : 72 ; ; ; ; ; ; ; 1194 : 32 ; 1206 : 7 ; 1215 : 10 ; 1194 : 11 ; : 32 : : i ; : : : - ; 1361 : 22 ; 1374 : 2 ; 1378 : 4 ; 1361 : 12 ; : 22 : : i ; : : : - ; 933 : 457 ; ; ; ; : : : o ; 458 : 118 : : - ; 510 : 66 ; 458 : 118 ; ; ; : : : o ; 5613 : 129 : 11 : - ; 5690 : 4 ; 5734 : 1 ; 5717 : 6 ; : 13 ; 5724 : 5 ; 5717 : 13 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 18 ; ; ; ; 5710 : 25 ; ; 5613 : 129 ; ; ; : : : o ; 2712 : 429 : 10 : - ; 2844 : 12 ; 2952 : 1 ; 2929 : 7 ; : 19 ; 2937 : 10 ; 2929 : 19 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 24 ; ; ; ; 2921 : 85 ; ; ; ; ; ; ;
"source" : "pragma solidity 0.4.24;\nimport \"./Module.sol\";\nimport \"./ModuleManager.sol\";\nimport \"./OwnerManager.sol\";\n\n\n/// @title Gnosis Safe - A multisignature wallet with support for modules and owners. This contract needs to be extented to add functionality to execute transactions.\n/// @author Stefan George - <stefan@gnosis.pm>\ncontract GnosisSafe is ModuleManager, OwnerManager {\n\n //keccak256(\n // \"EIP712Domain(address verifyingContract)\"\n //);\n bytes32 public constant DOMAIN_SEPERATOR_TYPEHASH = 0x035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d4749;\n\n bytes32 public domainSeperator;\n\n /// @dev Setup function sets initial storage of contract.\n /// @param _owners List of Safe owners.\n /// @param _threshold Number of required confirmations for a Safe transaction.\n /// @param to Contract address for optional delegate call.\n /// @param data Data payload for optional delegate call.\n function setup(address[] _owners, uint256 _threshold, address to, bytes data)\n public\n {\n require(domainSeperator == 0, \"Domain Seperator already set!\");\n domainSeperator = keccak256(abi.encode(DOMAIN_SEPERATOR_TYPEHASH, this));\n setupOwners(_owners, _threshold);\n // As setupOwners can only be called if the contract has not been initialized we don't need a check for setupModules\n setupModules(to, data);\n }\n}\n" ,
2018-05-31 13:01:02 +00:00
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"exportedSymbols" : {
"GnosisSafe" : [
2018-08-20 07:59:16 +00:00
208
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 209 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 155 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-08-20 07:59:16 +00:00
"src" : "0:23:4"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "./Module.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 156 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 914 ,
"src" : "24:22:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "./ModuleManager.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 157 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 1181 ,
"src" : "47:29:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "./OwnerManager.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 158 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 1589 ,
"src" : "77:28:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 159 ,
2018-05-31 13:01:02 +00:00
"name" : "ModuleManager" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1180 ,
"src" : "345:13:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 160 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "345:13:4"
2018-05-31 13:01:02 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 161 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1588 ,
"src" : "360:12:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1588" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 162 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "360:12:4"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-08-20 07:59:16 +00:00
153 ,
37 ,
1180 ,
1588 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Gnosis Safe - A multisignature wallet with support for modules and owners. This contract needs to be extented to add functionality to execute transactions.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-08-20 07:59:16 +00:00
"id" : 208 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
208 ,
1588 ,
1180 ,
153 ,
37 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "GnosisSafe" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"id" : 165 ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 208 ,
"src" : "458:118:4" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 163 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "458:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "307830333561666638336438363933376433356233326530346630646463366666343639323930656566326631623639326438613831356338393430346434373439" ,
"id" : 164 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "510:66:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1517718281442037948617199096126532355110765202990829672390711201829802035017_by_1" ,
"typeString" : "int_const 1517...(68 digits omitted)...5017"
} ,
"value" : "0x035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d4749"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
"id" : 167 ,
"name" : "domainSeperator" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 208 ,
"src" : "583:30:4" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 166 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "583:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
2018-05-31 13:01:02 +00:00
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 206 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "1030:360:4" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"commonType" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"id" : 182 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 180 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "1048:15:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 181 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1067:1:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "1048:20:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "446f6d61696e20536570657261746f7220616c72656164792073657421" ,
"id" : 183 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1070:31:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_76b336706355b2c543d4f566e8de773fa4e586723c61d024c00ec0bb4ad3fcae" ,
"typeString" : "literal_string \"Domain Seperator already set!\""
} ,
"value" : "Domain Seperator already set!"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_76b336706355b2c543d4f566e8de773fa4e586723c61d024c00ec0bb4ad3fcae" ,
"typeString" : "literal_string \"Domain Seperator already set!\""
}
] ,
"id" : 179 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
3831 ,
3832
] ,
"referencedDeclaration" : 3832 ,
"src" : "1040:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 184 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1040:62:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 185 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1040:62:4"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 194 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 186 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "1112:15:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 190 ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 165 ,
"src" : "1151:25:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"id" : 191 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3861 ,
"src" : "1178:4:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
"typeString" : "contract GnosisSafe"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
"typeString" : "contract GnosisSafe"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 188 ,
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3815 ,
"src" : "1140:3:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
"id" : 189 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encode" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "1140:10:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
"id" : 192 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1140:43:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 187 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "1130:9:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 193 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1130:54:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"src" : "1112:72:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"id" : 195 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1112:72:4"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 197 ,
2018-05-31 13:01:02 +00:00
"name" : "_owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 170 ,
"src" : "1206:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 198 ,
2018-05-31 13:01:02 +00:00
"name" : "_threshold" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 172 ,
"src" : "1215:10:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 196 ,
2018-05-31 13:01:02 +00:00
"name" : "setupOwners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1297 ,
"src" : "1194:11:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint256_$returns$__$" ,
"typeString" : "function (address[] memory,uint256)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 199 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "1194:32:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 200 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "1194:32:4"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 202 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 174 ,
"src" : "1374:2:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 203 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 176 ,
"src" : "1378:4:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 201 ,
2018-05-31 13:01:02 +00:00
"name" : "setupModules" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 975 ,
"src" : "1361:12:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (address,bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 204 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "1361:22:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 205 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "1361:22:4"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param _owners List of Safe owners.\n @param _threshold Number of required confirmations for a Safe transaction.\n @param to Contract address for optional delegate call.\n @param data Data payload for optional delegate call." ,
2018-08-20 07:59:16 +00:00
"id" : 207 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 177 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 170 ,
2018-05-31 13:01:02 +00:00
"name" : "_owners" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "948:17:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
2018-08-20 07:59:16 +00:00
"id" : 168 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "948:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 169 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "948:9:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 172 ,
2018-05-31 13:01:02 +00:00
"name" : "_threshold" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "967:18:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 171 ,
2018-06-28 17:13:59 +00:00
"name" : "uint256" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "967:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 174 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "987:10:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 173 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "987:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 176 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "999:10:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 175 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "999:5:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "947:63:4"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 178 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-08-20 07:59:16 +00:00
"src" : "1030:0:4"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 208 ,
"src" : "933:457:4" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"src" : "322:1070:4"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "0:1393:4"
2018-05-31 13:01:02 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"exportedSymbols" : {
"GnosisSafe" : [
2018-08-20 07:59:16 +00:00
208
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 209 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 155 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-08-20 07:59:16 +00:00
"src" : "0:23:4"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "./Module.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 156 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 914 ,
"src" : "24:22:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "./ModuleManager.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 157 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 1181 ,
"src" : "47:29:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "./OwnerManager.sol" ,
2018-08-20 07:59:16 +00:00
"id" : 158 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"sourceUnit" : 1589 ,
"src" : "77:28:4" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 159 ,
2018-05-31 13:01:02 +00:00
"name" : "ModuleManager" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1180 ,
"src" : "345:13:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 160 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "345:13:4"
2018-05-31 13:01:02 +00:00
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 161 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1588 ,
"src" : "360:12:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1588" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 162 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-08-20 07:59:16 +00:00
"src" : "360:12:4"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-08-20 07:59:16 +00:00
153 ,
37 ,
1180 ,
1588 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Gnosis Safe - A multisignature wallet with support for modules and owners. This contract needs to be extented to add functionality to execute transactions.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-08-20 07:59:16 +00:00
"id" : 208 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
208 ,
1588 ,
1180 ,
153 ,
37 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "GnosisSafe" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
2018-08-20 07:59:16 +00:00
{
"constant" : true ,
"id" : 165 ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 208 ,
"src" : "458:118:4" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 163 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "458:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "307830333561666638336438363933376433356233326530346630646463366666343639323930656566326631623639326438613831356338393430346434373439" ,
"id" : 164 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "510:66:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1517718281442037948617199096126532355110765202990829672390711201829802035017_by_1" ,
"typeString" : "int_const 1517...(68 digits omitted)...5017"
} ,
"value" : "0x035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d4749"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
"id" : 167 ,
"name" : "domainSeperator" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 208 ,
"src" : "583:30:4" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"typeName" : {
"id" : 166 ,
"name" : "bytes32" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "583:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"value" : null ,
"visibility" : "public"
} ,
2018-05-31 13:01:02 +00:00
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 206 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-08-20 07:59:16 +00:00
"src" : "1030:360:4" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"commonType" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
"id" : 182 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 180 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "1048:15:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 181 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1067:1:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "1048:20:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "446f6d61696e20536570657261746f7220616c72656164792073657421" ,
"id" : 183 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1070:31:4" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_76b336706355b2c543d4f566e8de773fa4e586723c61d024c00ec0bb4ad3fcae" ,
"typeString" : "literal_string \"Domain Seperator already set!\""
} ,
"value" : "Domain Seperator already set!"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_76b336706355b2c543d4f566e8de773fa4e586723c61d024c00ec0bb4ad3fcae" ,
"typeString" : "literal_string \"Domain Seperator already set!\""
}
] ,
"id" : 179 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
3831 ,
3832
] ,
"referencedDeclaration" : 3832 ,
"src" : "1040:7:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 184 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1040:62:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 185 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1040:62:4"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 194 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 186 ,
"name" : "domainSeperator" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 167 ,
"src" : "1112:15:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 190 ,
"name" : "DOMAIN_SEPERATOR_TYPEHASH" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 165 ,
"src" : "1151:25:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
{
"argumentTypes" : null ,
"id" : 191 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3861 ,
"src" : "1178:4:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
"typeString" : "contract GnosisSafe"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
} ,
{
"typeIdentifier" : "t_contract$_GnosisSafe_$208" ,
"typeString" : "contract GnosisSafe"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 188 ,
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3815 ,
"src" : "1140:3:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
"id" : 189 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encode" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "1140:10:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function () pure returns (bytes memory)"
}
} ,
"id" : 192 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1140:43:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 187 ,
"name" : "keccak256" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3822 ,
"src" : "1130:9:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_sha3_pure$__$returns$_t_bytes32_$" ,
"typeString" : "function () pure returns (bytes32)"
}
} ,
"id" : 193 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1130:54:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"src" : "1112:72:4" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes32" ,
"typeString" : "bytes32"
}
} ,
"id" : 195 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1112:72:4"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 197 ,
2018-05-31 13:01:02 +00:00
"name" : "_owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 170 ,
"src" : "1206:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 198 ,
2018-05-31 13:01:02 +00:00
"name" : "_threshold" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 172 ,
"src" : "1215:10:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
} ,
{
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 196 ,
2018-05-31 13:01:02 +00:00
"name" : "setupOwners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1297 ,
"src" : "1194:11:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint256_$returns$__$" ,
"typeString" : "function (address[] memory,uint256)"
2018-05-31 13:01:02 +00:00
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 199 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "1194:32:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 200 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "1194:32:4"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 202 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 174 ,
"src" : "1374:2:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 203 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 176 ,
"src" : "1378:4:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 201 ,
2018-05-31 13:01:02 +00:00
"name" : "setupModules" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 975 ,
"src" : "1361:12:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (address,bytes memory)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 204 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-08-20 07:59:16 +00:00
"src" : "1361:22:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 205 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-08-20 07:59:16 +00:00
"src" : "1361:22:4"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param _owners List of Safe owners.\n @param _threshold Number of required confirmations for a Safe transaction.\n @param to Contract address for optional delegate call.\n @param data Data payload for optional delegate call." ,
2018-08-20 07:59:16 +00:00
"id" : 207 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 177 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 170 ,
2018-05-31 13:01:02 +00:00
"name" : "_owners" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "948:17:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
2018-08-20 07:59:16 +00:00
"id" : 168 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "948:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 169 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "948:9:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 172 ,
2018-05-31 13:01:02 +00:00
"name" : "_threshold" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "967:18:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 171 ,
2018-06-28 17:13:59 +00:00
"name" : "uint256" ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "967:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-28 17:13:59 +00:00
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
2018-05-31 13:01:02 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 174 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "987:10:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 173 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "987:7:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 176 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 207 ,
"src" : "999:10:4" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 175 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-08-20 07:59:16 +00:00
"src" : "999:5:4" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "947:63:4"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-08-20 07:59:16 +00:00
"id" : 178 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-08-20 07:59:16 +00:00
"src" : "1030:0:4"
2018-05-31 13:01:02 +00:00
} ,
2018-08-20 07:59:16 +00:00
"scope" : 208 ,
"src" : "933:457:4" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 209 ,
"src" : "322:1070:4"
2018-05-31 13:01:02 +00:00
}
] ,
2018-08-20 07:59:16 +00:00
"src" : "0:1393:4"
2018-05-31 13:01:02 +00:00
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.4.24+commit.e67f0147.Emscripten.clang"
} ,
"networks" : { } ,
2018-06-29 11:23:01 +00:00
"schemaVersion" : "2.0.0" ,
2018-08-20 07:59:16 +00:00
"updatedAt" : "2018-08-20T07:44:41.084Z"
2018-05-31 13:01:02 +00:00
}