2018-05-31 13:01:02 +00:00
{
"contractName" : "DailyLimitModule" ,
"abi" : [
{
"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" : "" ,
"type" : "address"
}
] ,
"name" : "dailyLimits" ,
"outputs" : [
{
"name" : "dailyLimit" ,
"type" : "uint256"
} ,
{
"name" : "spentToday" ,
"type" : "uint256"
} ,
{
"name" : "lastDay" ,
"type" : "uint256"
}
] ,
"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" : "tokens" ,
"type" : "address[]"
} ,
{
"name" : "_dailyLimits" ,
"type" : "uint256[]"
}
] ,
"name" : "setup" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "token" ,
"type" : "address"
} ,
{
"name" : "dailyLimit" ,
"type" : "uint256"
}
] ,
"name" : "changeDailyLimit" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "token" ,
"type" : "address"
} ,
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "amount" ,
"type" : "uint256"
}
] ,
"name" : "executeDailyLimit" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "today" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
}
] ,
2018-06-28 17:13:59 +00:00
"bytecode" : " 0 x 608060405234801561001057600080 f d 5 b 5061129 b 806100206000396000 f 300608060405260043610610099576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 16806328814 f 0 31461009e578063481 c 6 a 751461014757806363 b a e 7 c 31461019e5780637 d e 7 e d e f 1461020 b 57806381 c 5e03 b 1461024e578063 a 3 f 4 d f 7e1461029 b 578063 b 74e452 b 1461032 b 578063 d 7 b f f c 9214610356578063 f f a 1 a d 74146103 b b 575 b 600080 f d 5 b 3480156100 a a 57600080 f d 5 b 50610145600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929050505061044 b 565 b 0 0 5 b 34801561015357600080 f d 5 b 5061015 c 6104 e a 565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 3480156101 a a 57600080 f d 5 b 50610209600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610510565 b 0 0 5 b 34801561021757600080 f d 5 b 5061024 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 169060200190929190505050610 d 0 0 565 b 0 0 5 b 34801561025 a 57600080 f d 5 b 50610299600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610 e e 3565 b 0 0 5 b 3480156102 a 757600080 f d 5 b 506102 b 0 611019565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156102 f 0 5780820151818401526020810190506102 d 5565 b 50505050905090810190601 f 16801561031 d 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561033757600080 f d 5 b 50610340611052565 b 6040518082815260200191505060405180910390 f 35 b 34801561036257600080 f d 5 b 50610397600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061106 a 565 b 60405180848152602001838152602001828152602001935050505060405180910390 f 35 b 3480156103 c 757600080 f d 5 b 506103 d 0 611094565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156104105780820151818401526020810190506103 f 5565 b 50505050905090810190601 f 16801561043 d 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 60006104556110 c d 565 b 600090505 b 82518110156104e557818181518110151561047157 f e 5 b 9060200190602002015160026000858481518110151561048 d 57 f e 5 b 9060200190602002015173 f f f f f f f f f f f f f f f f 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 16815260200190815260200160002060000181905550808060010191505061045 a 565 b 505050565 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 6060600160009054906101000 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 1580156105 c f 57600080 f d 5 b 505 a f 11580156105e3573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 60208110156105 f 957600080 f d 5 b 810190808051906020019092919050505015156106 a 4576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 81526004018080602001828103825260258152602001807 f 4 d 6574686 f 642063616e206 f 6e6 c 792062652063616 c 6 c 656420627920616e2081526020017 f 6 f 776e657200000000000000000000000000000000000000000000000000000081525060400191505060405180910390 f d 5 b 60008373 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1614151515610733576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 815260040180806020018281038252601 b 8152602001807 f 496e76616 c 696420746 f 20616464726573732070726 f 7669646564000000000081525060200191505060405180910390 f d 5 b 6000821115156107 a b 576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 81526004018080602001828103825260178152602001807 f 496e76616 c 696420616 d 6 f 756e742070726 f 766964656400000000000000000081525060200191505060405180910390 f d 5 b 6107 b 584836111 c 0 565 b 1515610829576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
"deployedBytecode" : " 0 x 608060405260043610610099576000357 c 0 100000000000000000000000000000000000000000000000000000000900463 f f f f f f f f 16806328814 f 0 31461009e578063481 c 6 a 751461014757806363 b a e 7 c 31461019e5780637 d e 7 e d e f 1461020 b 57806381 c 5e03 b 1461024e578063 a 3 f 4 d f 7e1461029 b 578063 b 74e452 b 1461032 b 578063 d 7 b f f c 9214610356578063 f f a 1 a d 74146103 b b 575 b 600080 f d 5 b 3480156100 a a 57600080 f d 5 b 50610145600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929050505061044 b 565 b 0 0 5 b 34801561015357600080 f d 5 b 5061015 c 6104 e a 565 b 604051808273 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1673 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16815260200191505060405180910390 f 35 b 3480156101 a a 57600080 f d 5 b 50610209600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 169060200190929190803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610510565 b 0 0 5 b 34801561021757600080 f d 5 b 5061024 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 169060200190929190505050610 d 0 0 565 b 0 0 5 b 34801561025 a 57600080 f d 5 b 50610299600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919080359060200190929190505050610 e e 3565 b 0 0 5 b 3480156102 a 757600080 f d 5 b 506102 b 0 611019565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156102 f 0 5780820151818401526020810190506102 d 5565 b 50505050905090810190601 f 16801561031 d 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 34801561033757600080 f d 5 b 50610340611052565 b 6040518082815260200191505060405180910390 f 35 b 34801561036257600080 f d 5 b 50610397600480360381019080803573 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 16906020019092919050505061106 a 565 b 60405180848152602001838152602001828152602001935050505060405180910390 f 35 b 3480156103 c 757600080 f d 5 b 506103 d 0 611094565 b 6040518080602001828103825283818151815260200191508051906020019080838360005 b 838110156104105780820151818401526020810190506103 f 5565 b 50505050905090810190601 f 16801561043 d 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 60006104556110 c d 565 b 600090505 b 82518110156104e557818181518110151561047157 f e 5 b 9060200190602002015160026000858481518110151561048 d 57 f e 5 b 9060200190602002015173 f f f f f f f f f f f f f f f f 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 16815260200190815260200160002060000181905550808060010191505061045 a 565 b 505050565 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 6060600160009054906101000 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 1580156105 c f 57600080 f d 5 b 505 a f 11580156105e3573 d 6000803e3 d 6000 f d 5 b 505050506040513 d 60208110156105 f 957600080 f d 5 b 810190808051906020019092919050505015156106 a 4576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 81526004018080602001828103825260258152602001807 f 4 d 6574686 f 642063616e206 f 6e6 c 792062652063616 c 6 c 656420627920616e2081526020017 f 6 f 776e657200000000000000000000000000000000000000000000000000000081525060400191505060405180910390 f d 5 b 60008373 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 1614151515610733576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 815260040180806020018281038252601 b 8152602001807 f 496e76616 c 696420746 f 20616464726573732070726 f 7669646564000000000081525060200191505060405180910390 f d 5 b 6000821115156107 a b 576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 81526004018080602001828103825260178152602001807 f 496e76616 c 696420616 d 6 f 756e742070726 f 766964656400000000000000000081525060200191505060405180910390 f d 5 b 6107 b 584836111 c 0 565 b 1515610829576040517 f 0 8 c 379 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 815260040180806020018281038252601 c 8152
2018-06-29 11:23:01 +00:00
"sourceMap" : "296:3283:20:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;296:3283:20;;;;;;;" ,
"deployedSourceMap" : " 296 : 3283 : 20 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 918 : 222 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 918 : 222 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 262 : 28 : 8 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 262 : 28 : 8 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1890 : 987 : 20 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1890 : 987 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 : 5 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 626 : 248 : 5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1368 : 158 : 20 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1368 : 158 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 339 : 50 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 339 : 50 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 339 : 50 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3461 : 116 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3461 : 116 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 513 : 50 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 513 : 50 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 395 : 40 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 395 : 40 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 395 : 40 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 918 : 222 ; 1031 : 9 ; 1004 : 12 ; : 10 ; : 12 : : i ; : : : - ; 1043 : 1 ; 1031 : 13 ; ; 1026 : 107 ; 1050 : 6 ; : 13 ; 1046 : 1 ; : 17 ; 1026 : 107 ; ; ; 1118 : 12 ; 1131 : 1 ; 1118 : 15 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1082 : 11 ; : 22 ; 1094 : 6 ; 1101 : 1 ; 1094 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1082 : 22 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; : 51 ; ; ; ; 1065 : 3 ; ; ; ; ; ; ; 1026 : 107 ; ; ; 918 : 222 ; ; ; : : : o ; 262 : 28 : 8 : - ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 1890 : 987 : 20 : - ; 2647 : 17 ; 2087 : 7 ; ; ; ; ; ; ; ; ; ; ; 2074 : 29 ; ; ; 2104 : 10 ; 2074 : 41 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2074 : 41 : 20 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2074 : 41 : 20 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2074 : 41 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2066 : 91 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2181 : 1 ; 2175 : 2 ; : 7 ; ; ; ; 2167 : 47 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2241 : 1 ; 2232 : 6 ; : 10 ; 2224 : 46 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2352 : 27 ; 2365 : 5 ; 2372 : 6 ; 2352 : 12 ; : 27 : : i ; : : : - ; 2344 : 68 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2455 : 6 ; 2422 : 11 ; : 18 ; 2434 : 5 ; 2422 : 18 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 29 ; ; ; : 39 ; ; ; ; ; ; ; ; ; ; ; 2484 : 1 ; 2475 : 5 ; : 10 ; ; ; 2471 : 400 ; ; ; 2509 : 7 ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 2543 : 2 ; 2547 : 6 ; 2559 : 19 ; 2509 : 70 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2509 : 70 : 20 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2509 : 70 : 20 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2509 : 70 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2501 : 115 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2471 : 400 ; ; ; 2720 : 2 ; 2724 : 6 ; 2667 : 64 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 49 : 4 : -1 ; 39 : 7 ; 30 ; 26 : 21 ; 22 : 32 ; 13 : 7 ; 6 : 49 ; 2667 : 64 : 20 ; ; ; ; ; ; ; 38 : 4 : -1 ; 29 : 7 ; 25 : 18 ; 67 : 10 ; 61 : 17 ; 96 : 58 ; 199 : 8 ; 192 : 4 ; 186 ; 182 : 15 ; 179 : 29 ; 167 : 10 ; 160 : 49 ; 0 : 215 ; ; ; 2667 : 64 : 20 ; 2647 : 84 ; ; 2753 : 7 ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 2787 : 5 ; 2794 : 1 ; 2797 : 4 ; 2803 : 19 ; 2753 : 70 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 2753 : 70 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2753 : 70 : 20 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2753 : 70 : 20 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2753 : 70 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2745 : 115 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2471 : 400 ; 1890 : 987 ; ; ; ; : : : o ; 626 : 248 : 5 : - ; 359 : 7 : 8 ; ; ; ; ; ; ; ; ; ; ; 337 : 30 ; ; : 10 ; : 30 ; ; ; 329 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 791 : 1 : 5 ; 776 : 11 ; : 16 ; ; ; ; 768 : 65 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 856 : 11 ; 843 : 10 ; ; : 24 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 ; : : : o ; 1368 : 158 : 20 : - ; 359 : 7 : 8 ; ; ; ; ; ; ; ; ; ; ; 337 : 30 ; ; : 10 ; : 30 ; ; ; 329 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1509 : 10 : 20 ; 1477 : 11 ; : 18 ; 1489 : 5 ; 1477 : 18 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 29 ; ; : 42 ; ; ; ; 1368 : 158 ; ; : : : o ; 339 : 50 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 3461 : 116 : : - ; 3523 : 4 ; 3563 : 6 ; 3557 : 3 ; : 12 ; ; ; ; ; ; ; ; 3550 : 3 ; : 20 ; 3543 : 27 ; ; 3461 : 116 ; : : : o ; 513 : 50 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 395 : 40 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 434 : 300 : 8 : - ; 648 : 1 ; 636 : 7 ; ; ; ; ; ; ; ; ; ; ; 628 : 21 ; ; ; 620 : 62 ; ;
2018-06-28 17:13:59 +00:00
"source" : "pragma solidity 0.4.24;\nimport \"../Module.sol\";\nimport \"../ModuleManager.sol\";\nimport \"../OwnerManager.sol\";\nimport \"../Enum.sol\";\n\n\n/// @title Daily Limit Module - Allows to transfer limited amounts of ERC20 tokens and Ether without confirmations.\n/// @author Stefan George - <stefan@gnosis.pm>\ncontract DailyLimitModule is Module {\n\n string public constant NAME = \"Daily Limit Module\";\n string public constant VERSION = \"0.0.1\";\n\n // dailyLimits mapping maps token address to daily limit settings.\n mapping (address => DailyLimit) public dailyLimits;\n\n struct DailyLimit {\n uint256 dailyLimit;\n uint256 spentToday;\n uint256 lastDay;\n }\n\n /// @dev Setup function sets initial storage of contract.\n /// @param tokens List of token addresses. Ether is represented with address 0x0.\n /// @param _dailyLimits List of daily limits in smalles units (e.g. Wei for Ether).\n function setup(address[] tokens, uint256[] _dailyLimits)\n public\n {\n setManager();\n for (uint256 i = 0; i < tokens.length; i++)\n dailyLimits[tokens[i]].dailyLimit = _dailyLimits[i];\n }\n\n /// @dev Allows to update the daily limit for a specified token. This can only be done via a Safe transaction.\n /// @param token Token contract address.\n /// @param dailyLimit Daily limit in smallest token unit.\n function changeDailyLimit(address token, uint256 dailyLimit)\n public\n authorized\n {\n dailyLimits[token].dailyLimit = dailyLimit;\n }\n\n /// @dev Returns if Safe transaction is a valid daily limit transaction.\n /// @param token Address of the token that should be transfered (0 for Ether)\n /// @param to Address to which the tokens should be transfered\n /// @param amount Amount of tokens (or Ether) that should be transfered\n /// @return Returns if transaction can be executed.\n function executeDailyLimit(address token, address to, uint256 amount)\n public\n {\n // Only Safe owners are allowed to execute daily limit transactions.\n require(OwnerManager(manager).isOwner(msg.sender), \"Method can only be called by an owner\");\n require(to != 0, \"Invalid to address provided\");\n require(amount > 0, \"Invalid amount provided\");\n // Validate that transfer is not exceeding daily limit.\n require(isUnderLimit(token, amount), \"Daily limit has been reached\");\n dailyLimits[token].spentToday += amount;\n if (token == 0) {\n require(manager.execTransactionFromModule(to, amount, \"\", Enum.Operation.Call), \"Could not execute ether transfer\");\n } else {\n bytes memory data = abi.encodeWithSignature(\"transfer(address,uint256)\", to, amount);\n require(manager.execTransactionFromModule(token, 0, data, Enum.Operation.Call), \"Could not execute token transfer\");\n }\n }\n\n function isUnderLimit(address token, uint256 amount)\n internal\n returns (bool)\n {\n DailyLimit storage dailyLimit = dailyLimits[token];\n if (today() > dailyLimit.lastDay) {\n dailyLimit.lastDay = today();\n dailyLimit.spentToday = 0;\n }\n if (dailyLimit.spentToday + amount <= dailyLimit.dailyLimit && \n dailyLimit.spentToday + amount > dailyLimit.spentToday)\n return true;\n return false;\n }\n\n /// @dev Returns last midnight as Unix timestamp.\n /// @return Unix timestamp.\n function today()\n public\n view\n returns (uint)\n {\n return now - (now % 1 days);\n }\n}\n" ,
2018-05-31 13:01:02 +00:00
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/DailyLimitModule.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/DailyLimitModule.sol" ,
"exportedSymbols" : {
"DailyLimitModule" : [
2018-06-29 11:23:01 +00:00
3415
2018-05-31 13:01:02 +00:00
]
} ,
2018-06-29 11:23:01 +00:00
"id" : 3416 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-06-29 11:23:01 +00:00
"id" : 3178 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-06-29 11:23:01 +00:00
"src" : "0:23:20"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "../Module.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3179 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 1862 ,
"src" : "24:23:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "../ModuleManager.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3180 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 2233 ,
"src" : "48:30:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "../OwnerManager.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3181 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 2889 ,
"src" : "79:29:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Enum.sol" ,
"file" : "../Enum.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3182 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
2018-05-31 13:01:02 +00:00
"sourceUnit" : 31 ,
2018-06-29 11:23:01 +00:00
"src" : "109:21:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3183 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1861 ,
"src" : "325:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_Module_$1861" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3184 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-06-29 11:23:01 +00:00
"src" : "325:6:20"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-06-20 08:09:14 +00:00
632 ,
2018-06-29 11:23:01 +00:00
1861 ,
3065
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Daily Limit Module - Allows to transfer limited amounts of ERC20 tokens and Ether without confirmations.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3415 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-06-29 11:23:01 +00:00
3415 ,
1861 ,
2018-06-20 08:09:14 +00:00
632 ,
2018-06-29 11:23:01 +00:00
3065
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3187 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "339:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3185 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "339:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "4461696c79204c696d6974204d6f64756c65" ,
2018-06-29 11:23:01 +00:00
"id" : 3186 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "369:20:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_821ea27acfbc77b49f7a021dbe2eb92017d46b8bdda0bff9901cbc8ee143ceb3" ,
"typeString" : "literal_string \"Daily Limit Module\""
} ,
"value" : "Daily Limit Module"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3190 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "395:40:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3188 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "395:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-06-29 11:23:01 +00:00
"id" : 3189 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "428:7:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3194 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "513:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3193 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-06-29 11:23:01 +00:00
"id" : 3191 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "522:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
2018-06-29 11:23:01 +00:00
"src" : "513:31:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3192 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3201 ,
"src" : "533:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-06-29 11:23:01 +00:00
"id" : 3201 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3196 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "598:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3195 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "598:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3198 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "626:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3197 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "626:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3200 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "654:15:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3199 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "654:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "DailyLimit" ,
"nodeType" : "StructDefinition" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "570:106:20" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3236 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "994:146:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3210 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1860 ,
"src" : "1004:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3211 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "1004:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3212 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1004:12:20"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3233 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3224 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "1082:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3228 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3225 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3204 ,
"src" : "1094:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3227 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3226 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1101:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1094:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1082:22:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3229 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "1082:33:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3230 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3207 ,
"src" : "1118:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3232 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3231 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1131:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1118:15:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1082:51:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3234 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1082:51:20"
2018-05-31 13:01:02 +00:00
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3220 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3217 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1046:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3218 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3204 ,
"src" : "1050:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3219 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "1050:13:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1046:17:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3235 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-06-29 11:23:01 +00:00
3214
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3214 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "1031:9:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3213 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1031:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3216 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3215 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "1043:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1031:13:20"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3222 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-06-29 11:23:01 +00:00
"src" : "1065:3:20" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3221 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1065:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3223 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1065:3:20"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1026:107:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param tokens List of token addresses. Ether is represented with address 0x0.\n @param _dailyLimits List of daily limits in smalles units (e.g. Wei for Ether)." ,
2018-06-29 11:23:01 +00:00
"id" : 3237 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3208 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3204 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "933:16:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
2018-06-29 11:23:01 +00:00
"id" : 3202 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "933:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3203 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "933:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3207 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "951:22:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[]"
} ,
"typeName" : {
"baseType" : {
2018-06-29 11:23:01 +00:00
"id" : 3205 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "951:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3206 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "951:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_storage_ptr" ,
"typeString" : "uint256[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "932:42:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3209 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "994:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "918:222:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3253 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "1467:59:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3251 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3246 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "1477:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3248 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3247 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3239 ,
"src" : "1489:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1477:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3249 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "1477:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3250 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3241 ,
"src" : "1509:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1477:42:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3252 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1477:42:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Allows to update the daily limit for a specified token. This can only be done via a Safe transaction.\n @param token Token contract address.\n @param dailyLimit Daily limit in smallest token unit." ,
2018-06-29 11:23:01 +00:00
"id" : 3254 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3244 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3243 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1840 ,
"src" : "1452:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-06-29 11:23:01 +00:00
"src" : "1452:10:20"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "changeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3242 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3239 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3254 ,
"src" : "1394:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3238 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1394:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3241 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3254 ,
"src" : "1409:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3240 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1409:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "1393:35:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3245 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "1467:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "1368:158:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3344 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "1979:898:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3268 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4036 ,
"src" : "2104:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3269 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2104:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
] ,
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3265 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2087:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3264 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2888 ,
"src" : "2074:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$2888_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3266 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2074:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$2888" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3267 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2838 ,
"src" : "2074:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_view$_t_address_$returns$_t_bool_$" ,
"typeString" : "function (address) view external returns (bool)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3270 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2074:41:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4d6574686f642063616e206f6e6c792062652063616c6c656420627920616e206f776e6572" ,
2018-06-29 11:23:01 +00:00
"id" : 3271 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2117:39:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_4df072353ff501a1071e1cc3e2eb3ee0ebb21a35321efe90c0960bf2f4356640" ,
"typeString" : "literal_string \"Method can only be called by an owner\""
} ,
"value" : "Method can only be called by an owner"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_4df072353ff501a1071e1cc3e2eb3ee0ebb21a35321efe90c0960bf2f4356640" ,
"typeString" : "literal_string \"Method can only be called by an owner\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3263 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2066:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3272 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2066:91:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3273 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2066:91:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3277 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3275 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2175:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3276 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2181:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2175:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420746f20616464726573732070726f7669646564" ,
2018-06-29 11:23:01 +00:00
"id" : 3278 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2184:29:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_c5adba0692e08f8080ea3ec2bf95727d181df9c72d0fc6db8f77e3703d9523f1" ,
"typeString" : "literal_string \"Invalid to address provided\""
} ,
"value" : "Invalid to address provided"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_c5adba0692e08f8080ea3ec2bf95727d181df9c72d0fc6db8f77e3703d9523f1" ,
"typeString" : "literal_string \"Invalid to address provided\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3274 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2167:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3279 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2167:47:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3280 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2167:47:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3284 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3282 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2232:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3283 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2241:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2232:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420616d6f756e742070726f7669646564" ,
2018-06-29 11:23:01 +00:00
"id" : 3285 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2244:25:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_991bec80688b0edba4751e32429f6879002de57199ff2c6b5bf0742d348ba58f" ,
"typeString" : "literal_string \"Invalid amount provided\""
} ,
"value" : "Invalid amount provided"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_991bec80688b0edba4751e32429f6879002de57199ff2c6b5bf0742d348ba58f" ,
"typeString" : "literal_string \"Invalid amount provided\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3281 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2224:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3286 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2224:46:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3287 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2224:46:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3290 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2365:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3291 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2372:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3289 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3401 ,
"src" : "2352:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256) returns (bool)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3292 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2352:27:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4461696c79206c696d697420686173206265656e2072656163686564" ,
2018-06-29 11:23:01 +00:00
"id" : 3293 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2381:30:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_8c8c9a9731e3c1970f356c6998c7e6418ab5b55402b68846f03a8bbe49c05905" ,
"typeString" : "literal_string \"Daily limit has been reached\""
} ,
"value" : "Daily limit has been reached"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_8c8c9a9731e3c1970f356c6998c7e6418ab5b55402b68846f03a8bbe49c05905" ,
"typeString" : "literal_string \"Daily limit has been reached\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3288 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2344:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3294 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2344:68:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3295 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2344:68:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3301 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3296 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "2422:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3298 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3297 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2434:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "2422:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3299 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "2422:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "+=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3300 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2455:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "2422:39:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3302 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2422:39:20"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3305 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3303 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2475:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3304 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2484:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2475:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3342 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2633:238:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-06-29 11:23:01 +00:00
3321
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3321 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "2647:17:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3320 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2647:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3328 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-06-29 11:23:01 +00:00
"id" : 3324 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2691:27:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_a9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b" ,
"typeString" : "literal_string \"transfer(address,uint256)\""
} ,
"value" : "transfer(address,uint256)"
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3325 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2720:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3326 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2724:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_stringliteral_a9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b" ,
"typeString" : "literal_string \"transfer(address,uint256)\""
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3322 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4023 ,
"src" : "2667:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3323 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodeWithSignature" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2667:23:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function (string memory) pure returns (bytes memory)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3327 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2667:64:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2647:84:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3332 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2787:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3333 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2794:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3334 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3321 ,
"src" : "2797:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3335 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
2018-06-29 11:23:01 +00:00
"src" : "2803:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3336 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
2018-06-29 11:23:01 +00:00
"src" : "2803:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3337 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2803:19:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3330 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2753:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3331 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2059 ,
"src" : "2753:33:20" ,
2018-05-31 13:01:02 +00:00
"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)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3338 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2753:70:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74206578656375746520746f6b656e207472616e73666572" ,
2018-06-29 11:23:01 +00:00
"id" : 3339 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2825:34:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_00c0b742664159361be6aebbe2af44c4ae7eb95e13260265d1e1cf75d2593709" ,
"typeString" : "literal_string \"Could not execute token transfer\""
} ,
"value" : "Could not execute token transfer"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_00c0b742664159361be6aebbe2af44c4ae7eb95e13260265d1e1cf75d2593709" ,
"typeString" : "literal_string \"Could not execute token transfer\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3329 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2745:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3340 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2745:115:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3341 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2745:115:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-06-29 11:23:01 +00:00
"id" : 3343 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2471:400:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3319 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2487:140:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3309 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2543:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3310 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2547:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-06-29 11:23:01 +00:00
"id" : 3311 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2555:2:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
"value" : ""
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3312 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
2018-06-29 11:23:01 +00:00
"src" : "2559:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3313 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
2018-06-29 11:23:01 +00:00
"src" : "2559:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3314 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2559:19:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3307 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2509:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3308 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2059 ,
"src" : "2509:33:20" ,
2018-05-31 13:01:02 +00:00
"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)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3315 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2509:70:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f742065786563757465206574686572207472616e73666572" ,
2018-06-29 11:23:01 +00:00
"id" : 3316 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2581:34:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_2fae53cac084168982e43888b6e5eff084959ab65d511777b56b4cbb265d2586" ,
"typeString" : "literal_string \"Could not execute ether transfer\""
} ,
"value" : "Could not execute ether transfer"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_2fae53cac084168982e43888b6e5eff084959ab65d511777b56b4cbb265d2586" ,
"typeString" : "literal_string \"Could not execute ether transfer\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3306 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2501:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3317 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2501:115:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3318 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2501:115:20"
2018-05-31 13:01:02 +00:00
}
]
}
}
]
} ,
"documentation" : "@dev Returns if Safe transaction is a valid daily limit transaction.\n @param token Address of the token that should be transfered (0 for Ether)\n @param to Address to which the tokens should be transfered\n @param amount Amount of tokens (or Ether) that should be transfered\n @return Returns if transaction can be executed." ,
2018-06-29 11:23:01 +00:00
"id" : 3345 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3261 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3256 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1917:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3255 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1917:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3258 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1932:10:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3257 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1932:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3260 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1944:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3259 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1944:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "1916:43:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3262 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "1979:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "1890:987:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3400 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2980:389:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-06-29 11:23:01 +00:00
3355
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3355 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2990:29:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3354 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3201 ,
"src" : "2990:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3359 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3356 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "3022:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3358 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3357 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3347 ,
"src" : "3034:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "3022:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2990:50:20"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3364 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3360 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3414 ,
"src" : "3054:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3361 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "3054:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3362 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3064:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3363 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3200 ,
"src" : "3064:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3054:28:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3379 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3050:126:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3378 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "3084:92:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3370 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3365 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3098:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3367 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3200 ,
"src" : "3098:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3368 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3414 ,
"src" : "3119:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3369 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "3119:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3098:28:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3371 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3098:28:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3376 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3372 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3140:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3374 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3140:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3375 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3164:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "3140:25:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3377 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3140:25:20"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3394 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3386 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3383 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3380 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3189:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3381 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3189:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3382 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3349 ,
"src" : "3213:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:30:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3384 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3223:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3385 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "3223:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:55:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "&&" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3393 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3390 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3387 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3261:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3388 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3261:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3389 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3349 ,
"src" : "3285:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3261:30:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3391 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3294:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3392 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3294:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3261:54:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:126:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3397 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3185:155:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
2018-06-29 11:23:01 +00:00
"id" : 3395 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3336:4:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3353 ,
"id" : 3396 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3329:11:20"
2018-05-31 13:01:02 +00:00
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
2018-06-29 11:23:01 +00:00
"id" : 3398 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3357:5:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3353 ,
"id" : 3399 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3350:12:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3401 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3350 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3347 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2905:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3346 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2905:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3349 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2920:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3348 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2920:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "2904:31:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3353 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3352 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3351 ,
2018-05-31 13:01:02 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "2969:6:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "2883:486:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3413 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "3533:44:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3411 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3406 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4038 ,
"src" : "3550:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"components" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3409 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3407 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4038 ,
"src" : "3557:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "%" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
2018-06-29 11:23:01 +00:00
"id" : 3408 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3563:6:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : "days" ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_86400_by_1" ,
"typeString" : "int_const 86400"
} ,
"value" : "1"
} ,
2018-06-29 11:23:01 +00:00
"src" : "3557:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3410 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-06-29 11:23:01 +00:00
"src" : "3556:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3550:20:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3405 ,
"id" : 3412 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3543:27:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns last midnight as Unix timestamp.\n @return Unix timestamp." ,
2018-06-29 11:23:01 +00:00
"id" : 3414 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3402 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "3475:2:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3405 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3404 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3414 ,
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3403 ,
2018-05-31 13:01:02 +00:00
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "3522:6:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "3461:116:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"src" : "296:3283:20"
2018-05-31 13:01:02 +00:00
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "0:3580:20"
2018-05-31 13:01:02 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/DailyLimitModule.sol" ,
"exportedSymbols" : {
"DailyLimitModule" : [
2018-06-29 11:23:01 +00:00
3415
2018-05-31 13:01:02 +00:00
]
} ,
2018-06-29 11:23:01 +00:00
"id" : 3416 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-06-29 11:23:01 +00:00
"id" : 3178 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-06-29 11:23:01 +00:00
"src" : "0:23:20"
2018-05-31 13:01:02 +00:00
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Module.sol" ,
"file" : "../Module.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3179 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 1862 ,
"src" : "24:23:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/ModuleManager.sol" ,
"file" : "../ModuleManager.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3180 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 2233 ,
"src" : "48:30:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/OwnerManager.sol" ,
"file" : "../OwnerManager.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3181 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"sourceUnit" : 2889 ,
"src" : "79:29:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/Enum.sol" ,
"file" : "../Enum.sol" ,
2018-06-29 11:23:01 +00:00
"id" : 3182 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
2018-05-31 13:01:02 +00:00
"sourceUnit" : 31 ,
2018-06-29 11:23:01 +00:00
"src" : "109:21:20" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3183 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1861 ,
"src" : "325:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_Module_$1861" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3184 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-06-29 11:23:01 +00:00
"src" : "325:6:20"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-06-20 08:09:14 +00:00
632 ,
2018-06-29 11:23:01 +00:00
1861 ,
3065
2018-05-31 13:01:02 +00:00
] ,
"contractKind" : "contract" ,
"documentation" : "@title Daily Limit Module - Allows to transfer limited amounts of ERC20 tokens and Ether without confirmations.\n @author Stefan George - <stefan@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3415 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-06-29 11:23:01 +00:00
3415 ,
1861 ,
2018-06-20 08:09:14 +00:00
632 ,
2018-06-29 11:23:01 +00:00
3065
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3187 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "339:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3185 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "339:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "4461696c79204c696d6974204d6f64756c65" ,
2018-06-29 11:23:01 +00:00
"id" : 3186 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "369:20:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_821ea27acfbc77b49f7a021dbe2eb92017d46b8bdda0bff9901cbc8ee143ceb3" ,
"typeString" : "literal_string \"Daily Limit Module\""
} ,
"value" : "Daily Limit Module"
} ,
"visibility" : "public"
} ,
{
"constant" : true ,
2018-06-29 11:23:01 +00:00
"id" : 3190 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "395:40:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3188 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "395:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "302e302e31" ,
2018-06-29 11:23:01 +00:00
"id" : 3189 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "428:7:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_ae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc199163811885" ,
"typeString" : "literal_string \"0.0.1\""
} ,
"value" : "0.0.1"
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3194 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "513:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3193 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-06-29 11:23:01 +00:00
"id" : 3191 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "522:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
2018-06-29 11:23:01 +00:00
"src" : "513:31:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3192 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3201 ,
"src" : "533:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-06-29 11:23:01 +00:00
"id" : 3201 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3196 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "598:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3195 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "598:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3198 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "626:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3197 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "626:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3200 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3201 ,
"src" : "654:15:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3199 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "654:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "DailyLimit" ,
"nodeType" : "StructDefinition" ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "570:106:20" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3236 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "994:146:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3210 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1860 ,
"src" : "1004:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3211 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "1004:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3212 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1004:12:20"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3233 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3224 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "1082:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3228 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3225 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3204 ,
"src" : "1094:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3227 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3226 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1101:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1094:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1082:22:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3229 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "1082:33:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3230 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3207 ,
"src" : "1118:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3232 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3231 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1131:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1118:15:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1082:51:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3234 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1082:51:20"
2018-05-31 13:01:02 +00:00
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3220 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3217 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1046:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3218 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3204 ,
"src" : "1050:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3219 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "1050:13:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1046:17:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3235 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-06-29 11:23:01 +00:00
3214
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3214 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "1031:9:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3213 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1031:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3216 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3215 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "1043:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1031:13:20"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3222 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-06-29 11:23:01 +00:00
"src" : "1065:3:20" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3221 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3214 ,
"src" : "1065:1:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3223 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1065:3:20"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1026:107:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Setup function sets initial storage of contract.\n @param tokens List of token addresses. Ether is represented with address 0x0.\n @param _dailyLimits List of daily limits in smalles units (e.g. Wei for Ether)." ,
2018-06-29 11:23:01 +00:00
"id" : 3237 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3208 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3204 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "933:16:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[]"
} ,
"typeName" : {
"baseType" : {
2018-06-29 11:23:01 +00:00
"id" : 3202 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "933:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3203 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "933:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_storage_ptr" ,
"typeString" : "address[]"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3207 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3237 ,
"src" : "951:22:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[]"
} ,
"typeName" : {
"baseType" : {
2018-06-29 11:23:01 +00:00
"id" : 3205 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "951:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3206 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "951:9:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_storage_ptr" ,
"typeString" : "uint256[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "932:42:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3209 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "994:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "918:222:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3253 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "1467:59:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3251 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3246 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "1477:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3248 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3247 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3239 ,
"src" : "1489:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "1477:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3249 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "1477:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3250 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3241 ,
"src" : "1509:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "1477:42:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3252 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "1477:42:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Allows to update the daily limit for a specified token. This can only be done via a Safe transaction.\n @param token Token contract address.\n @param dailyLimit Daily limit in smallest token unit." ,
2018-06-29 11:23:01 +00:00
"id" : 3254 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3244 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3243 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1840 ,
"src" : "1452:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-06-29 11:23:01 +00:00
"src" : "1452:10:20"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "changeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3242 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3239 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3254 ,
"src" : "1394:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3238 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1394:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3241 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3254 ,
"src" : "1409:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3240 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1409:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "1393:35:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3245 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "1467:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "1368:158:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3344 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "1979:898:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3268 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4036 ,
"src" : "2104:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3269 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2104:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
] ,
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3265 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2087:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3264 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2888 ,
"src" : "2074:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$2888_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3266 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2074:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$2888" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3267 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2838 ,
"src" : "2074:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_external_view$_t_address_$returns$_t_bool_$" ,
"typeString" : "function (address) view external returns (bool)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3270 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2074:41:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4d6574686f642063616e206f6e6c792062652063616c6c656420627920616e206f776e6572" ,
2018-06-29 11:23:01 +00:00
"id" : 3271 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2117:39:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_4df072353ff501a1071e1cc3e2eb3ee0ebb21a35321efe90c0960bf2f4356640" ,
"typeString" : "literal_string \"Method can only be called by an owner\""
} ,
"value" : "Method can only be called by an owner"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_4df072353ff501a1071e1cc3e2eb3ee0ebb21a35321efe90c0960bf2f4356640" ,
"typeString" : "literal_string \"Method can only be called by an owner\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3263 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2066:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3272 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2066:91:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3273 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2066:91:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3277 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3275 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2175:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3276 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2181:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2175:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420746f20616464726573732070726f7669646564" ,
2018-06-29 11:23:01 +00:00
"id" : 3278 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2184:29:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_c5adba0692e08f8080ea3ec2bf95727d181df9c72d0fc6db8f77e3703d9523f1" ,
"typeString" : "literal_string \"Invalid to address provided\""
} ,
"value" : "Invalid to address provided"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_c5adba0692e08f8080ea3ec2bf95727d181df9c72d0fc6db8f77e3703d9523f1" ,
"typeString" : "literal_string \"Invalid to address provided\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3274 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2167:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3279 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2167:47:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3280 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2167:47:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3284 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3282 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2232:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3283 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2241:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2232:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420616d6f756e742070726f7669646564" ,
2018-06-29 11:23:01 +00:00
"id" : 3285 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2244:25:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_991bec80688b0edba4751e32429f6879002de57199ff2c6b5bf0742d348ba58f" ,
"typeString" : "literal_string \"Invalid amount provided\""
} ,
"value" : "Invalid amount provided"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_991bec80688b0edba4751e32429f6879002de57199ff2c6b5bf0742d348ba58f" ,
"typeString" : "literal_string \"Invalid amount provided\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3281 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2224:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3286 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2224:46:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3287 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2224:46:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3290 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2365:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3291 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2372:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3289 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3401 ,
"src" : "2352:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256) returns (bool)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3292 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2352:27:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4461696c79206c696d697420686173206265656e2072656163686564" ,
2018-06-29 11:23:01 +00:00
"id" : 3293 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2381:30:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_8c8c9a9731e3c1970f356c6998c7e6418ab5b55402b68846f03a8bbe49c05905" ,
"typeString" : "literal_string \"Daily limit has been reached\""
} ,
"value" : "Daily limit has been reached"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_8c8c9a9731e3c1970f356c6998c7e6418ab5b55402b68846f03a8bbe49c05905" ,
"typeString" : "literal_string \"Daily limit has been reached\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3288 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2344:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3294 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2344:68:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3295 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2344:68:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3301 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3296 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "2422:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3298 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3297 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2434:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "2422:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3299 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "2422:29:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "+=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3300 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2455:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "2422:39:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3302 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2422:39:20"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3305 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3303 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2475:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3304 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2484:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "2475:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3342 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2633:238:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-06-29 11:23:01 +00:00
3321
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3321 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "2647:17:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3320 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2647:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3328 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-06-29 11:23:01 +00:00
"id" : 3324 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2691:27:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_a9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b" ,
"typeString" : "literal_string \"transfer(address,uint256)\""
} ,
"value" : "transfer(address,uint256)"
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3325 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2720:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3326 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2724:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_stringliteral_a9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b" ,
"typeString" : "literal_string \"transfer(address,uint256)\""
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3322 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4023 ,
"src" : "2667:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3323 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodeWithSignature" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2667:23:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$" ,
"typeString" : "function (string memory) pure returns (bytes memory)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3327 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2667:64:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2647:84:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3332 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3256 ,
"src" : "2787:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3333 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2794:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3334 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3321 ,
"src" : "2797:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3335 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
2018-06-29 11:23:01 +00:00
"src" : "2803:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3336 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
2018-06-29 11:23:01 +00:00
"src" : "2803:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3337 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2803:19:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
{
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3330 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2753:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3331 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2059 ,
"src" : "2753:33:20" ,
2018-05-31 13:01:02 +00:00
"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)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3338 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2753:70:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74206578656375746520746f6b656e207472616e73666572" ,
2018-06-29 11:23:01 +00:00
"id" : 3339 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2825:34:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_00c0b742664159361be6aebbe2af44c4ae7eb95e13260265d1e1cf75d2593709" ,
"typeString" : "literal_string \"Could not execute token transfer\""
} ,
"value" : "Could not execute token transfer"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_00c0b742664159361be6aebbe2af44c4ae7eb95e13260265d1e1cf75d2593709" ,
"typeString" : "literal_string \"Could not execute token transfer\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3329 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2745:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3340 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2745:115:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3341 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2745:115:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-06-29 11:23:01 +00:00
"id" : 3343 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2471:400:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3319 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2487:140:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3309 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3258 ,
"src" : "2543:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3310 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3260 ,
"src" : "2547:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-06-29 11:23:01 +00:00
"id" : 3311 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2555:2:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
"value" : ""
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3312 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 30 ,
2018-06-29 11:23:01 +00:00
"src" : "2559:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_contract$_Enum_$30_$" ,
"typeString" : "type(contract Enum)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3313 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : 29 ,
2018-06-29 11:23:01 +00:00
"src" : "2559:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_enum$_Operation_$29_$" ,
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3314 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-06-29 11:23:01 +00:00
"src" : "2559:19:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
{
"typeIdentifier" : "t_enum$_Operation_$29" ,
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3307 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 1826 ,
"src" : "2509:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$2232" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3308 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 2059 ,
"src" : "2509:33:20" ,
2018-05-31 13:01:02 +00:00
"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)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3315 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2509:70:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f742065786563757465206574686572207472616e73666572" ,
2018-06-29 11:23:01 +00:00
"id" : 3316 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "2581:34:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_2fae53cac084168982e43888b6e5eff084959ab65d511777b56b4cbb265d2586" ,
"typeString" : "literal_string \"Could not execute ether transfer\""
} ,
"value" : "Could not execute ether transfer"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_2fae53cac084168982e43888b6e5eff084959ab65d511777b56b4cbb265d2586" ,
"typeString" : "literal_string \"Could not execute ether transfer\""
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3306 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-06-29 11:23:01 +00:00
4039 ,
4040
2018-05-31 13:01:02 +00:00
] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4040 ,
"src" : "2501:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3317 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "2501:115:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3318 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2501:115:20"
2018-05-31 13:01:02 +00:00
}
]
}
}
]
} ,
"documentation" : "@dev Returns if Safe transaction is a valid daily limit transaction.\n @param token Address of the token that should be transfered (0 for Ether)\n @param to Address to which the tokens should be transfered\n @param amount Amount of tokens (or Ether) that should be transfered\n @return Returns if transaction can be executed." ,
2018-06-29 11:23:01 +00:00
"id" : 3345 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3261 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3256 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1917:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3255 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1917:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3258 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1932:10:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3257 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1932:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3260 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3345 ,
"src" : "1944:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3259 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "1944:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "1916:43:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3262 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "1979:0:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "1890:987:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3400 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "2980:389:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-06-29 11:23:01 +00:00
3355
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3355 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2990:29:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3354 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3201 ,
"src" : "2990:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3359 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3356 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3194 ,
"src" : "3022:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$3201_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3358 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3357 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3347 ,
"src" : "3034:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-06-29 11:23:01 +00:00
"src" : "3022:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "2990:50:20"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3364 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3360 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3414 ,
"src" : "3054:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3361 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "3054:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3362 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3064:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3363 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3200 ,
"src" : "3064:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3054:28:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3379 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3050:126:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-06-29 11:23:01 +00:00
"id" : 3378 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "3084:92:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3370 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3365 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3098:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3367 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3200 ,
"src" : "3098:18:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-06-29 11:23:01 +00:00
"id" : 3368 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3414 ,
"src" : "3119:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3369 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-06-29 11:23:01 +00:00
"src" : "3119:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3098:28:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3371 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3098:28:20"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3376 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3372 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3140:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3374 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3140:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-06-29 11:23:01 +00:00
"id" : 3375 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3164:1:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-06-29 11:23:01 +00:00
"src" : "3140:25:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3377 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3140:25:20"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3394 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3386 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3383 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3380 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3189:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3381 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3189:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3382 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3349 ,
"src" : "3213:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:30:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3384 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3223:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3385 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3196 ,
"src" : "3223:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:55:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "&&" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3393 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3390 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3387 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3261:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3388 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3261:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3389 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3349 ,
"src" : "3285:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3261:30:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3391 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3355 ,
"src" : "3294:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-06-29 11:23:01 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$3201_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-06-29 11:23:01 +00:00
"id" : 3392 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 3198 ,
"src" : "3294:21:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3261:54:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3189:126:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3397 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-06-29 11:23:01 +00:00
"src" : "3185:155:20" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
2018-06-29 11:23:01 +00:00
"id" : 3395 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3336:4:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3353 ,
"id" : 3396 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3329:11:20"
2018-05-31 13:01:02 +00:00
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
2018-06-29 11:23:01 +00:00
"id" : 3398 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3357:5:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3353 ,
"id" : 3399 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3350:12:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3401 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3350 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3347 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2905:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3346 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2905:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3349 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2920:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3348 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2920:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "2904:31:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3353 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3352 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3401 ,
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3351 ,
2018-05-31 13:01:02 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "2969:6:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "2883:486:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-06-29 11:23:01 +00:00
"id" : 3413 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-06-29 11:23:01 +00:00
"src" : "3533:44:20" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3411 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3406 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4038 ,
"src" : "3550:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "-" ,
"rightExpression" : {
"argumentTypes" : null ,
"components" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-06-29 11:23:01 +00:00
"id" : 3409 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-06-29 11:23:01 +00:00
"id" : 3407 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-06-29 11:23:01 +00:00
"referencedDeclaration" : 4038 ,
"src" : "3557:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "%" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
2018-06-29 11:23:01 +00:00
"id" : 3408 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-06-29 11:23:01 +00:00
"src" : "3563:6:20" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : "days" ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_86400_by_1" ,
"typeString" : "int_const 86400"
} ,
"value" : "1"
} ,
2018-06-29 11:23:01 +00:00
"src" : "3557:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-06-29 11:23:01 +00:00
"id" : 3410 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-06-29 11:23:01 +00:00
"src" : "3556:14:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"src" : "3550:20:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-06-29 11:23:01 +00:00
"functionReturnParameters" : 3405 ,
"id" : 3412 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-06-29 11:23:01 +00:00
"src" : "3543:27:20"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns last midnight as Unix timestamp.\n @return Unix timestamp." ,
2018-06-29 11:23:01 +00:00
"id" : 3414 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3402 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-06-29 11:23:01 +00:00
"src" : "3475:2:20"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-06-29 11:23:01 +00:00
"id" : 3405 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-06-29 11:23:01 +00:00
"id" : 3404 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-06-29 11:23:01 +00:00
"scope" : 3414 ,
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-06-29 11:23:01 +00:00
"id" : 3403 ,
2018-05-31 13:01:02 +00:00
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
2018-06-29 11:23:01 +00:00
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "3522:6:20"
2018-05-31 13:01:02 +00:00
} ,
2018-06-29 11:23:01 +00:00
"scope" : 3415 ,
"src" : "3461:116:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-06-29 11:23:01 +00:00
"scope" : 3416 ,
"src" : "296:3283:20"
2018-05-31 13:01:02 +00:00
}
] ,
2018-06-29 11:23:01 +00:00
"src" : "0:3580:20"
2018-05-31 13:01:02 +00:00
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.4.24+commit.e67f0147.Emscripten.clang"
} ,
"networks" : {
2018-06-29 11:23:01 +00:00
"4" : {
2018-06-26 11:48:05 +00:00
"events" : { } ,
"links" : { } ,
2018-06-29 11:23:01 +00:00
"address" : "0x7cfb7607cc60339ccd817b6354e102eba6b49ff1" ,
"transactionHash" : "0x9479ecd87f9e5b0746693a16f7ce7f469176203015dcdb15a8ae1328c9816ebe"
} ,
"1530013596495" : {
"events" : { } ,
"links" : { } ,
"address" : "0x2c9ce286dfc3b59f113c51130417a46e9a646a6d" ,
"transactionHash" : "0x02608c4ea7f319af8a9b630a79ed662d2215f6c1346b4695102205ee761daf5f"
2018-07-02 10:12:59 +00:00
} ,
"1530525742205" : {
"events" : { } ,
"links" : { } ,
"address" : "0x3677fea71a2c8f03d54e7f5360bd9a05a020bdda" ,
"transactionHash" : "0x9325cfc4774c2add944a1a9458f74c8815e0bb04bf77f12b5bfb1fdae443836b"
2018-07-03 11:14:01 +00:00
} ,
"1530611935189" : {
"events" : { } ,
"links" : { } ,
"address" : "0x7533d313863f3342d83491b17c4a8e8fff65a192" ,
"transactionHash" : "0x9325cfc4774c2add944a1a9458f74c8815e0bb04bf77f12b5bfb1fdae443836b"
2018-05-31 13:01:02 +00:00
}
} ,
2018-06-29 11:23:01 +00:00
"schemaVersion" : "2.0.0" ,
2018-07-03 11:14:01 +00:00
"updatedAt" : "2018-07-03T09:59:18.533Z"
2018-05-31 13:01:02 +00:00
}