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-08-20 07:59:16 +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;;;;;;;" ,
2018-08-20 07:59:16 +00:00
"deployedSourceMap" : " 296 : 3283 : 20 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 918 : 222 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 918 : 222 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 262 : 28 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 262 : 28 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1890 : 987 : 20 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1890 : 987 : 20 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 : 7 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 626 : 248 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 : 9 : - ; ; ; ; ; ; ; ; ; ; ; ; ; : : : 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 : 7 : - ; 359 : 7 : 9 ; ; ; ; ; ; ; ; ; ; ; 337 : 30 ; ; : 10 ; : 30 ; ; ; 329 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 791 : 1 : 7 ; 776 : 11 ; : 16 ; ; ; ; 768 : 65 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 856 : 11 ; 843 : 10 ; ; : 24 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 ; : : : o ; 1368 : 158 : 20 : - ; 359 : 7 : 9 ; ; ; ; ; ; ; ; ; ; ; 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 : 9 : - ; 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-08-20 07:59:16 +00:00
2115
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 2116 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 1878 ,
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-08-20 07:59:16 +00:00
"id" : 1879 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1880 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 1181 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1881 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 1589 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1882 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
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-08-20 07:59:16 +00:00
"id" : 1883 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 913 ,
2018-06-29 11:23:01 +00:00
"src" : "325:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_Module_$913" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1884 ,
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-08-20 07:59:16 +00:00
813 ,
913 ,
1765
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-08-20 07:59:16 +00:00
"id" : 2115 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
2115 ,
913 ,
813 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 1887 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1885 ,
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-08-20 07:59:16 +00:00
"id" : 1886 ,
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-08-20 07:59:16 +00:00
"id" : 1890 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1888 ,
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-08-20 07:59:16 +00:00
"id" : 1889 ,
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-08-20 07:59:16 +00:00
"id" : 1894 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "513:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1893 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-08-20 07:59:16 +00:00
"id" : 1891 ,
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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1892 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "533:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-08-20 07:59:16 +00:00
"id" : 1901 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1896 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "598:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1895 ,
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-08-20 07:59:16 +00:00
"id" : 1898 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "626:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1897 ,
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-08-20 07:59:16 +00:00
"id" : 1900 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "654:15:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1899 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "570:106:20" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 1936 ,
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-08-20 07:59:16 +00:00
"id" : 1910 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 912 ,
2018-06-29 11:23:01 +00:00
"src" : "1004:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1911 ,
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-08-20 07:59:16 +00:00
"id" : 1912 ,
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-08-20 07:59:16 +00:00
"id" : 1933 ,
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-08-20 07:59:16 +00:00
"id" : 1924 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "1082:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1928 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1925 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1904 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1927 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1926 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1929 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1930 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1907 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1932 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1931 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1934 ,
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-08-20 07:59:16 +00:00
"id" : 1920 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1917 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1918 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1904 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1919 ,
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-08-20 07:59:16 +00:00
"id" : 1935 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-08-20 07:59:16 +00:00
1914
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1914 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"src" : "1031:9:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1913 ,
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-08-20 07:59:16 +00:00
"id" : 1916 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 1915 ,
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-08-20 07:59:16 +00:00
"id" : 1922 ,
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-08-20 07:59:16 +00:00
"id" : 1921 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1923 ,
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-08-20 07:59:16 +00:00
"id" : 1937 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 1908 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1904 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1902 ,
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-08-20 07:59:16 +00:00
"id" : 1903 ,
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-08-20 07:59:16 +00:00
"id" : 1907 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1905 ,
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-08-20 07:59:16 +00:00
"id" : 1906 ,
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-08-20 07:59:16 +00:00
"id" : 1909 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "918:222:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 1953 ,
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-08-20 07:59:16 +00:00
"id" : 1951 ,
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-08-20 07:59:16 +00:00
"id" : 1946 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "1477:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1948 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1947 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1939 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1949 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1950 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1941 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1952 ,
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-08-20 07:59:16 +00:00
"id" : 1954 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1944 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1943 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 892 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1942 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1939 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1954 ,
2018-06-29 11:23:01 +00:00
"src" : "1394:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1938 ,
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-08-20 07:59:16 +00:00
"id" : 1941 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1954 ,
2018-06-29 11:23:01 +00:00
"src" : "1409:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1940 ,
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-08-20 07:59:16 +00:00
"id" : 1945 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "1368:158:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2044 ,
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-08-20 07:59:16 +00:00
"id" : 1968 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3828 ,
2018-06-29 11:23:01 +00:00
"src" : "2104:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1969 ,
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-08-20 07:59:16 +00:00
"id" : 1965 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2087:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 1964 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1588 ,
2018-06-29 11:23:01 +00:00
"src" : "2074:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1588_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1966 ,
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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1588" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1967 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1538 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1970 ,
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-08-20 07:59:16 +00:00
"id" : 1971 ,
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-08-20 07:59:16 +00:00
"id" : 1963 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1972 ,
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-08-20 07:59:16 +00:00
"id" : 1973 ,
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-08-20 07:59:16 +00:00
"id" : 1977 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1975 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1976 ,
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-08-20 07:59:16 +00:00
"id" : 1978 ,
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-08-20 07:59:16 +00:00
"id" : 1974 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1979 ,
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-08-20 07:59:16 +00:00
"id" : 1980 ,
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-08-20 07:59:16 +00:00
"id" : 1984 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1982 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1983 ,
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-08-20 07:59:16 +00:00
"id" : 1985 ,
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-08-20 07:59:16 +00:00
"id" : 1981 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1986 ,
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-08-20 07:59:16 +00:00
"id" : 1987 ,
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-08-20 07:59:16 +00:00
"id" : 1990 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"src" : "2365:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1991 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1989 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2101 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1992 ,
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-08-20 07:59:16 +00:00
"id" : 1993 ,
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-08-20 07:59:16 +00:00
"id" : 1988 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1994 ,
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-08-20 07:59:16 +00:00
"id" : 1995 ,
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-08-20 07:59:16 +00:00
"id" : 2001 ,
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-08-20 07:59:16 +00:00
"id" : 1996 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "2422:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1998 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1997 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1999 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2000 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2002 ,
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-08-20 07:59:16 +00:00
"id" : 2005 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2003 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2004 ,
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-08-20 07:59:16 +00:00
"id" : 2042 ,
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-08-20 07:59:16 +00:00
2021
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2021 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2020 ,
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-08-20 07:59:16 +00:00
"id" : 2028 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-08-20 07:59:16 +00:00
"id" : 2024 ,
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-08-20 07:59:16 +00:00
"id" : 2025 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"src" : "2720:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2026 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2022 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
2018-06-29 11:23:01 +00:00
"src" : "2667:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2023 ,
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-08-20 07:59:16 +00:00
"id" : 2027 ,
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-08-20 07:59:16 +00:00
"id" : 2032 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"src" : "2787:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 2033 ,
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-08-20 07:59:16 +00:00
"id" : 2034 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2021 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2035 ,
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-08-20 07:59:16 +00:00
"id" : 2036 ,
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-08-20 07:59:16 +00:00
"id" : 2037 ,
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-08-20 07:59:16 +00:00
"id" : 2030 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2753:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2031 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1106 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2038 ,
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-08-20 07:59:16 +00:00
"id" : 2039 ,
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-08-20 07:59:16 +00:00
"id" : 2029 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2040 ,
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-08-20 07:59:16 +00:00
"id" : 2041 ,
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-08-20 07:59:16 +00:00
"id" : 2043 ,
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-08-20 07:59:16 +00:00
"id" : 2019 ,
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-08-20 07:59:16 +00:00
"id" : 2009 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"src" : "2543:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2010 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"src" : "2547:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-08-20 07:59:16 +00:00
"id" : 2011 ,
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-08-20 07:59:16 +00:00
"id" : 2012 ,
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-08-20 07:59:16 +00:00
"id" : 2013 ,
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-08-20 07:59:16 +00:00
"id" : 2014 ,
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-08-20 07:59:16 +00:00
"id" : 2007 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2509:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2008 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1106 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2015 ,
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-08-20 07:59:16 +00:00
"id" : 2016 ,
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-08-20 07:59:16 +00:00
"id" : 2006 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2017 ,
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-08-20 07:59:16 +00:00
"id" : 2018 ,
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-08-20 07:59:16 +00:00
"id" : 2045 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 1961 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1956 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1917:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1955 ,
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-08-20 07:59:16 +00:00
"id" : 1958 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1932:10:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1957 ,
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-08-20 07:59:16 +00:00
"id" : 1960 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1944:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1959 ,
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-08-20 07:59:16 +00:00
"id" : 1962 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "1890:987:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2100 ,
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-08-20 07:59:16 +00:00
2055
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2055 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2990:29:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2054 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "2990:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 2059 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2056 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "3022:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2058 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2057 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2047 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_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-08-20 07:59:16 +00:00
"id" : 2064 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 2060 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2114 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2061 ,
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-08-20 07:59:16 +00:00
"id" : 2062 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3064:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2063 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1900 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2079 ,
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-08-20 07:59:16 +00:00
"id" : 2078 ,
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-08-20 07:59:16 +00:00
"id" : 2070 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2065 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3098:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2067 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1900 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2068 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2114 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2069 ,
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-08-20 07:59:16 +00:00
"id" : 2071 ,
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-08-20 07:59:16 +00:00
"id" : 2076 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2072 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3140:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2074 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2075 ,
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-08-20 07:59:16 +00:00
"id" : 2077 ,
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-08-20 07:59:16 +00:00
"id" : 2094 ,
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-08-20 07:59:16 +00:00
"id" : 2086 ,
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-08-20 07:59:16 +00:00
"id" : 2083 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2080 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3189:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2081 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2082 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2049 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2084 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3223:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2085 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2093 ,
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-08-20 07:59:16 +00:00
"id" : 2090 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2087 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3261:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2088 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2089 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2049 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2091 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3294:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2092 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2097 ,
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-08-20 07:59:16 +00:00
"id" : 2095 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2053 ,
"id" : 2096 ,
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-08-20 07:59:16 +00:00
"id" : 2098 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2053 ,
"id" : 2099 ,
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-08-20 07:59:16 +00:00
"id" : 2101 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 2050 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2047 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2905:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2046 ,
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-08-20 07:59:16 +00:00
"id" : 2049 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2920:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2048 ,
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-08-20 07:59:16 +00:00
"id" : 2053 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2052 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2051 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "2883:486:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2113 ,
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-08-20 07:59:16 +00:00
"id" : 2111 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2106 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3830 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2109 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2107 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3830 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2108 ,
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-08-20 07:59:16 +00:00
"id" : 2110 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2105 ,
"id" : 2112 ,
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-08-20 07:59:16 +00:00
"id" : 2114 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 2102 ,
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-08-20 07:59:16 +00:00
"id" : 2105 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2104 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2114 ,
2018-06-29 11:23:01 +00:00
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2103 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "3461:116:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
2115
2018-05-31 13:01:02 +00:00
]
} ,
2018-08-20 07:59:16 +00:00
"id" : 2116 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-08-20 07:59:16 +00:00
"id" : 1878 ,
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-08-20 07:59:16 +00:00
"id" : 1879 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1880 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 1181 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1881 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
"sourceUnit" : 1589 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1882 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
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-08-20 07:59:16 +00:00
"id" : 1883 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 913 ,
2018-06-29 11:23:01 +00:00
"src" : "325:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_Module_$913" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1884 ,
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-08-20 07:59:16 +00:00
813 ,
913 ,
1765
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-08-20 07:59:16 +00:00
"id" : 2115 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-08-20 07:59:16 +00:00
2115 ,
913 ,
813 ,
1765
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-08-20 07:59:16 +00:00
"id" : 1887 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1885 ,
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-08-20 07:59:16 +00:00
"id" : 1886 ,
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-08-20 07:59:16 +00:00
"id" : 1890 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1888 ,
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-08-20 07:59:16 +00:00
"id" : 1889 ,
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-08-20 07:59:16 +00:00
"id" : 1894 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "513:50:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1893 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-08-20 07:59:16 +00:00
"id" : 1891 ,
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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1892 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "533:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-08-20 07:59:16 +00:00
"id" : 1901 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1896 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "598:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1895 ,
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-08-20 07:59:16 +00:00
"id" : 1898 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "626:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1897 ,
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-08-20 07:59:16 +00:00
"id" : 1900 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "654:15:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1899 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "570:106:20" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 1936 ,
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-08-20 07:59:16 +00:00
"id" : 1910 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 912 ,
2018-06-29 11:23:01 +00:00
"src" : "1004:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1911 ,
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-08-20 07:59:16 +00:00
"id" : 1912 ,
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-08-20 07:59:16 +00:00
"id" : 1933 ,
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-08-20 07:59:16 +00:00
"id" : 1924 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "1082:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1928 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1925 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1904 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1927 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1926 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1929 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1930 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1907 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1932 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1931 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1934 ,
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-08-20 07:59:16 +00:00
"id" : 1920 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1917 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1918 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1904 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1919 ,
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-08-20 07:59:16 +00:00
"id" : 1935 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-08-20 07:59:16 +00:00
1914
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1914 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"src" : "1031:9:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1913 ,
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-08-20 07:59:16 +00:00
"id" : 1916 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 1915 ,
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-08-20 07:59:16 +00:00
"id" : 1922 ,
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-08-20 07:59:16 +00:00
"id" : 1921 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1914 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1923 ,
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-08-20 07:59:16 +00:00
"id" : 1937 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 1908 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1904 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1902 ,
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-08-20 07:59:16 +00:00
"id" : 1903 ,
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-08-20 07:59:16 +00:00
"id" : 1907 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1937 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1905 ,
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-08-20 07:59:16 +00:00
"id" : 1906 ,
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-08-20 07:59:16 +00:00
"id" : 1909 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "918:222:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 1953 ,
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-08-20 07:59:16 +00:00
"id" : 1951 ,
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-08-20 07:59:16 +00:00
"id" : 1946 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "1477:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1948 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1947 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1939 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1949 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1950 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1941 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1952 ,
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-08-20 07:59:16 +00:00
"id" : 1954 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1944 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1943 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 892 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1942 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1939 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1954 ,
2018-06-29 11:23:01 +00:00
"src" : "1394:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1938 ,
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-08-20 07:59:16 +00:00
"id" : 1941 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 1954 ,
2018-06-29 11:23:01 +00:00
"src" : "1409:18:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1940 ,
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-08-20 07:59:16 +00:00
"id" : 1945 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "1368:158:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2044 ,
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-08-20 07:59:16 +00:00
"id" : 1968 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3828 ,
2018-06-29 11:23:01 +00:00
"src" : "2104:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1969 ,
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-08-20 07:59:16 +00:00
"id" : 1965 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2087:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 1964 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1588 ,
2018-06-29 11:23:01 +00:00
"src" : "2074:12:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1588_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1966 ,
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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1588" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1967 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1538 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1970 ,
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-08-20 07:59:16 +00:00
"id" : 1971 ,
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-08-20 07:59:16 +00:00
"id" : 1963 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1972 ,
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-08-20 07:59:16 +00:00
"id" : 1973 ,
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-08-20 07:59:16 +00:00
"id" : 1977 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1975 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1976 ,
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-08-20 07:59:16 +00:00
"id" : 1978 ,
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-08-20 07:59:16 +00:00
"id" : 1974 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1979 ,
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-08-20 07:59:16 +00:00
"id" : 1980 ,
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-08-20 07:59:16 +00:00
"id" : 1984 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1982 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1983 ,
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-08-20 07:59:16 +00:00
"id" : 1985 ,
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-08-20 07:59:16 +00:00
"id" : 1981 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1986 ,
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-08-20 07:59:16 +00:00
"id" : 1987 ,
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-08-20 07:59:16 +00:00
"id" : 1990 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"src" : "2365:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1991 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1989 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2101 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1992 ,
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-08-20 07:59:16 +00:00
"id" : 1993 ,
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-08-20 07:59:16 +00:00
"id" : 1988 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 1994 ,
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-08-20 07:59:16 +00:00
"id" : 1995 ,
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-08-20 07:59:16 +00:00
"id" : 2001 ,
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-08-20 07:59:16 +00:00
"id" : 1996 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "2422:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1998 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 1997 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 1999 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2000 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2002 ,
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-08-20 07:59:16 +00:00
"id" : 2005 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2003 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2004 ,
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-08-20 07:59:16 +00:00
"id" : 2042 ,
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-08-20 07:59:16 +00:00
2021
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2021 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2020 ,
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-08-20 07:59:16 +00:00
"id" : 2028 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-08-20 07:59:16 +00:00
"id" : 2024 ,
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-08-20 07:59:16 +00:00
"id" : 2025 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"src" : "2720:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2026 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2022 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3815 ,
2018-06-29 11:23:01 +00:00
"src" : "2667:3:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2023 ,
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-08-20 07:59:16 +00:00
"id" : 2027 ,
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-08-20 07:59:16 +00:00
"id" : 2032 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1956 ,
2018-06-29 11:23:01 +00:00
"src" : "2787:5:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-08-20 07:59:16 +00:00
"id" : 2033 ,
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-08-20 07:59:16 +00:00
"id" : 2034 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2021 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2035 ,
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-08-20 07:59:16 +00:00
"id" : 2036 ,
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-08-20 07:59:16 +00:00
"id" : 2037 ,
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-08-20 07:59:16 +00:00
"id" : 2030 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2753:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2031 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1106 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2038 ,
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-08-20 07:59:16 +00:00
"id" : 2039 ,
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-08-20 07:59:16 +00:00
"id" : 2029 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2040 ,
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-08-20 07:59:16 +00:00
"id" : 2041 ,
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-08-20 07:59:16 +00:00
"id" : 2043 ,
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-08-20 07:59:16 +00:00
"id" : 2019 ,
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-08-20 07:59:16 +00:00
"id" : 2009 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1958 ,
2018-06-29 11:23:01 +00:00
"src" : "2543:2:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2010 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1960 ,
2018-06-29 11:23:01 +00:00
"src" : "2547:6:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-08-20 07:59:16 +00:00
"id" : 2011 ,
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-08-20 07:59:16 +00:00
"id" : 2012 ,
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-08-20 07:59:16 +00:00
"id" : 2013 ,
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-08-20 07:59:16 +00:00
"id" : 2014 ,
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-08-20 07:59:16 +00:00
"id" : 2007 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 878 ,
2018-06-29 11:23:01 +00:00
"src" : "2509:7:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1180" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2008 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1106 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2015 ,
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-08-20 07:59:16 +00:00
"id" : 2016 ,
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-08-20 07:59:16 +00:00
"id" : 2006 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-08-20 07:59:16 +00:00
3831 ,
3832
2018-05-31 13:01:02 +00:00
] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3832 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2017 ,
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-08-20 07:59:16 +00:00
"id" : 2018 ,
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-08-20 07:59:16 +00:00
"id" : 2045 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 1961 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 1956 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1917:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1955 ,
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-08-20 07:59:16 +00:00
"id" : 1958 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1932:10:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1957 ,
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-08-20 07:59:16 +00:00
"id" : 1960 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2045 ,
2018-06-29 11:23:01 +00:00
"src" : "1944:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 1959 ,
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-08-20 07:59:16 +00:00
"id" : 1962 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "1890:987:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2100 ,
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-08-20 07:59:16 +00:00
2055
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2055 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2990:29:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2054 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1901 ,
2018-06-29 11:23:01 +00:00
"src" : "2990:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-08-20 07:59:16 +00:00
"id" : 2059 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2056 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1894 ,
2018-06-29 11:23:01 +00:00
"src" : "3022:11:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1901_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2058 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2057 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2047 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_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-08-20 07:59:16 +00:00
"id" : 2064 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-08-20 07:59:16 +00:00
"id" : 2060 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2114 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2061 ,
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-08-20 07:59:16 +00:00
"id" : 2062 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3064:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2063 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1900 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2079 ,
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-08-20 07:59:16 +00:00
"id" : 2078 ,
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-08-20 07:59:16 +00:00
"id" : 2070 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2065 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3098:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2067 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1900 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2068 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2114 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2069 ,
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-08-20 07:59:16 +00:00
"id" : 2071 ,
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-08-20 07:59:16 +00:00
"id" : 2076 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2072 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3140:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2074 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2075 ,
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-08-20 07:59:16 +00:00
"id" : 2077 ,
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-08-20 07:59:16 +00:00
"id" : 2094 ,
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-08-20 07:59:16 +00:00
"id" : 2086 ,
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-08-20 07:59:16 +00:00
"id" : 2083 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2080 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3189:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2081 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2082 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2049 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2084 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3223:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2085 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1896 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2093 ,
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-08-20 07:59:16 +00:00
"id" : 2090 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2087 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3261:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2088 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2089 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2049 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2091 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 2055 ,
2018-06-29 11:23:01 +00:00
"src" : "3294:10:20" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-08-20 07:59:16 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1901_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-08-20 07:59:16 +00:00
"id" : 2092 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 1898 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2097 ,
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-08-20 07:59:16 +00:00
"id" : 2095 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2053 ,
"id" : 2096 ,
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-08-20 07:59:16 +00:00
"id" : 2098 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2053 ,
"id" : 2099 ,
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-08-20 07:59:16 +00:00
"id" : 2101 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 2050 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2047 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2905:13:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2046 ,
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-08-20 07:59:16 +00:00
"id" : 2049 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2920:14:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2048 ,
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-08-20 07:59:16 +00:00
"id" : 2053 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2052 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2101 ,
2018-06-29 11:23:01 +00:00
"src" : "2970:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2051 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "2883:486:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-08-20 07:59:16 +00:00
"id" : 2113 ,
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-08-20 07:59:16 +00:00
"id" : 2111 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2106 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3830 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2109 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-08-20 07:59:16 +00:00
"id" : 2107 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-08-20 07:59:16 +00:00
"referencedDeclaration" : 3830 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"id" : 2108 ,
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-08-20 07:59:16 +00:00
"id" : 2110 ,
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-08-20 07:59:16 +00:00
"functionReturnParameters" : 2105 ,
"id" : 2112 ,
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-08-20 07:59:16 +00:00
"id" : 2114 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-08-20 07:59:16 +00:00
"id" : 2102 ,
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-08-20 07:59:16 +00:00
"id" : 2105 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-08-20 07:59:16 +00:00
"id" : 2104 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-08-20 07:59:16 +00:00
"scope" : 2114 ,
2018-06-29 11:23:01 +00:00
"src" : "3523:4:20" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-08-20 07:59:16 +00:00
"id" : 2103 ,
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-08-20 07:59:16 +00:00
"scope" : 2115 ,
2018-06-29 11:23:01 +00:00
"src" : "3461:116:20" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-08-20 07:59:16 +00:00
"scope" : 2116 ,
2018-06-29 11:23:01 +00:00
"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-08-20 07:59:16 +00:00
"address" : "0x1708116ae4531c809100befcfeb0e1d0743ebce3" ,
"transactionHash" : "0x897eb698c0aa6bb52ff33520faf85f7db76e4a2c8cc2e309b56baffa47204b8d"
2018-06-29 11:23:01 +00:00
} ,
2018-08-20 07:59:16 +00:00
"1534750848541" : {
2018-06-29 11:23:01 +00:00
"events" : { } ,
"links" : { } ,
2018-08-20 07:59:16 +00:00
"address" : "0x7c728214be9a0049e6a86f2137ec61030d0aa964" ,
"transactionHash" : "0x92a76a340a62bace4afeeea2b945c577aa5e9040fb0a8c0137e10f6295590231"
2018-05-31 13:01:02 +00:00
}
} ,
2018-06-29 11:23:01 +00:00
"schemaVersion" : "2.0.0" ,
2018-08-20 07:59:16 +00:00
"updatedAt" : "2018-08-20T07:50:29.696Z"
2018-05-31 13:01:02 +00:00
}