2018-05-10 11:12:13 +00:00
{
"contractName" : "WhitelistModule" ,
"abi" : [
{
"constant" : true ,
"inputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"name" : "isWhitelisted" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "manager" ,
"outputs" : [
{
"name" : "" ,
"type" : "address"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "_masterCopy" ,
"type" : "address"
}
] ,
"name" : "changeMasterCopy" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "NAME" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "VERSION" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "accounts" ,
"type" : "address[]"
}
] ,
"name" : "setup" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "account" ,
"type" : "address"
}
] ,
"name" : "addToWhitelist" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "account" ,
"type" : "address"
}
] ,
"name" : "removeFromWhitelist" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
}
] ,
"name" : "executeWhitelisted" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
}
] ,
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 50610 c 6e806100206000396000 f 300608060405260043610610099576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680632 f 2 f 3 b e 11461009e5780633 a f 32 a b f 14610149578063481 c 6 a 75146101 a 45780637 d e 7 e d e f 146101 f b 5780638 a b 1 d 6811461023e578063 a 3 f 4 d f 7e14610281578063 b d 5 b 853 b 14610311578063e43252 d 714610377578063 f f a 1 a d 74146103 b a 575 b 600080 f d 5 b 3480156100 a a 57600080 f d 5 b 5061012 f 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 16020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061044 a 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561015557600080 f d 5 b 5061018 a 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610733565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156101 b 0 57600080 f d 5 b 506101 b 9610753565 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 34801561020757600080 f d 5 b 5061023 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 169060200190929190505050610779565 b 0 0 5 b 34801561024 a 57600080 f d 5 b 5061027 f 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061083e565 b 0 0 5 b 34801561028 d 57600080 f d 5 b 5061029661094 d 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156102 d 65780820151818401526020810190506102 b b 565 b 50505050905090810190601 f 1680156103035780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561031 d 57600080 f d 5 b 5061037560048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050610986565 b 0 0 5 b 34801561038357600080 f d 5 b 506103 b 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 a 49565 b 0 0 5 b 3480156103 c 657600080 f d 5 b 506103 c f 610 b 7 f 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 8381101561040 f 5780820151818401526020810190506103 f 4565 b 50505050905090810190601 f 16801561043 c 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 6000600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 16632 f 54 b f 6e336040518263 f f f f f f f f 167 c 0 100000000000000000000000000000000000000000000000000000000028152600401808273 f f f f f f f f f f f f f f f f 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 168152602001915050602060405180830381600087803 b 15801561050957600080 f d 5 b 505 a f 115801561051 d 573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 602081101561053357600080 f d 5 b 8101908080519060200190929190505050151561054 f 57600080 f d 5 b 600260008573 f f f f f f f f f f f f f f f f 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 16815260200190815260200160002060009054906101000 a 900460 f f 1615156105 a 757600080 f d 5 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 1663 b 0 21640 a 85858560006040518563 f f f f f f f f 167 c 0 100000000000000000000000000000000000000000000000000000000028152600401808573 f f f f f f f f f f f f f f f f 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 1681526020018481526020018060200183600281111561066157 f e 5 b 60 f f 168152602001828103825284818151815260200191508051906020019080838360005 b 838110156106 a 1578082015181840152602081019050610686565 b 50505050905090810190601 f 1680156106 c e 5780820380516001836020036101000 a 0 31916815260200191505 b 5095505050505050602060405180830381600087803 b 1580156106 f 0 57600080 f d 5 b 505 a f 1158015610704573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 602081101561071 a 57600080 f d 5 b 8101908080519060200190929190505050509392505050565 b 60026020528060005260406000206000915054906101000 a 900460 f f 1681565 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1681565 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 163373 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 161415156107 d 557600080 f d 5 b 60
"deployedBytecode" : " 0 x 608060405260043610610099576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 1680632 f 2 f 3 b e 11461009e5780633 a f 32 a b f 14610149578063481 c 6 a 75146101 a 45780637 d e 7 e d e f 146101 f b 5780638 a b 1 d 6811461023e578063 a 3 f 4 d f 7e14610281578063 b d 5 b 853 b 14610311578063e43252 d 714610377578063 f f a 1 a d 74146103 b a 575 b 600080 f d 5 b 3480156100 a a 57600080 f d 5 b 5061012 f 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190803590602001908201803590602001908080601 f 0 16020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061044 a 565 b 604051808215151515815260200191505060405180910390 f 35 b 34801561015557600080 f d 5 b 5061018 a 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190505050610733565 b 604051808215151515815260200191505060405180910390 f 35 b 3480156101 b 0 57600080 f d 5 b 506101 b 9610753565 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 34801561020757600080 f d 5 b 5061023 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 169060200190929190505050610779565 b 0 0 5 b 34801561024 a 57600080 f d 5 b 5061027 f 600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061083e565 b 0 0 5 b 34801561028 d 57600080 f d 5 b 5061029661094 d 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156102 d 65780820151818401526020810190506102 b b 565 b 50505050905090810190601 f 1680156103035780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561031 d 57600080 f d 5 b 5061037560048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050610986565 b 0 0 5 b 34801561038357600080 f d 5 b 506103 b 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 a 49565 b 0 0 5 b 3480156103 c 657600080 f d 5 b 506103 c f 610 b 7 f 565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 8381101561040 f 5780820151818401526020810190506103 f 4565 b 50505050905090810190601 f 16801561043 c 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 6000600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 16632 f 54 b f 6e336040518263 f f f f f f f f 167 c 0 100000000000000000000000000000000000000000000000000000000028152600401808273 f f f f f f f f f f f f f f f f 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 168152602001915050602060405180830381600087803 b 15801561050957600080 f d 5 b 505 a f 115801561051 d 573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 602081101561053357600080 f d 5 b 8101908080519060200190929190505050151561054 f 57600080 f d 5 b 600260008573 f f f f f f f f f f f f f f f f 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 16815260200190815260200160002060009054906101000 a 900460 f f 1615156105 a 757600080 f d 5 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 1663 b 0 21640 a 85858560006040518563 f f f f f f f f 167 c 0 100000000000000000000000000000000000000000000000000000000028152600401808573 f f f f f f f f f f f f f f f f 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 1681526020018481526020018060200183600281111561066157 f e 5 b 60 f f 168152602001828103825284818151815260200191508051906020019080838360005 b 838110156106 a 1578082015181840152602081019050610686565 b 50505050905090810190601 f 1680156106 c e 5780820380516001836020036101000 a 0 31916815260200191505 b 5095505050505050602060405180830381600087803 b 1580156106 f 0 57600080 f d 5 b 505 a f 1158015610704573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 602081101561071 a 57600080 f d 5 b 8101908080519060200190929190505050509392505050565 b 60026020528060005260406000206000915054906101000 a 900460 f f 1681565 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1681565 b 600160009054906101000 a 900473 f f f f f f f f f f f f f f f f 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 163373 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 161415156107 d 557600080 f d 5 b 60008173 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1614151515
"sourceMap" : "289:1947:21:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;289:1947:21;;;;;;;" ,
"deployedSourceMap" : "289:1947:21:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1864:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1864:370:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;498:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;498:46:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;262:28:8;;8:9:-1;5:2;;;30:1;27;20:12;5:2;262:28:8;;;;;;;;;;;;;;;;;;;;;;;;;;;626:208:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;626:208:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;1438:172:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1438:172:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;331:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;331:48:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;331:48:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;667:270;;8:9:-1;5:2;;;30:1;27;20:12;5:2;667:270:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1086:198;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1086:198:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;385:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;385:40:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;385:40:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1864:370;1963:4;2093:7;;;;;;;;;;;2080:29;;;2110:10;2080:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2080:41:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2080:41:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2080:41:21;;;;;;;;;;;;;;;;2072:50;;;;;;;;2140:13;:17;2154:2;2140:17;;;;;;;;;;;;;;;;;;;;;;;;;2132:26;;;;;;;;2168:7;;;;;;;;;;;:21;;;2190:2;2194:5;2201:4;2207:19;2168:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;2168:59:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2168:59:21;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2168:59:21;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2168:59:21;;;;;;;;;;;;;;;;;1864:370;;;;;:::o;498:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;262:28:8:-;;;;;;;;;;;;;:::o;626:208:6:-;359:7:8;;;;;;;;;;;337:30;;:10;:30;;;329:39;;;;;;;;791:1:6;776:11;:16;;;;768:25;;;;;;;;816:11;803:10;;:24;;;;;;;;;;;;;;;;;;626:208;:::o;1438:172:21:-;359:7:8;;;;;;;;;;;337:30;;:10;:30;;;329:39;;;;;;;;1540:13:21;:22;1554:7;1540:22;;;;;;;;;;;;;;;;;;;;;;;;;1532:31;;;;;;;;1598:5;1573:13;:22;1587:7;1573:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;1438:172;:::o;331:48::-;;;;;;;;;;;;;;;;;;;;:::o;667:270::-;758:9;813:15;731:12;:10;:12::i;:::-;770:1;758:13;;753:178;777:8;:15;773:1;:19;753:178;;;831:8;840:1;831:11;;;;;;;;;;;;;;;;;;813:29;;875:1;864:7;:12;;;;856:21;;;;;;;;916:4;891:13;:22;905:7;891:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;794:3;;;;;;;753:178;;;667:270;;;:::o;1086:198::-;359:7:8;;;;;;;;;;;337:30;;:10;:30;;;329:39;;;;;;;;1194:1:21;1183:7;:12;;;;1175:21;;;;;;;;1215:13;:22;1229:7;1215:22;;;;;;;;;;;;;;;;;;;;;;;;;1214:23;1206:32;;;;;;;;1273:4;1248:13;:22;1262:7;1248:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;1086:198;:::o;385:40::-;;;;;;;;;;;;;;;;;;;;:::o;392:268:8:-;606:1;594:7;;;;;;;;;;;586:21;;;578:30;;;;;;;;642:10;618:7;;:35;;;;;;;;;;;;;;;;;;392:268::o" ,
"source" : "pragma solidity 0.4.23;\nimport \"../Enum.sol\";\nimport \"../Module.sol\";\nimport \"../ModuleManager.sol\";\nimport \"../OwnerManager.sol\";\n\n\n/// @title Whitelist Module - Allows to execute transactions to whitelisted addresses without confirmations.\n/// @author Stefan George - <stefan@gnosis.pm>\ncontract WhitelistModule is Module {\n\n string public constant NAME = \"Whitelist Module\";\n string public constant VERSION = \"0.0.1\";\n\n // isWhitelisted mapping maps destination address to boolean.\n mapping (address => bool) public isWhitelisted;\n\n /// @dev Setup function sets initial storage of contract.\n /// @param accounts List of whitelisted accounts.\n function setup(address[] accounts)\n public\n {\n setManager();\n for (uint256 i = 0; i < accounts.length; i++) {\n address account = accounts[i];\n require(account != 0);\n isWhitelisted[account] = true;\n }\n }\n\n /// @dev Allows to add destination to whitelist. This can only be done via a Safe transaction.\n /// @param account Destination address.\n function addToWhitelist(address account)\n public\n authorized\n {\n require(account != 0);\n require(!isWhitelisted[account]);\n isWhitelisted[account] = true;\n }\n\n /// @dev Allows to remove destination from whitelist. This can only be done via a Safe transaction.\n /// @param account Destination address.\n function removeFromWhitelist(address account)\n public\n authorized\n {\n require(isWhitelisted[account]);\n isWhitelisted[account] = false;\n }\n\n /// @dev Returns if Safe transaction is to a whitelisted destination.\n /// @param to Whitelisted destination address.\n /// @param value Not checked.\n /// @param data Not checked.\n /// @return Returns if transaction can be executed.\n function executeWhitelisted(address to, uint256 value, bytes data)\n public\n returns (bool)\n {\n // Only Safe owners are allowed to execute transactions to whitelisted accounts.\n require(OwnerManager(manager).isOwner(msg.sender));\n require(isWhitelisted[to]);\n manager.executeModule(to, value, data, Enum.Operation.Call);\n }\n}\n" ,
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/WhitelistModule.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/WhitelistModule.sol" ,
"exportedSymbols" : {
"WhitelistModule" : [
2450
]
} ,
"id" : 2451 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 2306 ,
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
"src" : "0:23:21"
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Enum.sol" ,
"file" : "../Enum.sol" ,
"id" : 2307 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 31 ,
"src" : "24:21:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "../Module.sol" ,
"id" : 2308 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 878 ,
"src" : "46:23:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "../ModuleManager.sol" ,
"id" : 2309 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 1143 ,
"src" : "70:30:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "../OwnerManager.sol" ,
"id" : 2310 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 1439 ,
"src" : "101:29:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 2311 ,
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 877 ,
"src" : "317:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_Module_$877" ,
"typeString" : "contract Module"
}
} ,
"id" : 2312 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "317:6:21"
}
] ,
"contractDependencies" : [
779 ,
877 ,
1559
] ,
"contractKind" : "contract" ,
"documentation" : "@title Whitelist Module - Allows to execute transactions to whitelisted addresses without confirmations.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
"id" : 2450 ,
"linearizedBaseContracts" : [
2450 ,
877 ,
779 ,
1559
] ,
"name" : "WhitelistModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
"id" : 2315 ,
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "331:48:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 2313 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "331:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "57686974656c697374204d6f64756c65" ,
"id" : 2314 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "361:18:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_84d69d03a7c747e8eefe7cc2b9e87b566cfc57cc90e4ed88f03f9c9780b7d4e6" ,
"typeString" : "literal_string \"Whitelist Module\""
} ,
"value" : "Whitelist Module"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
"id" : 2318 ,
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "385:40:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 2316 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "385:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
"id" : 2317 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "418:7:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
"id" : 2322 ,
"name" : "isWhitelisted" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "498:46:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
} ,
"typeName" : {
"id" : 2321 ,
"keyType" : {
"id" : 2319 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "507:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "498:25:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
} ,
"valueType" : {
"id" : 2320 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "518:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2362 ,
"nodeType" : "Block" ,
"src" : "721:216:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
"id" : 2328 ,
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 876 ,
"src" : "731:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
"id" : 2329 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "731:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2330 ,
"nodeType" : "ExpressionStatement" ,
"src" : "731:12:21"
} ,
{
"body" : {
"id" : 2360 ,
"nodeType" : "Block" ,
"src" : "799:132:21" ,
"statements" : [
{
"assignments" : [
2343
] ,
"declarations" : [
{
"constant" : false ,
"id" : 2343 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "813:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2342 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "813:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 2347 ,
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2344 ,
"name" : "accounts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2325 ,
"src" : "831:8:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
"id" : 2346 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2345 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "840:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "831:11:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "813:29:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 2351 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2349 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2343 ,
"src" : "864:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2350 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "875:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "864:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2348 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "856:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2352 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "856:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2353 ,
"nodeType" : "ExpressionStatement" ,
"src" : "856:21:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2358 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2354 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "891:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2356 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2355 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2343 ,
"src" : "905:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "891:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 2357 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "916:4:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"src" : "891:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2359 ,
"nodeType" : "ExpressionStatement" ,
"src" : "891:29:21"
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 2338 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2335 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "773:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2336 ,
"name" : "accounts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2325 ,
"src" : "777:8:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
"id" : 2337 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "777:15:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "773:19:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2361 ,
"initializationExpression" : {
"assignments" : [
2332
] ,
"declarations" : [
{
"constant" : false ,
"id" : 2332 ,
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "758:9:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 2331 ,
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "758:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 2334 ,
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2333 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "770:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "758:13:21"
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
"id" : 2340 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
"src" : "794:3:21" ,
"subExpression" : {
"argumentTypes" : null ,
"id" : 2339 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "794:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 2341 ,
"nodeType" : "ExpressionStatement" ,
"src" : "794:3:21"
} ,
"nodeType" : "ForStatement" ,
"src" : "753:178:21"
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param accounts List of whitelisted accounts." ,
"id" : 2363 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2326 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2325 ,
"name" : "accounts" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "682:18:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
"id" : 2323 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "682:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"id" : 2324 ,
"length" : null ,
"nodeType" : "ArrayTypeName" ,
"src" : "682:9:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "681:20:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2327 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "721:0:21"
} ,
"scope" : 2450 ,
"src" : "667:270:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2389 ,
"nodeType" : "Block" ,
"src" : "1165:119:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 2373 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2371 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1183:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2372 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1194:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "1183:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2370 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1175:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2374 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1175:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2375 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1175:21:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2380 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
"src" : "1214:23:21" ,
"subExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2377 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1215:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2379 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2378 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1229:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1215:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2376 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1206:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2381 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1206:32:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2382 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1206:32:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2387 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2383 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1248:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2385 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2384 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1262:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1248:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 2386 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1273:4:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"src" : "1248:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2388 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1248:29:21"
}
]
} ,
"documentation" : "@dev Allows to add destination to whitelist. This can only be done via a Safe transaction.\n @param account Destination address." ,
"id" : 2390 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
"id" : 2368 ,
"modifierName" : {
"argumentTypes" : null ,
"id" : 2367 ,
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 857 ,
"src" : "1150:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
"src" : "1150:10:21"
}
] ,
"name" : "addToWhitelist" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2366 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2365 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2390 ,
"src" : "1110:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2364 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1110:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1109:17:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2369 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1165:0:21"
} ,
"scope" : 2450 ,
"src" : "1086:198:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2409 ,
"nodeType" : "Block" ,
"src" : "1522:88:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2398 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1540:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2400 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2399 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2392 ,
"src" : "1554:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1540:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2397 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1532:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2401 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1532:31:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2402 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1532:31:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2407 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2403 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1573:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2405 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2404 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2392 ,
"src" : "1587:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1573:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
"id" : 2406 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1598:5:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
"src" : "1573:30:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2408 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1573:30:21"
}
]
} ,
"documentation" : "@dev Allows to remove destination from whitelist. This can only be done via a Safe transaction.\n @param account Destination address." ,
"id" : 2410 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
"id" : 2395 ,
"modifierName" : {
"argumentTypes" : null ,
"id" : 2394 ,
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 857 ,
"src" : "1507:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
"src" : "1507:10:21"
}
] ,
"name" : "removeFromWhitelist" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2393 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2392 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2410 ,
"src" : "1467:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2391 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1467:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1466:17:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2396 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1522:0:21"
} ,
"scope" : 2450 ,
"src" : "1438:172:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2448 ,
"nodeType" : "Block" ,
"src" : "1973:261:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2426 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2465 ,
"src" : "2110:3:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 2427 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "2110:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
] ,
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2423 ,
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 844 ,
"src" : "2093:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
] ,
"id" : 2422 ,
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1438 ,
"src" : "2080:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1438_$" ,
"typeString" : "type(contract OwnerManager)"
}
} ,
"id" : 2424 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2080:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_OwnerManager_$1438" ,
"typeString" : "contract OwnerManager"
}
} ,
"id" : 2425 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 1428 ,
"src" : "2080:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_view$_t_address_$returns$_t_bool_$" ,
"typeString" : "function (address) view external returns (bool)"
}
} ,
"id" : 2428 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2080:41:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2421 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "2072:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2429 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2072:50:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2430 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2072:50:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2432 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "2140:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2434 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2433 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2412 ,
"src" : "2154:2:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2140:17:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2431 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "2132:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2435 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2132:26:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2436 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2132:26:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2440 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2412 ,
"src" : "2190:2:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 2441 ,
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2414 ,
"src" : "2194:5:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 2442 ,
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2416 ,
"src" : "2201:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2443 ,
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
"src" : "2207:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
"id" : 2444 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
"src" : "2207:14:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
"id" : 2445 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "2207:19:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 2437 ,
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 844 ,
"src" : "2168:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
} ,
"id" : 2439 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "executeModule" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 1033 ,
"src" : "2168:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
"id" : 2446 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2168:59:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2447 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2168:59:21"
}
]
} ,
"documentation" : "@dev Returns if Safe transaction is to a whitelisted destination.\n @param to Whitelisted destination address.\n @param value Not checked.\n @param data Not checked.\n @return Returns if transaction can be executed." ,
"id" : 2449 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeWhitelisted" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2417 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2412 ,
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1892:10:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2411 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1892:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 2414 ,
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1904:13:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 2413 ,
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1904:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 2416 ,
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1919:10:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
"id" : 2415 ,
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1919:5:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1891:39:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2420 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2419 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1963:4:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 2418 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1963:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1962:6:21"
} ,
"scope" : 2450 ,
"src" : "1864:370:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
"scope" : 2451 ,
"src" : "289:1947:21"
}
] ,
"src" : "0:2237:21"
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/WhitelistModule.sol" ,
"exportedSymbols" : {
"WhitelistModule" : [
2450
]
} ,
"id" : 2451 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 2306 ,
"literals" : [
"solidity" ,
"0.4" ,
".23"
] ,
"nodeType" : "PragmaDirective" ,
"src" : "0:23:21"
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Enum.sol" ,
"file" : "../Enum.sol" ,
"id" : 2307 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 31 ,
"src" : "24:21:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "../Module.sol" ,
"id" : 2308 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 878 ,
"src" : "46:23:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "../ModuleManager.sol" ,
"id" : 2309 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 1143 ,
"src" : "70:30:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "../OwnerManager.sol" ,
"id" : 2310 ,
"nodeType" : "ImportDirective" ,
"scope" : 2451 ,
"sourceUnit" : 1439 ,
"src" : "101:29:21" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 2311 ,
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 877 ,
"src" : "317:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_Module_$877" ,
"typeString" : "contract Module"
}
} ,
"id" : 2312 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "317:6:21"
}
] ,
"contractDependencies" : [
779 ,
877 ,
1559
] ,
"contractKind" : "contract" ,
"documentation" : "@title Whitelist Module - Allows to execute transactions to whitelisted addresses without confirmations.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
"id" : 2450 ,
"linearizedBaseContracts" : [
2450 ,
877 ,
779 ,
1559
] ,
"name" : "WhitelistModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
"id" : 2315 ,
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "331:48:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 2313 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "331:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "57686974656c697374204d6f64756c65" ,
"id" : 2314 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "361:18:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_84d69d03a7c747e8eefe7cc2b9e87b566cfc57cc90e4ed88f03f9c9780b7d4e6" ,
"typeString" : "literal_string \"Whitelist Module\""
} ,
"value" : "Whitelist Module"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
"id" : 2318 ,
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "385:40:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 2316 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "385:6:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
"id" : 2317 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "418:7:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
"id" : 2322 ,
"name" : "isWhitelisted" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2450 ,
"src" : "498:46:21" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
} ,
"typeName" : {
"id" : 2321 ,
"keyType" : {
"id" : 2319 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "507:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "498:25:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
} ,
"valueType" : {
"id" : 2320 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "518:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2362 ,
"nodeType" : "Block" ,
"src" : "721:216:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
"id" : 2328 ,
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 876 ,
"src" : "731:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
"id" : 2329 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "731:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2330 ,
"nodeType" : "ExpressionStatement" ,
"src" : "731:12:21"
} ,
{
"body" : {
"id" : 2360 ,
"nodeType" : "Block" ,
"src" : "799:132:21" ,
"statements" : [
{
"assignments" : [
2343
] ,
"declarations" : [
{
"constant" : false ,
"id" : 2343 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "813:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2342 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "813:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 2347 ,
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2344 ,
"name" : "accounts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2325 ,
"src" : "831:8:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
"id" : 2346 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2345 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "840:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "831:11:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "813:29:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 2351 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2349 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2343 ,
"src" : "864:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2350 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "875:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "864:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2348 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "856:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2352 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "856:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2353 ,
"nodeType" : "ExpressionStatement" ,
"src" : "856:21:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2358 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2354 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "891:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2356 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2355 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2343 ,
"src" : "905:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "891:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 2357 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "916:4:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"src" : "891:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2359 ,
"nodeType" : "ExpressionStatement" ,
"src" : "891:29:21"
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 2338 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2335 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "773:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2336 ,
"name" : "accounts" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2325 ,
"src" : "777:8:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
"id" : 2337 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "777:15:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "773:19:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2361 ,
"initializationExpression" : {
"assignments" : [
2332
] ,
"declarations" : [
{
"constant" : false ,
"id" : 2332 ,
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "758:9:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 2331 ,
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "758:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 2334 ,
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2333 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "770:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "758:13:21"
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
"id" : 2340 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
"src" : "794:3:21" ,
"subExpression" : {
"argumentTypes" : null ,
"id" : 2339 ,
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2332 ,
"src" : "794:1:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 2341 ,
"nodeType" : "ExpressionStatement" ,
"src" : "794:3:21"
} ,
"nodeType" : "ForStatement" ,
"src" : "753:178:21"
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param accounts List of whitelisted accounts." ,
"id" : 2363 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2326 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2325 ,
"name" : "accounts" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2363 ,
"src" : "682:18:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
"id" : 2323 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "682:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"id" : 2324 ,
"length" : null ,
"nodeType" : "ArrayTypeName" ,
"src" : "682:9:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "681:20:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2327 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "721:0:21"
} ,
"scope" : 2450 ,
"src" : "667:270:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2389 ,
"nodeType" : "Block" ,
"src" : "1165:119:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 2373 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 2371 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1183:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 2372 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1194:1:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "1183:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2370 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1175:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2374 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1175:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2375 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1175:21:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2380 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "!" ,
"prefix" : true ,
"src" : "1214:23:21" ,
"subExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2377 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1215:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2379 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2378 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1229:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1215:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2376 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1206:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2381 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1206:32:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2382 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1206:32:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2387 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2383 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1248:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2385 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2384 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2365 ,
"src" : "1262:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1248:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 2386 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1273:4:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"src" : "1248:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2388 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1248:29:21"
}
]
} ,
"documentation" : "@dev Allows to add destination to whitelist. This can only be done via a Safe transaction.\n @param account Destination address." ,
"id" : 2390 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
"id" : 2368 ,
"modifierName" : {
"argumentTypes" : null ,
"id" : 2367 ,
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 857 ,
"src" : "1150:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
"src" : "1150:10:21"
}
] ,
"name" : "addToWhitelist" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2366 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2365 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2390 ,
"src" : "1110:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2364 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1110:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1109:17:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2369 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1165:0:21"
} ,
"scope" : 2450 ,
"src" : "1086:198:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2409 ,
"nodeType" : "Block" ,
"src" : "1522:88:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2398 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1540:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2400 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2399 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2392 ,
"src" : "1554:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1540:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2397 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "1532:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2401 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1532:31:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2402 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1532:31:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 2407 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2403 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "1573:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2405 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2404 ,
"name" : "account" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2392 ,
"src" : "1587:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1573:22:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
"id" : 2406 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1598:5:21" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
"src" : "1573:30:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2408 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1573:30:21"
}
]
} ,
"documentation" : "@dev Allows to remove destination from whitelist. This can only be done via a Safe transaction.\n @param account Destination address." ,
"id" : 2410 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
"id" : 2395 ,
"modifierName" : {
"argumentTypes" : null ,
"id" : 2394 ,
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 857 ,
"src" : "1507:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
"src" : "1507:10:21"
}
] ,
"name" : "removeFromWhitelist" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2393 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2392 ,
"name" : "account" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2410 ,
"src" : "1467:15:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2391 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1467:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1466:17:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2396 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1522:0:21"
} ,
"scope" : 2450 ,
"src" : "1438:172:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 2448 ,
"nodeType" : "Block" ,
"src" : "1973:261:21" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2426 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2465 ,
"src" : "2110:3:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 2427 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "2110:10:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
] ,
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2423 ,
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 844 ,
"src" : "2093:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
] ,
"id" : 2422 ,
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1438 ,
"src" : "2080:12:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1438_$" ,
"typeString" : "type(contract OwnerManager)"
}
} ,
"id" : 2424 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2080:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_OwnerManager_$1438" ,
"typeString" : "contract OwnerManager"
}
} ,
"id" : 2425 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 1428 ,
"src" : "2080:29:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_view$_t_address_$returns$_t_bool_$" ,
"typeString" : "function (address) view external returns (bool)"
}
} ,
"id" : 2428 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2080:41:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2421 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "2072:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2429 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2072:50:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2430 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2072:50:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 2432 ,
"name" : "isWhitelisted" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2322 ,
"src" : "2140:13:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_bool_$" ,
"typeString" : "mapping(address => bool)"
}
} ,
"id" : 2434 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 2433 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2412 ,
"src" : "2154:2:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2140:17:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
"id" : 2431 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "2132:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
"id" : 2435 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2132:26:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 2436 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2132:26:21"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 2440 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2412 ,
"src" : "2190:2:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 2441 ,
"name" : "value" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2414 ,
"src" : "2194:5:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 2442 ,
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 2416 ,
"src" : "2201:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 2443 ,
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
"src" : "2207:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
"id" : 2444 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
"src" : "2207:14:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
"id" : 2445 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "2207:19:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
"id" : 2437 ,
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 844 ,
"src" : "2168:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_ModuleManager_$1142" ,
"typeString" : "contract ModuleManager"
}
} ,
"id" : 2439 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "executeModule" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 1033 ,
"src" : "2168:21:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$29_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
"id" : 2446 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2168:59:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"id" : 2447 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2168:59:21"
}
]
} ,
"documentation" : "@dev Returns if Safe transaction is to a whitelisted destination.\n @param to Whitelisted destination address.\n @param value Not checked.\n @param data Not checked.\n @return Returns if transaction can be executed." ,
"id" : 2449 ,
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeWhitelisted" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 2417 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2412 ,
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1892:10:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 2411 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1892:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 2414 ,
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1904:13:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 2413 ,
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1904:7:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 2416 ,
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1919:10:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
"id" : 2415 ,
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1919:5:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1891:39:21"
} ,
"payable" : false ,
"returnParameters" : {
"id" : 2420 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 2419 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 2449 ,
"src" : "1963:4:21" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 2418 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1963:4:21" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1962:6:21"
} ,
"scope" : 2450 ,
"src" : "1864:370:21" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
"scope" : 2451 ,
"src" : "289:1947:21"
}
] ,
"src" : "0:2237:21"
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.4.23+commit.124ca40d.Emscripten.clang"
} ,
"networks" : {
"4" : {
"events" : { } ,
"links" : { } ,
"address" : "0x24d0b7e09df660a37cdcf7745a66099ba6f2e304" ,
"transactionHash" : "0xe045ab6835acf1d5eb2146cea094d790127f84db7cd961f44b8e25883567cd75"
} ,
"1525950336085" : {
"events" : { } ,
"links" : { } ,
"address" : "0x15fd83fcf27f1726e692389be1b6e03fe7d56bb6" ,
"transactionHash" : "0xc7f84311daf6a72740fe5822cd6007cec3ce1ff6aeaf454559f3e5f36c81cfd8"
2018-05-14 07:48:41 +00:00
} ,
"1526283540628" : {
"events" : { } ,
"links" : { } ,
"address" : "0x536f677993e3eada3e17f2f42888ee777441fc3e" ,
"transactionHash" : "0xc7f84311daf6a72740fe5822cd6007cec3ce1ff6aeaf454559f3e5f36c81cfd8"
2018-05-10 11:12:13 +00:00
}
} ,
"schemaVersion" : "2.0.0" ,
2018-05-14 07:48:41 +00:00
"updatedAt" : "2018-05-14T07:39:37.968Z"
2018-05-10 11:12:13 +00:00
}