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-09-26 09:19:53 +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
"sourceMap" : "318:3283:17:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;318:3283:17;;;;;;;" ,
"deployedSourceMap" : " 318 : 3283 : 17 : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 940 : 222 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 940 : 222 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 270 : 28 : 4 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 270 : 28 : 4 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1912 : 987 : 17 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1912 : 987 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 : 9 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 626 : 248 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1390 : 158 : 17 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 1390 : 158 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 361 : 50 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 361 : 50 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 361 : 50 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3483 : 116 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 3483 : 116 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 535 : 50 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 535 : 50 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 417 : 40 ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 417 : 40 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 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 ; 417 : 40 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 940 : 222 ; 1053 : 9 ; 1026 : 12 ; : 10 ; : 12 : : i ; : : : - ; 1065 : 1 ; 1053 : 13 ; ; 1048 : 107 ; 1072 : 6 ; : 13 ; 1068 : 1 ; : 17 ; 1048 : 107 ; ; ; 1140 : 12 ; 1153 : 1 ; 1140 : 15 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1104 : 11 ; : 22 ; 1116 : 6 ; 1123 : 1 ; 1116 : 9 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1104 : 22 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; : 51 ; ; ; ; 1087 : 3 ; ; ; ; ; ; ; 1048 : 107 ; ; ; 940 : 222 ; ; ; : : : o ; 270 : 28 : 4 : - ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 1912 : 987 : 17 : - ; 2669 : 17 ; 2109 : 7 ; ; ; ; ; ; ; ; ; ; ; 2096 : 29 ; ; ; 2126 : 10 ; 2096 : 41 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2096 : 41 : 17 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2096 : 41 : 17 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2096 : 41 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2088 : 91 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2203 : 1 ; 2197 : 2 ; : 7 ; ; ; ; 2189 : 47 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2263 : 1 ; 2254 : 6 ; : 10 ; 2246 : 46 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2374 : 27 ; 2387 : 5 ; 2394 : 6 ; 2374 : 12 ; : 27 : : i ; : : : - ; 2366 : 68 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2477 : 6 ; 2444 : 11 ; : 18 ; 2456 : 5 ; 2444 : 18 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 29 ; ; ; : 39 ; ; ; ; ; ; ; ; ; ; ; 2506 : 1 ; 2497 : 5 ; : 10 ; ; ; 2493 : 400 ; ; ; 2531 : 7 ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 2565 : 2 ; 2569 : 6 ; 2581 : 19 ; 2531 : 70 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2531 : 70 : 17 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2531 : 70 : 17 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2531 : 70 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2523 : 115 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2493 : 400 ; ; ; 2742 : 2 ; 2746 : 6 ; 2689 : 64 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 49 : 4 : -1 ; 39 : 7 ; 30 ; 26 : 21 ; 22 : 32 ; 13 : 7 ; 6 : 49 ; 2689 : 64 : 17 ; ; ; ; ; ; ; 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 ; ; ; 2689 : 64 : 17 ; 2669 : 84 ; ; 2775 : 7 ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 2809 : 5 ; 2816 : 1 ; 2819 : 4 ; 2825 : 19 ; 2775 : 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 ; 2775 : 70 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2775 : 70 : 17 ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 45 : 16 ; 42 : 1 ; 39 ; 24 : 38 ; 77 : 16 ; 74 : 1 ; 67 : 27 ; 5 : 2 ; 2775 : 70 : 17 ; ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; 2775 : 70 : 17 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2767 : 115 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2493 : 400 ; 1912 : 987 ; ; ; ; : : : o ; 626 : 248 : 9 : - ; 367 : 7 : 4 ; ; ; ; ; ; ; ; ; ; ; 345 : 30 ; ; : 10 ; : 30 ; ; ; 337 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 791 : 1 : 9 ; 776 : 11 ; : 16 ; ; ; ; 768 : 65 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 856 : 11 ; 843 : 10 ; ; : 24 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 626 : 248 ; : : : o ; 1390 : 158 : 17 : - ; 367 : 7 : 4 ; ; ; ; ; ; ; ; ; ; ; 345 : 30 ; ; : 10 ; : 30 ; ; ; 337 : 81 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1531 : 10 : 17 ; 1499 : 11 ; : 18 ; 1511 : 5 ; 1499 : 18 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : 29 ; ; : 42 ; ; ; ; 1390 : 158 ; ; : : : o ; 361 : 50 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 3483 : 116 : : - ; 3545 : 4 ; 3585 : 6 ; 3579 : 3 ; : 12 ; ; ; ; ; ; ; ; 3572 : 3 ; : 20 ; 3565 : 27 ; ; 3483 : 116 ; : : : o ; 535 : 50 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 417 : 40 : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : o ; 442 : 300 : 4 : - ; 656 : 1 ; 644 : 7 ; ; ; ; ; ; ; ; ; ; ; 636 : 21 ; ; ; 628 : 62 ; ;
"source" : "pragma solidity 0.4.24;\nimport \"../base/Module.sol\";\nimport \"../base/ModuleManager.sol\";\nimport \"../base/OwnerManager.sol\";\nimport \"../common/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.2\";\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-09-26 09:19:53 +00:00
2110
2018-05-31 13:01:02 +00:00
]
} ,
2018-09-26 09:19:53 +00:00
"id" : 2111 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-09-26 09:19:53 +00:00
"id" : 1873 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-09-26 09:19:53 +00:00
"src" : "0:23:17"
2018-05-31 13:01:02 +00:00
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/Module.sol" ,
"file" : "../base/Module.sol" ,
"id" : 1874 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 936 ,
"src" : "24:28:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/ModuleManager.sol" ,
"file" : "../base/ModuleManager.sol" ,
"id" : 1875 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1213 ,
"src" : "53:35:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/OwnerManager.sol" ,
"file" : "../base/OwnerManager.sol" ,
"id" : 1876 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1653 ,
"src" : "89:34:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/common/Enum.sol" ,
"file" : "../common/Enum.sol" ,
"id" : 1877 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1660 ,
"src" : "124:28:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1878 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 935 ,
"src" : "347:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_Module_$935" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1879 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-09-26 09:19:53 +00:00
"src" : "347:6:17"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-09-26 09:19:53 +00:00
935 ,
1693 ,
1735
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-09-26 09:19:53 +00:00
"id" : 2110 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-09-26 09:19:53 +00:00
2110 ,
935 ,
1693 ,
1735
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-09-26 09:19:53 +00:00
"id" : 1882 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "361:50:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1880 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "361:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "4461696c79204c696d6974204d6f64756c65" ,
2018-09-26 09:19:53 +00:00
"id" : 1881 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "391:20:17" ,
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-09-26 09:19:53 +00:00
"id" : 1885 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "417:40:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1883 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "417:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"hexValue" : "302e302e32" ,
"id" : 1884 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "450:7:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_stringliteral_b30367effb941b728181f67f3bd24a38a4fff408ee7fb3b074425c9fb5e9be74" ,
"typeString" : "literal_string \"0.0.2\""
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"value" : "0.0.2"
2018-05-31 13:01:02 +00:00
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1889 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "535:50:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1888 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-09-26 09:19:53 +00:00
"id" : 1886 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "544:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
2018-09-26 09:19:53 +00:00
"src" : "535:31:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1887 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1896 ,
"src" : "555:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-09-26 09:19:53 +00:00
"id" : 1896 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1891 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "620:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1890 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "620:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1893 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "648:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1892 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "648:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1895 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "676:15:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1894 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "676:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "DailyLimit" ,
"nodeType" : "StructDefinition" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "592:106:17" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 1931 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "1016:146:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 1905 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 934 ,
"src" : "1026:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1906 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "1026:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1907 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1026:12:17"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1928 ,
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-09-26 09:19:53 +00:00
"id" : 1919 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "1104:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1923 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1920 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1899 ,
"src" : "1116:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1922 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1921 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1123:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1116:9:17" ,
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-09-26 09:19:53 +00:00
"src" : "1104:22:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1924 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "1104:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1925 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1902 ,
"src" : "1140:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1927 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1926 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1153:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1140:15:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1104:51:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1929 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1104:51:17"
2018-05-31 13:01:02 +00:00
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1915 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1912 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1068:1:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1913 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1899 ,
"src" : "1072:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1914 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "1072:13:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1068:17:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1930 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-09-26 09:19:53 +00:00
1909
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1909 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "1053:9:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1908 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1053:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 1911 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1910 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "1065:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1053:13:17"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1917 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-09-26 09:19:53 +00:00
"src" : "1087:3:17" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1916 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1087:1:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1918 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1087:3:17"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1048:107:17"
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-09-26 09:19:53 +00:00
"id" : 1932 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1903 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1899 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "955:16:17" ,
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-09-26 09:19:53 +00:00
"id" : 1897 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "955:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1898 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "955:9:17" ,
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-09-26 09:19:53 +00:00
"id" : 1902 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "973:22:17" ,
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-09-26 09:19:53 +00:00
"id" : 1900 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "973:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1901 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "973:9:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_storage_ptr" ,
"typeString" : "uint256[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "954:42:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1904 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "1016:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "940:222:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 1948 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "1489:59:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1946 ,
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-09-26 09:19:53 +00:00
"id" : 1941 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "1499:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1943 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1942 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1934 ,
"src" : "1511:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "1499:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1944 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "1499:29:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1945 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1936 ,
"src" : "1531:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1499:42:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1947 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1499:42:17"
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-09-26 09:19:53 +00:00
"id" : 1949 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1939 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1938 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 914 ,
"src" : "1474:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-09-26 09:19:53 +00:00
"src" : "1474:10:17"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "changeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1937 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1934 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1949 ,
"src" : "1416:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1933 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1416:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1936 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1949 ,
"src" : "1431:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1935 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1431:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "1415:35:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1940 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "1489:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "1390:158:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2039 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2001:898:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1963 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4491 ,
"src" : "2126:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1964 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2126:10:17" ,
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-09-26 09:19:53 +00:00
"id" : 1960 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2109:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 1959 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1652 ,
"src" : "2096:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1652_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1961 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2096:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1652" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1962 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1602 ,
"src" : "2096:29:17" ,
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-09-26 09:19:53 +00:00
"id" : 1965 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2096:41:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4d6574686f642063616e206f6e6c792062652063616c6c656420627920616e206f776e6572" ,
2018-09-26 09:19:53 +00:00
"id" : 1966 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2139:39:17" ,
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-09-26 09:19:53 +00:00
"id" : 1958 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2088:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1967 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2088:91:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1968 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2088:91:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1972 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1970 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2197:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1971 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2203:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2197:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420746f20616464726573732070726f7669646564" ,
2018-09-26 09:19:53 +00:00
"id" : 1973 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2206:29:17" ,
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-09-26 09:19:53 +00:00
"id" : 1969 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2189:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1974 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2189:47:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1975 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2189:47:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1979 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1977 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2254:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1978 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2263:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2254:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420616d6f756e742070726f7669646564" ,
2018-09-26 09:19:53 +00:00
"id" : 1980 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2266:25:17" ,
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-09-26 09:19:53 +00:00
"id" : 1976 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2246:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1981 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2246:46:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1982 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2246:46:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1985 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2387:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1986 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2394:6:17" ,
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-09-26 09:19:53 +00:00
"id" : 1984 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2096 ,
"src" : "2374:12:17" ,
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-09-26 09:19:53 +00:00
"id" : 1987 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2374:27:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4461696c79206c696d697420686173206265656e2072656163686564" ,
2018-09-26 09:19:53 +00:00
"id" : 1988 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2403:30:17" ,
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-09-26 09:19:53 +00:00
"id" : 1983 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2366:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1989 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2366:68:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1990 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2366:68:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1996 ,
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-09-26 09:19:53 +00:00
"id" : 1991 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "2444:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1993 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1992 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2456:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "2444:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1994 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "2444:29:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "+=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1995 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2477:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "2444:39:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1997 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2444:39:17"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2000 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1998 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2497:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1999 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2506:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2497:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2037 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2655:238:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-09-26 09:19:53 +00:00
2016
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2016 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "2669:17:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2015 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2669:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2023 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-09-26 09:19:53 +00:00
"id" : 2019 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2713:27:17" ,
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-09-26 09:19:53 +00:00
"id" : 2020 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2742:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2021 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2746:6:17" ,
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-09-26 09:19:53 +00:00
"id" : 2017 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4478 ,
"src" : "2689:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2018 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodeWithSignature" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2689:23:17" ,
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-09-26 09:19:53 +00:00
"id" : 2022 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2689:64:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2669:84:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2027 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2809:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 2028 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2816:1:17" ,
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-09-26 09:19:53 +00:00
"id" : 2029 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2016 ,
"src" : "2819:4:17" ,
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-09-26 09:19:53 +00:00
"id" : 2030 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1659 ,
"src" : "2825:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_Enum_$1659_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract Enum)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2031 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1658 ,
"src" : "2825:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_enum$_Operation_$1658_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2032 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2825:19:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"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"
} ,
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2025 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2775:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2026 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1138 ,
"src" : "2775:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$1658_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2033 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2775:70:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74206578656375746520746f6b656e207472616e73666572" ,
2018-09-26 09:19:53 +00:00
"id" : 2034 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2847:34:17" ,
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-09-26 09:19:53 +00:00
"id" : 2024 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2767:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 2035 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2767:115:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2036 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2767:115:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-09-26 09:19:53 +00:00
"id" : 2038 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2493:400:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2014 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2509:140:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2004 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2565:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2005 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2569:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-09-26 09:19:53 +00:00
"id" : 2006 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2577:2:17" ,
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-09-26 09:19:53 +00:00
"id" : 2007 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1659 ,
"src" : "2581:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_Enum_$1659_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract Enum)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2008 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1658 ,
"src" : "2581:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_enum$_Operation_$1658_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2009 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2581:19:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2002 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2531:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2003 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1138 ,
"src" : "2531:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$1658_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2010 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2531:70:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f742065786563757465206574686572207472616e73666572" ,
2018-09-26 09:19:53 +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-09-26 09:19:53 +00:00
"src" : "2603:34:17" ,
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-09-26 09:19:53 +00:00
"id" : 2001 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2523:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 2012 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2523:115:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2013 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2523:115:17"
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-09-26 09:19:53 +00:00
"id" : 2040 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1956 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1951 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1939:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1950 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1939:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1953 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1954:10:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1952 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1954:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1955 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1966:14:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1954 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1966:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "1938:43:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1957 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "2001:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "1912:987:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2095 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3002:389:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-09-26 09:19:53 +00:00
2050
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2050 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "3012:29:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2049 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1896 ,
"src" : "3012:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2054 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2051 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "3044:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2053 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2052 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2042 ,
"src" : "3056:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "3044:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3012:50:17"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2059 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 2055 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2109 ,
"src" : "3076:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2056 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "3076:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2057 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3086:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2058 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1895 ,
"src" : "3086:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3076:28:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2074 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3072:126:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2073 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3106:92:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2065 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2060 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3120:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2062 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1895 ,
"src" : "3120:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 2063 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2109 ,
"src" : "3141:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2064 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "3141:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3120:28:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2066 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3120:28:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2071 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2067 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3162:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2069 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3162:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 2070 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3186:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "3162:25:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2072 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3162:25:17"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2089 ,
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-09-26 09:19:53 +00:00
"id" : 2081 ,
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-09-26 09:19:53 +00:00
"id" : 2078 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2075 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3211:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2076 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3211:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2077 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2044 ,
"src" : "3235:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:30:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2079 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3245:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2080 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "3245:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:55:17" ,
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-09-26 09:19:53 +00:00
"id" : 2088 ,
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-09-26 09:19:53 +00:00
"id" : 2085 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2082 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3283:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2083 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3283:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2084 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2044 ,
"src" : "3307:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3283:30:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2086 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3316:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2087 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3316:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3283:54:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:126:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2092 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3207:155:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
2018-09-26 09:19:53 +00:00
"id" : 2090 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3358:4:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2048 ,
"id" : 2091 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3351:11:17"
2018-05-31 13:01:02 +00:00
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
2018-09-26 09:19:53 +00:00
"id" : 2093 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3379:5:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2048 ,
"id" : 2094 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3372:12:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2096 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2045 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2042 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2927:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2041 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2927:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2044 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2942:14:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2043 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2942:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "2926:31:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2048 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2047 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2992:4:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2046 ,
2018-05-31 13:01:02 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2992:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "2991:6:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "2905:486:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2108 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3555:44:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2106 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2101 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4493 ,
"src" : "3572:3:17" ,
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-09-26 09:19:53 +00:00
"id" : 2104 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2102 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4493 ,
"src" : "3579:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "%" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
2018-09-26 09:19:53 +00:00
"id" : 2103 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3585:6:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : "days" ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_86400_by_1" ,
"typeString" : "int_const 86400"
} ,
"value" : "1"
} ,
2018-09-26 09:19:53 +00:00
"src" : "3579:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2105 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-09-26 09:19:53 +00:00
"src" : "3578:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3572:20:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2100 ,
"id" : 2107 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3565:27:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns last midnight as Unix timestamp.\n @return Unix timestamp." ,
2018-09-26 09:19:53 +00:00
"id" : 2109 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2097 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "3497:2:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2100 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2099 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2109 ,
"src" : "3545:4:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2098 ,
2018-05-31 13:01:02 +00:00
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "3545:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "3544:6:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "3483:116:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"src" : "318:3283:17"
2018-05-31 13:01:02 +00:00
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "0:3602:17"
2018-05-31 13:01:02 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/modules/DailyLimitModule.sol" ,
"exportedSymbols" : {
"DailyLimitModule" : [
2018-09-26 09:19:53 +00:00
2110
2018-05-31 13:01:02 +00:00
]
} ,
2018-09-26 09:19:53 +00:00
"id" : 2111 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-09-26 09:19:53 +00:00
"id" : 1873 ,
2018-05-31 13:01:02 +00:00
"literals" : [
"solidity" ,
"0.4" ,
".24"
] ,
"nodeType" : "PragmaDirective" ,
2018-09-26 09:19:53 +00:00
"src" : "0:23:17"
2018-05-31 13:01:02 +00:00
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/Module.sol" ,
"file" : "../base/Module.sol" ,
"id" : 1874 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 936 ,
"src" : "24:28:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/ModuleManager.sol" ,
"file" : "../base/ModuleManager.sol" ,
"id" : 1875 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1213 ,
"src" : "53:35:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/base/OwnerManager.sol" ,
"file" : "../base/OwnerManager.sol" ,
"id" : 1876 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1653 ,
"src" : "89:34:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
2018-09-26 09:19:53 +00:00
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/common/Enum.sol" ,
"file" : "../common/Enum.sol" ,
"id" : 1877 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ImportDirective" ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"sourceUnit" : 1660 ,
"src" : "124:28:17" ,
2018-05-31 13:01:02 +00:00
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1878 ,
2018-05-31 13:01:02 +00:00
"name" : "Module" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 935 ,
"src" : "347:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_Module_$935" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract Module"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1879 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "InheritanceSpecifier" ,
2018-09-26 09:19:53 +00:00
"src" : "347:6:17"
2018-05-31 13:01:02 +00:00
}
] ,
"contractDependencies" : [
2018-09-26 09:19:53 +00:00
935 ,
1693 ,
1735
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-09-26 09:19:53 +00:00
"id" : 2110 ,
2018-05-31 13:01:02 +00:00
"linearizedBaseContracts" : [
2018-09-26 09:19:53 +00:00
2110 ,
935 ,
1693 ,
1735
2018-05-31 13:01:02 +00:00
] ,
"name" : "DailyLimitModule" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : true ,
2018-09-26 09:19:53 +00:00
"id" : 1882 ,
2018-05-31 13:01:02 +00:00
"name" : "NAME" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "361:50:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1880 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "361:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "4461696c79204c696d6974204d6f64756c65" ,
2018-09-26 09:19:53 +00:00
"id" : 1881 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "391:20:17" ,
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-09-26 09:19:53 +00:00
"id" : 1885 ,
2018-05-31 13:01:02 +00:00
"name" : "VERSION" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "417:40:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory" ,
"typeString" : "string"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1883 ,
2018-05-31 13:01:02 +00:00
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "417:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"hexValue" : "302e302e32" ,
"id" : 1884 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "450:7:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_stringliteral_b30367effb941b728181f67f3bd24a38a4fff408ee7fb3b074425c9fb5e9be74" ,
"typeString" : "literal_string \"0.0.2\""
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"value" : "0.0.2"
2018-05-31 13:01:02 +00:00
} ,
"visibility" : "public"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1889 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "535:50:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1888 ,
2018-05-31 13:01:02 +00:00
"keyType" : {
2018-09-26 09:19:53 +00:00
"id" : 1886 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "544:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
2018-09-26 09:19:53 +00:00
"src" : "535:31:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit)"
} ,
"valueType" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1887 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1896 ,
"src" : "555:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
}
} ,
"value" : null ,
"visibility" : "public"
} ,
{
"canonicalName" : "DailyLimitModule.DailyLimit" ,
2018-09-26 09:19:53 +00:00
"id" : 1896 ,
2018-05-31 13:01:02 +00:00
"members" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1891 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "620:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1890 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "620:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1893 ,
2018-05-31 13:01:02 +00:00
"name" : "spentToday" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "648:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1892 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "648:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1895 ,
2018-05-31 13:01:02 +00:00
"name" : "lastDay" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1896 ,
"src" : "676:15:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1894 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "676:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "DailyLimit" ,
"nodeType" : "StructDefinition" ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "592:106:17" ,
2018-05-31 13:01:02 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 1931 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "1016:146:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 1905 ,
2018-05-31 13:01:02 +00:00
"name" : "setManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 934 ,
"src" : "1026:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$__$returns$__$" ,
"typeString" : "function ()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1906 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "1026:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1907 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1026:12:17"
2018-05-31 13:01:02 +00:00
} ,
{
"body" : {
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1928 ,
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-09-26 09:19:53 +00:00
"id" : 1919 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "1104:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1923 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1920 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1899 ,
"src" : "1116:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1922 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1921 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1123:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1116:9:17" ,
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-09-26 09:19:53 +00:00
"src" : "1104:22:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1924 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "1104:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1925 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1902 ,
"src" : "1140:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_memory_ptr" ,
"typeString" : "uint256[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1927 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1926 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1153:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1140:15:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1104:51:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1929 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1104:51:17"
2018-05-31 13:01:02 +00:00
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1915 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1912 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1068:1:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1913 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1899 ,
"src" : "1072:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_address_$dyn_memory_ptr" ,
"typeString" : "address[] memory"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1914 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "1072:13:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1068:17:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1930 ,
2018-05-31 13:01:02 +00:00
"initializationExpression" : {
"assignments" : [
2018-09-26 09:19:53 +00:00
1909
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1909 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "1053:9:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1908 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1053:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 1911 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1910 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "1065:1:17" ,
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-09-26 09:19:53 +00:00
"src" : "1053:13:17"
2018-05-31 13:01:02 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1917 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-09-26 09:19:53 +00:00
"src" : "1087:3:17" ,
2018-05-31 13:01:02 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1916 ,
2018-05-31 13:01:02 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1909 ,
"src" : "1087:1:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1918 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1087:3:17"
2018-05-31 13:01:02 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1048:107:17"
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-09-26 09:19:53 +00:00
"id" : 1932 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "setup" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1903 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1899 ,
2018-05-31 13:01:02 +00:00
"name" : "tokens" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "955:16:17" ,
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-09-26 09:19:53 +00:00
"id" : 1897 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "955:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1898 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "955:9:17" ,
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-09-26 09:19:53 +00:00
"id" : 1902 ,
2018-05-31 13:01:02 +00:00
"name" : "_dailyLimits" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1932 ,
"src" : "973:22:17" ,
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-09-26 09:19:53 +00:00
"id" : 1900 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "973:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1901 ,
2018-05-31 13:01:02 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "973:9:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_array$_t_uint256_$dyn_storage_ptr" ,
"typeString" : "uint256[]"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "954:42:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1904 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "1016:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "940:222:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 1948 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "1489:59:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1946 ,
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-09-26 09:19:53 +00:00
"id" : 1941 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "1499:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1943 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1942 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1934 ,
"src" : "1511:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "1499:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1944 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "1499:29:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1945 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1936 ,
"src" : "1531:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "1499:42:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1947 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "1499:42:17"
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-09-26 09:19:53 +00:00
"id" : 1949 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [
{
"arguments" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1939 ,
2018-05-31 13:01:02 +00:00
"modifierName" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1938 ,
2018-05-31 13:01:02 +00:00
"name" : "authorized" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 914 ,
"src" : "1474:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_modifier$__$" ,
"typeString" : "modifier ()"
}
} ,
"nodeType" : "ModifierInvocation" ,
2018-09-26 09:19:53 +00:00
"src" : "1474:10:17"
2018-05-31 13:01:02 +00:00
}
] ,
"name" : "changeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1937 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1934 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1949 ,
"src" : "1416:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1933 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1416:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1936 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 1949 ,
"src" : "1431:18:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1935 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1431:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "1415:35:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1940 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "1489:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "1390:158:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2039 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2001:898:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1963 ,
2018-05-31 13:01:02 +00:00
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4491 ,
"src" : "2126:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1964 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2126:10:17" ,
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-09-26 09:19:53 +00:00
"id" : 1960 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2109:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 1959 ,
2018-05-31 13:01:02 +00:00
"name" : "OwnerManager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1652 ,
"src" : "2096:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_OwnerManager_$1652_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract OwnerManager)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1961 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2096:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_OwnerManager_$1652" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract OwnerManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1962 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "isOwner" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1602 ,
"src" : "2096:29:17" ,
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-09-26 09:19:53 +00:00
"id" : 1965 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2096:41:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4d6574686f642063616e206f6e6c792062652063616c6c656420627920616e206f776e6572" ,
2018-09-26 09:19:53 +00:00
"id" : 1966 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2139:39:17" ,
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-09-26 09:19:53 +00:00
"id" : 1958 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2088:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1967 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2088:91:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1968 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2088:91:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1972 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1970 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2197:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1971 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2203:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2197:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420746f20616464726573732070726f7669646564" ,
2018-09-26 09:19:53 +00:00
"id" : 1973 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2206:29:17" ,
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-09-26 09:19:53 +00:00
"id" : 1969 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2189:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1974 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2189:47:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1975 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2189:47:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 1979 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1977 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2254:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1978 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2263:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2254:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "496e76616c696420616d6f756e742070726f7669646564" ,
2018-09-26 09:19:53 +00:00
"id" : 1980 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2266:25:17" ,
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-09-26 09:19:53 +00:00
"id" : 1976 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2246:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1981 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2246:46:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1982 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2246:46:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1985 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2387:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1986 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2394:6:17" ,
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-09-26 09:19:53 +00:00
"id" : 1984 ,
2018-05-31 13:01:02 +00:00
"name" : "isUnderLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2096 ,
"src" : "2374:12:17" ,
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-09-26 09:19:53 +00:00
"id" : 1987 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2374:27:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4461696c79206c696d697420686173206265656e2072656163686564" ,
2018-09-26 09:19:53 +00:00
"id" : 1988 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2403:30:17" ,
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-09-26 09:19:53 +00:00
"id" : 1983 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2366:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 1989 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2366:68:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1990 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2366:68:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1996 ,
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-09-26 09:19:53 +00:00
"id" : 1991 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "2444:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1993 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1992 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2456:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "2444:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1994 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "2444:29:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "+=" ,
"rightHandSide" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1995 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2477:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "2444:39:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 1997 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2444:39:17"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2000 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 1998 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2497:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 1999 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2506:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "2497:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2037 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2655:238:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-09-26 09:19:53 +00:00
2016
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2016 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "2669:17:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2015 ,
2018-05-31 13:01:02 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2669:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
"typeString" : "bytes"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2023 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "7472616e7366657228616464726573732c75696e7432353629" ,
2018-09-26 09:19:53 +00:00
"id" : 2019 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2713:27:17" ,
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-09-26 09:19:53 +00:00
"id" : 2020 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2742:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2021 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2746:6:17" ,
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-09-26 09:19:53 +00:00
"id" : 2017 ,
2018-05-31 13:01:02 +00:00
"name" : "abi" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4478 ,
"src" : "2689:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_magic_abi" ,
"typeString" : "abi"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2018 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "encodeWithSignature" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2689:23:17" ,
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-09-26 09:19:53 +00:00
"id" : 2022 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2689:64:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
"typeString" : "bytes memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2669:84:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2027 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1951 ,
"src" : "2809:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 2028 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2816:1:17" ,
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-09-26 09:19:53 +00:00
"id" : 2029 ,
2018-05-31 13:01:02 +00:00
"name" : "data" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2016 ,
"src" : "2819:4:17" ,
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-09-26 09:19:53 +00:00
"id" : 2030 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1659 ,
"src" : "2825:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_Enum_$1659_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract Enum)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2031 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1658 ,
"src" : "2825:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_enum$_Operation_$1658_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2032 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2825:19:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"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"
} ,
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2025 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2775:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2026 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1138 ,
"src" : "2775:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$1658_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2033 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2775:70:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f74206578656375746520746f6b656e207472616e73666572" ,
2018-09-26 09:19:53 +00:00
"id" : 2034 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2847:34:17" ,
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-09-26 09:19:53 +00:00
"id" : 2024 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2767:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 2035 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2767:115:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2036 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2767:115:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
2018-09-26 09:19:53 +00:00
"id" : 2038 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2493:400:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2014 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "2509:140:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2004 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1953 ,
"src" : "2565:2:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2005 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1955 ,
"src" : "2569:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "" ,
2018-09-26 09:19:53 +00:00
"id" : 2006 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "2577:2:17" ,
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-09-26 09:19:53 +00:00
"id" : 2007 ,
2018-05-31 13:01:02 +00:00
"name" : "Enum" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1659 ,
"src" : "2581:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_contract$_Enum_$1659_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(contract Enum)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2008 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "Operation" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1658 ,
"src" : "2581:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_type$_t_enum$_Operation_$1658_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "type(enum Enum.Operation)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2009 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"memberName" : "Call" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-09-26 09:19:53 +00:00
"src" : "2581:19:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" ,
"typeString" : "literal_string \"\""
} ,
{
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_enum$_Operation_$1658" ,
2018-05-31 13:01:02 +00:00
"typeString" : "enum Enum.Operation"
}
] ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2002 ,
2018-05-31 13:01:02 +00:00
"name" : "manager" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 900 ,
"src" : "2531:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_contract$_ModuleManager_$1212" ,
2018-05-31 13:01:02 +00:00
"typeString" : "contract ModuleManager"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2003 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "execTransactionFromModule" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1138 ,
"src" : "2531:33:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$1658_$returns$_t_bool_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "function (address,uint256,bytes memory,enum Enum.Operation) external returns (bool)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2010 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2531:70:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "436f756c64206e6f742065786563757465206574686572207472616e73666572" ,
2018-09-26 09:19:53 +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-09-26 09:19:53 +00:00
"src" : "2603:34:17" ,
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-09-26 09:19:53 +00:00
"id" : 2001 ,
2018-05-31 13:01:02 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [
2018-09-26 09:19:53 +00:00
4494 ,
4495
2018-05-31 13:01:02 +00:00
] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4495 ,
"src" : "2523:7:17" ,
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-09-26 09:19:53 +00:00
"id" : 2012 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "2523:115:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2013 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "2523:115:17"
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-09-26 09:19:53 +00:00
"id" : 2040 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeDailyLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1956 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1951 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1939:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1950 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1939:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1953 ,
2018-05-31 13:01:02 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1954:10:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1952 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1954:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 1955 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2040 ,
"src" : "1966:14:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 1954 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "1966:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "1938:43:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 1957 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "2001:0:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "1912:987:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2095 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3002:389:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"assignments" : [
2018-09-26 09:19:53 +00:00
2050
2018-05-31 13:01:02 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2050 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "3012:29:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "storage" ,
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
} ,
"typeName" : {
"contractScope" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2049 ,
2018-05-31 13:01:02 +00:00
"name" : "DailyLimit" ,
"nodeType" : "UserDefinedTypeName" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1896 ,
"src" : "3012:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2054 ,
2018-05-31 13:01:02 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2051 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimits" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1889 ,
"src" : "3044:11:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_mapping$_t_address_$_t_struct$_DailyLimit_$1896_storage_$" ,
2018-05-31 13:01:02 +00:00
"typeString" : "mapping(address => struct DailyLimitModule.DailyLimit storage ref)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2053 ,
2018-05-31 13:01:02 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2052 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2042 ,
"src" : "3056:5:17" ,
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-09-26 09:19:53 +00:00
"src" : "3044:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage ref"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3012:50:17"
2018-05-31 13:01:02 +00:00
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2059 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 2055 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2109 ,
"src" : "3076:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2056 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "3076:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2057 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3086:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2058 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1895 ,
"src" : "3086:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3076:28:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2074 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3072:126:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
2018-09-26 09:19:53 +00:00
"id" : 2073 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3106:92:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2065 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2060 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3120:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2062 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "lastDay" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1895 ,
"src" : "3120:18:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [ ] ,
"expression" : {
"argumentTypes" : [ ] ,
2018-09-26 09:19:53 +00:00
"id" : 2063 ,
2018-05-31 13:01:02 +00:00
"name" : "today" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2109 ,
"src" : "3141:5:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_view$__$returns$_t_uint256_$" ,
"typeString" : "function () view returns (uint256)"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2064 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-09-26 09:19:53 +00:00
"src" : "3141:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3120:28:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2066 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3120:28:17"
2018-05-31 13:01:02 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2071 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2067 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3162:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2069 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3162:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-09-26 09:19:53 +00:00
"id" : 2070 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3186:1:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
2018-09-26 09:19:53 +00:00
"src" : "3162:25:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2072 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ExpressionStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3162:25:17"
2018-05-31 13:01:02 +00:00
}
]
}
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2089 ,
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-09-26 09:19:53 +00:00
"id" : 2081 ,
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-09-26 09:19:53 +00:00
"id" : 2078 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2075 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3211:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2076 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3211:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2077 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2044 ,
"src" : "3235:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:30:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2079 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3245:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2080 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "dailyLimit" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1891 ,
"src" : "3245:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:55:17" ,
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-09-26 09:19:53 +00:00
"id" : 2088 ,
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-09-26 09:19:53 +00:00
"id" : 2085 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2082 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3283:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2083 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3283:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "+" ,
"rightExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2084 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2044 ,
"src" : "3307:6:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3283:30:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2086 ,
2018-05-31 13:01:02 +00:00
"name" : "dailyLimit" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 2050 ,
"src" : "3316:10:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
2018-09-26 09:19:53 +00:00
"typeIdentifier" : "t_struct$_DailyLimit_$1896_storage_ptr" ,
2018-05-31 13:01:02 +00:00
"typeString" : "struct DailyLimitModule.DailyLimit storage pointer"
}
} ,
2018-09-26 09:19:53 +00:00
"id" : 2087 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "spentToday" ,
"nodeType" : "MemberAccess" ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 1893 ,
"src" : "3316:21:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3283:54:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3211:126:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2092 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "IfStatement" ,
2018-09-26 09:19:53 +00:00
"src" : "3207:155:17" ,
2018-05-31 13:01:02 +00:00
"trueBody" : {
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
2018-09-26 09:19:53 +00:00
"id" : 2090 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3358:4:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2048 ,
"id" : 2091 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3351:11:17"
2018-05-31 13:01:02 +00:00
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "66616c7365" ,
2018-09-26 09:19:53 +00:00
"id" : 2093 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3379:5:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "false"
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2048 ,
"id" : 2094 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3372:12:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2096 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "isUnderLimit" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2045 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2042 ,
2018-05-31 13:01:02 +00:00
"name" : "token" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2927:13:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2041 ,
2018-05-31 13:01:02 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2927:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2044 ,
2018-05-31 13:01:02 +00:00
"name" : "amount" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2942:14:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2043 ,
2018-05-31 13:01:02 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2942:7:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "2926:31:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2048 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2047 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2096 ,
"src" : "2992:4:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2046 ,
2018-05-31 13:01:02 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "2992:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "2991:6:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "2905:486:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
2018-09-26 09:19:53 +00:00
"id" : 2108 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Block" ,
2018-09-26 09:19:53 +00:00
"src" : "3555:44:17" ,
2018-05-31 13:01:02 +00:00
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-09-26 09:19:53 +00:00
"id" : 2106 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2101 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4493 ,
"src" : "3572:3:17" ,
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-09-26 09:19:53 +00:00
"id" : 2104 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-09-26 09:19:53 +00:00
"id" : 2102 ,
2018-05-31 13:01:02 +00:00
"name" : "now" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-09-26 09:19:53 +00:00
"referencedDeclaration" : 4493 ,
"src" : "3579:3:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "%" ,
"rightExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
2018-09-26 09:19:53 +00:00
"id" : 2103 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-09-26 09:19:53 +00:00
"src" : "3585:6:17" ,
2018-05-31 13:01:02 +00:00
"subdenomination" : "days" ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_86400_by_1" ,
"typeString" : "int_const 86400"
} ,
"value" : "1"
} ,
2018-09-26 09:19:53 +00:00
"src" : "3579:12:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
2018-09-26 09:19:53 +00:00
"id" : 2105 ,
2018-05-31 13:01:02 +00:00
"isConstant" : false ,
"isInlineArray" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "TupleExpression" ,
2018-09-26 09:19:53 +00:00
"src" : "3578:14:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"src" : "3572:20:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-09-26 09:19:53 +00:00
"functionReturnParameters" : 2100 ,
"id" : 2107 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "Return" ,
2018-09-26 09:19:53 +00:00
"src" : "3565:27:17"
2018-05-31 13:01:02 +00:00
}
]
} ,
"documentation" : "@dev Returns last midnight as Unix timestamp.\n @return Unix timestamp." ,
2018-09-26 09:19:53 +00:00
"id" : 2109 ,
2018-05-31 13:01:02 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : true ,
"modifiers" : [ ] ,
"name" : "today" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2097 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-09-26 09:19:53 +00:00
"src" : "3497:2:17"
2018-05-31 13:01:02 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-09-26 09:19:53 +00:00
"id" : 2100 ,
2018-05-31 13:01:02 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-09-26 09:19:53 +00:00
"id" : 2099 ,
2018-05-31 13:01:02 +00:00
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
2018-09-26 09:19:53 +00:00
"scope" : 2109 ,
"src" : "3545:4:17" ,
2018-05-31 13:01:02 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-09-26 09:19:53 +00:00
"id" : 2098 ,
2018-05-31 13:01:02 +00:00
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
2018-09-26 09:19:53 +00:00
"src" : "3545:4:17" ,
2018-05-31 13:01:02 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "3544:6:17"
2018-05-31 13:01:02 +00:00
} ,
2018-09-26 09:19:53 +00:00
"scope" : 2110 ,
"src" : "3483:116:17" ,
2018-05-31 13:01:02 +00:00
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
}
] ,
2018-09-26 09:19:53 +00:00
"scope" : 2111 ,
"src" : "318:3283:17"
2018-05-31 13:01:02 +00:00
}
] ,
2018-09-26 09:19:53 +00:00
"src" : "0:3602:17"
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-09-26 09:19:53 +00:00
"address" : "0xb2fdbcdbb9b57c5fbc91073840344a015708b480" ,
"transactionHash" : "0x73a2310190df9e9a2d0b58d3ad2221e0650cb3971a657fe91ca2d86f86c247e8"
2018-05-31 13:01:02 +00:00
}
} ,
2018-06-29 11:23:01 +00:00
"schemaVersion" : "2.0.0" ,
2018-09-26 09:19:53 +00:00
"updatedAt" : "2018-09-26T08:56:03.722Z"
2018-05-31 13:01:02 +00:00
}