2018-05-04 14:04:04 +00:00
{
"contractName" : "GnosisSafe" ,
"abi" : [
{
"constant" : true ,
"inputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"name" : "owners" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
2018-05-10 11:12:13 +00:00
{
"constant" : false ,
"inputs" : [
{
"name" : "owner" ,
"type" : "address"
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
}
] ,
"name" : "addOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "module" ,
"type" : "address"
}
] ,
"name" : "addModule" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
2018-05-04 14:04:04 +00:00
{
"constant" : true ,
"inputs" : [
{
2018-05-10 11:12:13 +00:00
"name" : "owner" ,
2018-05-04 14:04:04 +00:00
"type" : "address"
}
] ,
"name" : "isOwner" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "threshold" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint8"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "isModule" ,
2018-05-04 14:04:04 +00:00
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : false ,
"inputs" : [
2018-05-04 14:04:04 +00:00
{
2018-05-10 11:12:13 +00:00
"name" : "oldOwnerIndex" ,
"type" : "uint256"
} ,
{
"name" : "oldOwner" ,
"type" : "address"
} ,
{
"name" : "newOwner" ,
"type" : "address"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "replaceOwner" ,
"outputs" : [ ] ,
2018-05-04 14:04:04 +00:00
"payable" : false ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
2018-05-04 14:04:04 +00:00
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : false ,
"inputs" : [
2018-05-04 14:04:04 +00:00
{
2018-05-10 11:12:13 +00:00
"name" : "moduleIndex" ,
2018-05-04 14:04:04 +00:00
"type" : "uint256"
2018-05-10 11:12:13 +00:00
} ,
{
"name" : "module" ,
"type" : "address"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "removeModule" ,
"outputs" : [ ] ,
2018-05-04 14:04:04 +00:00
"payable" : false ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "nonpayable" ,
2018-05-04 14:04:04 +00:00
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "modules" ,
2018-05-04 14:04:04 +00:00
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : false ,
2018-05-04 14:04:04 +00:00
"inputs" : [
{
2018-05-10 11:12:13 +00:00
"name" : "ownerIndex" ,
"type" : "uint256"
} ,
{
"name" : "owner" ,
2018-05-04 14:04:04 +00:00
"type" : "address"
2018-05-10 11:12:13 +00:00
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "removeOwner" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "getOwners" ,
2018-05-04 14:04:04 +00:00
"outputs" : [
{
"name" : "" ,
2018-05-10 11:12:13 +00:00
"type" : "address[]"
2018-05-04 14:04:04 +00:00
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
2018-05-10 11:12:13 +00:00
"name" : "NAME" ,
2018-05-04 14:04:04 +00:00
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : false ,
2018-05-04 14:04:04 +00:00
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
2018-05-10 11:12:13 +00:00
{
"name" : "value" ,
"type" : "uint256"
} ,
2018-05-04 14:04:04 +00:00
{
"name" : "data" ,
"type" : "bytes"
} ,
{
2018-05-10 11:12:13 +00:00
"name" : "operation" ,
2018-05-04 14:04:04 +00:00
"type" : "uint8"
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "executeModule" ,
"outputs" : [
2018-05-04 14:04:04 +00:00
{
2018-05-10 11:12:13 +00:00
"name" : "success" ,
"type" : "bool"
2018-05-04 14:04:04 +00:00
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : true ,
"inputs" : [ ] ,
"name" : "getModules" ,
"outputs" : [
2018-05-04 14:04:04 +00:00
{
2018-05-10 11:12:13 +00:00
"name" : "" ,
"type" : "address[]"
2018-05-04 14:04:04 +00:00
}
] ,
"payable" : false ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
2018-05-04 14:04:04 +00:00
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "_threshold" ,
"type" : "uint8"
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "changeThreshold" ,
2018-05-04 14:04:04 +00:00
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"constant" : true ,
"inputs" : [ ] ,
"name" : "VERSION" ,
"outputs" : [
2018-05-04 14:04:04 +00:00
{
2018-05-10 11:12:13 +00:00
"name" : "" ,
"type" : "string"
2018-05-04 14:04:04 +00:00
}
] ,
"payable" : false ,
2018-05-10 11:12:13 +00:00
"stateMutability" : "view" ,
2018-05-04 14:04:04 +00:00
"type" : "function"
} ,
{
2018-05-10 11:12:13 +00:00
"payable" : true ,
"stateMutability" : "payable" ,
"type" : "fallback"
2018-05-04 14:04:04 +00:00
} ,
{
2018-05-10 11:12:13 +00:00
"anonymous" : false ,
2018-05-04 14:04:04 +00:00
"inputs" : [
{
2018-05-10 11:12:13 +00:00
"indexed" : false ,
"name" : "newContract" ,
2018-05-04 14:04:04 +00:00
"type" : "address"
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "ContractCreation" ,
"type" : "event"
2018-05-04 14:04:04 +00:00
} ,
{
"constant" : false ,
"inputs" : [
{
2018-05-10 11:12:13 +00:00
"name" : "_owners" ,
"type" : "address[]"
} ,
{
"name" : "_threshold" ,
"type" : "uint8"
2018-05-04 14:04:04 +00:00
} ,
{
2018-05-10 11:12:13 +00:00
"name" : "to" ,
2018-05-04 14:04:04 +00:00
"type" : "address"
2018-05-10 11:12:13 +00:00
} ,
{
"name" : "data" ,
"type" : "bytes"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"name" : "setup" ,
2018-05-04 14:04:04 +00:00
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
2018-05-10 11:12:13 +00:00
}
] ,
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 5061193e806100206000396000 f 3006080604052600436106100 f 1576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 168063025e7 c 27146100 f 35780630e5229 b 0 146101605780631 e d 86 f 19146101 b 0 5780632 f 54 b f 6e146101 f 357806342 c d e 4e81461024 e 57806342 f 6e3891461027 f 57806354e99 c 6e146102 d a 5780637 c 6401 d 31461034757806381 b 2248 a 14610394578063842 b 954e14610401578063 a 0 4222e11461045 b 578063 a 0e67 e 2 b 14610534578063 a 3 f 4 d f 7e146105 a 0 578063 b 0 21640 a 14610630578063 b 2494 d f 3146106e8578063 b 7 f 3358 d 14610754578063 f f a 1 a d 7414610784575 b 0 0 5 b 3480156100 f f 57600080 f d 5 b 5061011e60048036038101908080359060200190929190505050610814565 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 34801561016 c 57600080 f d 5 b 506101 a e 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 169060200190929190803560 f f 169060200190929190505050610852565 b 0 0 5 b 3480156101 b c 57600080 f d 5 b 506101 f 1600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291905050506109 f 5565 b 0 0 5 b 3480156101 f f 57600080 f d 5 b 50610234600480360381019080803573 f f f f f f f f f f f f f f f f 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 b 6e565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561025 a 57600080 f d 5 b 50610263610 b c 4565 b 604051808260 f f 1660 f f 16815260200191505060405180910390 f 35 b 34801561028 b 57600080 f d 5 b 506102 c 0 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 169060200190929190505050610 b d b 565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156102e657600080 f d 5 b 5061034560048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f 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 169060200190929190505050610 b f b 565 b 0 0 5 b 34801561035357600080 f d 5 b 5061039260048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610e34565 b 0 0 5 b 3480156103 a 0 57600080 f d 5 b 506103 b f 60048036038101908080359060200190929190505050610 f e 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 34801561040 d 57600080 f d 5 b 5061045960048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f 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 16906020019092919050505061102 a 565 b 0 0 5 b 34801561046757600080 f d 5 b 5061053260048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803560 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 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611225565 b 0 0 5 b 34801561054057600080 f d 5 b 5061054961123 f 565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561058 c 578082015181840152602081019050610571565 b 505050509050019250505060405180910390 f 35 b 3480156105 a c 57600080 f d 5 b 506105 b 56112 c d 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156105 f 55780820151818401526020810190506105 d a 565 b 50505050905090810190601 f 1680156106225780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561063 c 57600080 f d 5 b 506106 c e 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 169060200190929190505050611306565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156106 f 457600080 f d 5 b 506106 f d 611377565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 83811015610740578082015181840152602081019050610725565 b 505050509050019250505060405180910390 f 35 b 34801561076057600080 f d 5 b 50610782600480360381019080803560 f f 169060200190929190505050611405565 b 0 0 5 b 34801561079057600080 f d 5 b 50610799611487565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107 d 95780820151818401526020810190506107
"deployedBytecode" : " 0 x 6080604052600436106100 f 1576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 168063025e7 c 27146100 f 35780630e5229 b 0 146101605780631 e d 86 f 19146101 b 0 5780632 f 54 b f 6e146101 f 357806342 c d e 4e81461024 e 57806342 f 6e3891461027 f 57806354e99 c 6e146102 d a 5780637 c 6401 d 31461034757806381 b 2248 a 14610394578063842 b 954e14610401578063 a 0 4222e11461045 b 578063 a 0e67 e 2 b 14610534578063 a 3 f 4 d f 7e146105 a 0 578063 b 0 21640 a 14610630578063 b 2494 d f 3146106e8578063 b 7 f 3358 d 14610754578063 f f a 1 a d 7414610784575 b 0 0 5 b 3480156100 f f 57600080 f d 5 b 5061011e60048036038101908080359060200190929190505050610814565 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 34801561016 c 57600080 f d 5 b 506101 a e 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 169060200190929190803560 f f 169060200190929190505050610852565 b 0 0 5 b 3480156101 b c 57600080 f d 5 b 506101 f 1600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1690602001909291905050506109 f 5565 b 0 0 5 b 3480156101 f f 57600080 f d 5 b 50610234600480360381019080803573 f f f f f f f f f f f f f f f f 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 b 6e565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561025 a 57600080 f d 5 b 50610263610 b c 4565 b 604051808260 f f 1660 f f 16815260200191505060405180910390 f 35 b 34801561028 b 57600080 f d 5 b 506102 c 0 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 169060200190929190505050610 b d b 565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156102e657600080 f d 5 b 5061034560048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f 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 169060200190929190505050610 b f b 565 b 0 0 5 b 34801561035357600080 f d 5 b 5061039260048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610e34565 b 0 0 5 b 3480156103 a 0 57600080 f d 5 b 506103 b f 60048036038101908080359060200190929190505050610 f e 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 34801561040 d 57600080 f d 5 b 5061045960048036038101908080359060200190929190803573 f f f f f f f f f f f f f f f f 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 16906020019092919050505061102 a 565 b 0 0 5 b 34801561046757600080 f d 5 b 5061053260048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803560 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 160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611225565 b 0 0 5 b 34801561054057600080 f d 5 b 5061054961123 f 565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 8381101561058 c 578082015181840152602081019050610571565 b 505050509050019250505060405180910390 f 35 b 3480156105 a c 57600080 f d 5 b 506105 b 56112 c d 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156105 f 55780820151818401526020810190506105 d a 565 b 50505050905090810190601 f 1680156106225780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561063 c 57600080 f d 5 b 506106 c e 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 169060200190929190505050611306565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156106 f 457600080 f d 5 b 506106 f d 611377565 b 6040518080602001828103825283818151815260200191508051906020019060200280838360005 b 83811015610740578082015181840152602081019050610725565 b 505050509050019250505060405180910390 f 35 b 34801561076057600080 f d 5 b 50610782600480360381019080803560 f f 169060200190929190505050611405565 b 0 0 5 b 34801561079057600080 f d 5 b 50610799611487565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156107 d 95780820151818401526020810190506107 b e 565 b 50505050905090810190601 f 16801561080657808203805160
"sourceMap" : "322:674:2:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;322:674:2;;;;;;;" ,
"deployedSourceMap" : " 322 : 674 : 2 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 287 : 23 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 287 : 23 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1737 : 431 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1737 : 431 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1166 : 300 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1166 : 300 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4552 : 125 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4552 : 125 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4436 : 110 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4436 : 110 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 599 : 41 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 599 : 41 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3419 : 501 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3419 : 501 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1722 : 336 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1722 : 336 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 500 : 23 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 500 : 23 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2499 : 599 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2499 : 599 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 693 : 301 : 2 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 693 : 301 : 2 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4759 : 111 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4759 : 111 : 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 ; 4759 : 111 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 401 : 46 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 401 : 46 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 401 : 46 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2394 : 361 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2394 : 361 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4279 : 112 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4279 : 112 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 4279 : 112 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4109 : 321 : 10 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 4109 : 321 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 453 : 40 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 453 : 40 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 453 : 40 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 287 : 23 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 1737 : 431 : : - ; 244 : 4 : 14 ; 222 : 27 ; ; : 10 ; : 27 ; ; ; 214 : 36 ; ; ; ; ; ; ; ; 1894 : 1 : 10 ; 1885 : 5 ; : 10 ; ; ; ; 1877 : 19 ; ; ; ; ; ; ; ; 1955 : 7 ; : 14 ; 1963 : 5 ; 1955 : 14 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1954 : 15 ; 1946 : 24 ; ; ; ; ; ; ; ; 1980 : 6 ; 1992 : 5 ; 1980 : 18 ; ; 39 : 1 : -1 ; 33 : 3 ; 27 : 10 ; 23 : 18 ; 57 : 10 ; 52 : 3 ; 45 : 23 ; 79 : 10 ; 72 : 17 ; ; 0 : 93 ; 1980 : 18 : 10 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2025 : 4 ; 2008 : 7 ; : 14 ; 2016 : 5 ; 2008 : 14 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 21 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2110 : 10 ; 2097 : 23 ; ; : 9 ; ; ; ; ; ; ; ; ; ; ; : 23 ; ; ; ; 2093 : 68 ; ; ; 2134 : 27 ; 2150 : 10 ; 2134 : 15 ; : 27 : : i ; : : : - ; 2093 : 68 ; 1737 : 431 ; ; : : : o ; 1166 : 300 : 9 : - ; 244 : 4 : 14 ; 222 : 27 ; ; : 10 ; : 27 ; ; ; 214 : 36 ; ; ; ; ; ; ; ; 1317 : 1 : 9 ; 1306 : 6 ; 1298 : 20 ; ; ; ; 1290 : 29 ; ; ; ; ; ; ; ; 1379 : 8 ; : 16 ; 1388 : 6 ; 1379 : 16 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1378 : 17 ; 1370 : 26 ; ; ; ; ; ; ; ; 1406 : 7 ; 1419 : 6 ; 1406 : 20 ; ; 39 : 1 : -1 ; 33 : 3 ; 27 : 10 ; 23 : 18 ; 57 : 10 ; 52 : 3 ; 45 : 23 ; 79 : 10 ; 72 : 17 ; ; 0 : 93 ; 1406 : 20 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1455 : 4 ; 1436 : 8 ; : 16 ; 1445 : 6 ; 1436 : 16 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 23 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1166 : 300 ; : : : o ; 4552 : 125 : 10 : - ; 4629 : 4 ; 4656 : 7 ; : 14 ; 4664 : 5 ; 4656 : 14 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4649 : 21 ; ; 4552 : 125 ; ; ; : : : o ; 4436 : 110 : : - ; 4502 : 5 ; 4530 : 9 ; ; ; ; ; ; ; ; ; ; ; 4523 : 16 ; ; 4436 : 110 ; : : : o ; 599 : 41 : 9 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 3419 : 501 : 10 : - ; 244 : 4 : 14 ; 222 : 27 ; ; : 10 ; : 27 ; ; ; 214 : 36 ; ; ; ; ; ; ; ; 3609 : 1 : 10 ; 3597 : 8 ; : 13 ; ; ; ; 3589 : 22 ; ; ; ; ; ; ; ; 3670 : 7 ; : 17 ; 3678 : 8 ; 3670 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3669 : 18 ; 3661 : 27 ; ; ; ; ; ; ; ; 3793 : 8 ; 3768 : 33 ; ; : 6 ; 3775 : 13 ; 3768 : 21 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 3760 : 42 ; ; ; ; ; ; ; ; 3832 : 5 ; 3812 : 7 ; : 17 ; 3820 : 8 ; 3812 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 25 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3867 : 4 ; 3847 : 7 ; : 17 ; 3855 : 8 ; 3847 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 24 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3905 : 8 ; 3881 : 6 ; 3888 : 13 ; 3881 : 21 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 32 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3419
"source" : "pragma solidity 0.4.23;\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 /// @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, uint8 _threshold, address to, bytes data)\n public\n {\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" ,
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"exportedSymbols" : {
"GnosisSafe" : [
63
]
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"id" : 64 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 32 ,
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
"src" : "0:23:2"
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "./Module.sol" ,
"id" : 33 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 878 ,
"src" : "24:22:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "./ModuleManager.sol" ,
"id" : 34 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 1143 ,
"src" : "47:29:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "./OwnerManager.sol" ,
"id" : 35 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 1439 ,
"src" : "77:28:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 36 ,
"name" : "ModuleManager" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1142 ,
"src" : "345:13:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"id" : 37 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "345:13:2"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 38 ,
"name" : "OwnerManager" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1438 ,
"src" : "360:12:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_OwnerManager_$1438" ,
"typeString" : "contract OwnerManager"
}
} ,
"id" : 39 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "360:12:2"
}
] ,
"contractDependencies" : [
1142 ,
1438 ,
1559
] ,
"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 ,
"id" : 63 ,
"linearizedBaseContracts" : [
63 ,
1438 ,
1142 ,
1559
] ,
"name" : "GnosisSafe" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
2018-05-04 14:04:04 +00:00
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 61 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "788:206:2" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 52 ,
"name" : "_owners" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 42 ,
"src" : "810:7:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
2018-05-04 14:04:04 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 53 ,
"name" : "_threshold" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 44 ,
"src" : "819:10:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
2018-05-04 14:04:04 +00:00
} ,
{
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 51 ,
"name" : "setupOwners" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1230 ,
"src" : "798:11:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint8_$returns$__$" ,
"typeString" : "function (address[] memory,uint8)"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 54 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
2018-05-10 11:12:13 +00:00
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "798:32:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 55 ,
"nodeType" : "ExpressionStatement" ,
"src" : "798:32:2"
} ,
2018-05-04 14:04:04 +00:00
{
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"arguments" : [
{
"argumentTypes" : null ,
"id" : 57 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 46 ,
"src" : "978:2:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 58 ,
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 48 ,
"src" : "982:4:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 56 ,
"name" : "setupModules" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 926 ,
"src" : "965:12:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (address,bytes memory)"
}
} ,
"id" : 59 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "965:22:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 60 ,
"nodeType" : "ExpressionStatement" ,
"src" : "965:22:2"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +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." ,
"id" : 62 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
2018-05-10 11:12:13 +00:00
"isDeclaredConst" : false ,
2018-05-04 14:04:04 +00:00
"modifiers" : [ ] ,
2018-05-10 11:12:13 +00:00
"name" : "setup" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 49 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 42 ,
"name" : "_owners" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "708:17:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "address[]"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
"baseType" : {
2018-05-10 11:12:13 +00:00
"id" : 40 ,
2018-05-04 14:04:04 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "708:7:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 41 ,
2018-05-04 14:04:04 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "708:9:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "address[]"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-10 11:12:13 +00:00
} ,
2018-05-04 14:04:04 +00:00
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 44 ,
"name" : "_threshold" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "727:16:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 43 ,
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "727:5:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-10 11:12:13 +00:00
} ,
2018-05-04 14:04:04 +00:00
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 46 ,
"name" : "to" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "745:10:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 45 ,
"name" : "address" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "745:7:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-10 11:12:13 +00:00
} ,
2018-05-04 14:04:04 +00:00
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 48 ,
"name" : "data" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "757:10:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 47 ,
"name" : "bytes" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "757:5:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "707:61:2"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 50 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "788:0:2"
} ,
"scope" : 63 ,
"src" : "693:301:2" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
"scope" : 64 ,
"src" : "322:674:2"
}
] ,
"src" : "0:997:2"
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/GnosisSafe.sol" ,
"exportedSymbols" : {
"GnosisSafe" : [
63
]
} ,
"id" : 64 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 32 ,
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
"src" : "0:23:2"
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "./Module.sol" ,
"id" : 33 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 878 ,
"src" : "24:22:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "./ModuleManager.sol" ,
"id" : 34 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 1143 ,
"src" : "47:29:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "./OwnerManager.sol" ,
"id" : 35 ,
"nodeType" : "ImportDirective" ,
"scope" : 64 ,
"sourceUnit" : 1439 ,
"src" : "77:28:2" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 36 ,
"name" : "ModuleManager" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1142 ,
"src" : "345:13:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"id" : 37 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "345:13:2"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 38 ,
"name" : "OwnerManager" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1438 ,
"src" : "360:12:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_OwnerManager_$1438" ,
"typeString" : "contract OwnerManager"
}
} ,
"id" : 39 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "360:12:2"
}
] ,
"contractDependencies" : [
1142 ,
1438 ,
1559
] ,
"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 ,
"id" : 63 ,
"linearizedBaseContracts" : [
63 ,
1438 ,
1142 ,
1559
] ,
"name" : "GnosisSafe" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
2018-05-04 14:04:04 +00:00
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 61 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "788:206:2" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
2018-05-10 11:12:13 +00:00
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 52 ,
"name" : "_owners" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 42 ,
"src" : "810:7:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
2018-05-04 14:04:04 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 53 ,
"name" : "_threshold" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 44 ,
"src" : "819:10:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
} ,
{
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 51 ,
"name" : "setupOwners" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1230 ,
"src" : "798:11:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint8_$returns$__$" ,
"typeString" : "function (address[] memory,uint8)"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 54 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-10 11:12:13 +00:00
"src" : "798:32:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 55 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "798:32:2"
2018-05-04 14:04:04 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"arguments" : [
2018-05-04 14:04:04 +00:00
{
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 57 ,
"name" : "to" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 46 ,
"src" : "978:2:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-04 14:04:04 +00:00
}
} ,
{
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 58 ,
"name" : "data" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 48 ,
"src" : "982:4:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
2018-05-04 14:04:04 +00:00
}
2018-05-10 11:12:13 +00:00
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
] ,
"id" : 56 ,
"name" : "setupModules" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 926 ,
"src" : "965:12:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$__$" ,
"typeString" : "function (address,bytes memory)"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 59 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "965:22:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"id" : 60 ,
"nodeType" : "ExpressionStatement" ,
"src" : "965:22:2"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +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." ,
"id" : 62 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
2018-05-10 11:12:13 +00:00
"isDeclaredConst" : false ,
2018-05-04 14:04:04 +00:00
"modifiers" : [ ] ,
2018-05-10 11:12:13 +00:00
"name" : "setup" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 49 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 42 ,
"name" : "_owners" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 62 ,
"src" : "708:17:2" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
"id" : 40 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "708:7:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"id" : 41 ,
"length" : null ,
"nodeType" : "ArrayTypeName" ,
"src" : "708:9:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 44 ,
"name" : "_threshold" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "727:16:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 43 ,
"name" : "uint8" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "727:5:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
2018-05-10 11:12:13 +00:00
} ,
2018-05-04 14:04:04 +00:00
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 46 ,
"name" : "to" ,
2018-05-04 14:04:04 +00:00
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 62 ,
"src" : "745:10:2" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 45 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "745:7:2" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 48 ,
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 62 ,
"src" : "757:10:2" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
"id" : 47 ,
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "757:5:2" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "707:61:2"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 50 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "788:0:2"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"scope" : 63 ,
"src" : "693:301:2" ,
"stateMutability" : "nonpayable" ,
2018-05-04 14:04:04 +00:00
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-05-10 11:12:13 +00:00
"scope" : 64 ,
"src" : "322:674:2"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "0:997:2"
2018-05-04 14:04:04 +00:00
} ,
"compiler" : {
"name" : "solc" ,
2018-05-10 11:12:13 +00:00
"version" : "0.4.23+commit.124ca40d.Emscripten.clang"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"networks" : { } ,
2018-05-04 14:04:04 +00:00
"schemaVersion" : "2.0.0" ,
2018-05-10 11:12:13 +00:00
"updatedAt" : "2018-05-10T10:43:07.892Z"
2018-05-04 14:04:04 +00:00
}