2020-11-20 13:12:02 +01:00
{
"contractName" : "BToken" ,
"abi" : [
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_TOTAL_WEIGHT" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "BPOW_PRECISION" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MIN_WEIGHT" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MIN_FEE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MIN_BALANCE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "INIT_POOL_SUPPLY" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_OUT_RATIO" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_BOUND_TOKENS" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MIN_BOUND_TOKENS" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MIN_BPOW_BASE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_FEE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_BPOW_BASE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "BONE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "EXIT_FEE" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_WEIGHT" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "MAX_IN_RATIO" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"anonymous" : false ,
"inputs" : [
{
"indexed" : true ,
"name" : "from" ,
"type" : "address"
} ,
{
"indexed" : true ,
"name" : "to" ,
"type" : "address"
} ,
{
"indexed" : false ,
"name" : "value" ,
"type" : "uint256"
}
] ,
"name" : "Transfer" ,
"type" : "event"
} ,
{
"anonymous" : false ,
"inputs" : [
{
"indexed" : true ,
"name" : "owner" ,
"type" : "address"
} ,
{
"indexed" : true ,
"name" : "spender" ,
"type" : "address"
} ,
{
"indexed" : false ,
"name" : "value" ,
"type" : "uint256"
}
] ,
"name" : "Approval" ,
"type" : "event"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "name" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "symbol" ,
"outputs" : [
{
"name" : "" ,
"type" : "string"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "decimals" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint8"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "src" ,
"type" : "address"
} ,
{
"name" : "dst" ,
"type" : "address"
}
] ,
"name" : "allowance" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [
{
"name" : "whom" ,
"type" : "address"
}
] ,
"name" : "balanceOf" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : true ,
"inputs" : [ ] ,
"name" : "totalSupply" ,
"outputs" : [
{
"name" : "" ,
"type" : "uint256"
}
] ,
"payable" : false ,
"stateMutability" : "view" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "dst" ,
"type" : "address"
} ,
{
"name" : "amt" ,
"type" : "uint256"
}
] ,
"name" : "approve" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "dst" ,
"type" : "address"
} ,
{
"name" : "amt" ,
"type" : "uint256"
}
] ,
"name" : "increaseApproval" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "dst" ,
"type" : "address"
} ,
{
"name" : "amt" ,
"type" : "uint256"
}
] ,
"name" : "decreaseApproval" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "dst" ,
"type" : "address"
} ,
{
"name" : "amt" ,
"type" : "uint256"
}
] ,
"name" : "transfer" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
} ,
{
"constant" : false ,
"inputs" : [
{
"name" : "src" ,
"type" : "address"
} ,
{
"name" : "dst" ,
"type" : "address"
} ,
{
"name" : "amt" ,
"type" : "uint256"
}
] ,
"name" : "transferFrom" ,
"outputs" : [
{
"name" : "" ,
"type" : "bool"
}
] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
}
] ,
"metadata" : "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"dst\",\"type\":\"address\"},{\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_TOTAL_WEIGHT\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"BPOW_PRECISION\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MIN_WEIGHT\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"src\",\"type\":\"address\"},{\"name\":\"dst\",\"type\":\"address\"},{\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"dst\",\"type\":\"address\"},{\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"decreaseApproval\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"whom\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MIN_FEE\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MIN_BALANCE\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"INIT_POOL_SUPPLY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OUT_RATIO\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"dst\",\"type\":\"address\"},{\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_BOUND_TOKENS\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MIN_BOUND_TOKENS\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MIN_BPOW_BASE\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\" f u n
"bytecode" : " 0 x 60 c 0 604052601360808190527 f 42616 c 616e63657220506 f 6 f 6 c 20546 f 6 b 656e0000000000000000000000000060 a 0 90815261003e91600391906100 a 3565 b 506040805180820190915260038082527 f 42505400000000000000000000000000000000000000000000000000000000006020909201918252610083916004916100 a 3565 b 506005805460 f f 1916601217905534801561009 d 57600080 f d 5 b 5061013e565 b 828054600181600116156101000203166002900490600052602060002090601 f 0 16020900481019282601 f 106100e457805160 f f 1916838001178555610111565 b 82800160010185558215610111579182015 b 828111156101115782518255916020019190600101906100 f 6565 b 5061011 d 929150610121565 b 5090565 b 61013 b 91905 b 8082111561011 d 5760008155600101610127565 b 90565 b 610 b c 88061014 d 6000396000 f 3 f e 608060405234801561001057600080 f d 5 b 50600436106101 c 6576000357 c 0 1000000000000000000000000000000000000000000000000000000009004806395 d 89 b 4111610116578063 b c 694 e a 2116100 b 4578063 d 73 d d 6231161008e578063 d 73 d d 623146103e4578063 d d 62 e d 3e14610410578063 e 4 a 28 a 5214610288578063 e c 0 930211461043e576101 c 6565 b 8063 b c 694 e a 2146103 d 4578063 c 36596 a 6146102 b 2578063 c 6580 d 12146103 d c 576101 c 6565 b 8063 b 0e0 d 136116100 f 0 578063 b 0e0 d 136146103 b 4578063 b 7 b 800 a 4146103 b c 578063 b a 0 19 d a b 146103 c 4578063 b c 0 63e1 a 146103 c c 576101 c 6565 b 806395 d 89 b 4114610378578063992e2 a 9214610380578063 a 9059 c b b 14610388576101 c 6565 b 806323 b 872 d d 1161018357806370 a 0 82311161015 d 57806370 a 0 82311461033 a 57806376 c 7 a 3 c 714610360578063867378 c 5146103685780639381 c d 2 b 14610370576101 c 6565 b 806323 b 872 d d 146102 b a 578063313 c e 567146102 f 0 578063661884631461030e576101 c 6565 b 806306 f d d e 0 3146101 c b 578063095 e a 7 b 31461024857806309 a 3 b b e 41461028857806318160 d d d 146102 a 2578063189 d 0 0 c a 146102 a a 578063218 b 5382146102 b 2575 b 600080 f d 5 b 6101 d 3610446565 b 6040805160208082528351818301528351919283929083019185019080838360005 b 8381101561020 d 5781810151838201526020016101 f 5565 b 50505050905090810190601 f 16801561023 a 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 6102746004803603604081101561025e57600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356104 d c 565 b 604080519115158252519081900360200190 f 35 b 610290610530565 b 60408051918252519081900360200190 f 35 b 61029061053 d 565 b 610290610543565 b 610290610557565 b 610274600480360360608110156102 d 0 57600080 f d 5 b 50600160 a 0 60020 a 0 3813581169160208101359091169060400135610563565 b 6102 f 86106 c 8565 b 6040805160 f f 9092168252519081900360200190 f 35 b 6102746004803603604081101561032457600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356106 d 1565 b 6102906004803603602081101561035057600080 f d 5 b 5035600160 a 0 60020 a 0 3166107 a 9565 b 6102906107 c 4565 b 6102906107 d 6565 b 6102906107 e a 565 b 6101 d 36107 f 7565 b 610290610858565 b 6102746004803603604081101561039e57600080 f d 5 b 50600160 a 0 60020 a 0 38135169060200135610864565 b 61029061087 a 565 b 61029061087 f 565 b 610290610884565 b 610290610889565 b 610290610899565 b 6102906108 a 5565 b 610274600480360360408110156103 f a 57600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356108 a a 565 b 6102906004803603604081101561042657600080 f d 5 b 50600160 a 0 60020 a 0 38135811691602001351661092 b 565 b 610290610956565 b 60038054604080516020601 f 60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104 d 25780601 f 106104 a 7576101008083540402835291602001916104 d 2565 b 820191906000526020600020905 b 8154815290600101906020018083116104 b 557829003601 f 168201915 b 5050505050905090565 b 336000818152600160209081526040808320600160 a 0 60020 a 0 3871680855290835281842086905581518681529151939490939092600080516020610 b 7 d 833981519152928290030190 a 350600192915050565 b 6802 b 5e3 a f 16 b 188000081565 b 60025490565 b 6402540 b e 400670 d e 0 b 6 b 3 a 76400005 b 0 481565 b 670 d e 0 b 6 b 3 a 764000081565 b 600033600160 a 0 60020 a 0 38516148061059 f 5750600160 a 0 60020 a 0 3841660009081526001602090815260408083203384529091529020548211155 b 6105 f 3576040805160e560020 a 62461 b c d 0 2815260206004820152601560248201527 f 4552525 f 42544 f 4 b 454e5 f 4241445 f 43414 c 4 c 45520000000000000000000000604482015290519081900360640190 f d 5 b 6105 f e 848484610966565 b 33600160 a 0 60020 a 0 385161480159061063 c 5750600160 a 0 60020 a 0 38416600090815260016020908152604080832033845290915290205460001914155 b 156106 b e 57600160 a 0 60020 a 0 38416600090815260016020908152604080832033845290915290205461066 f 9083610 a 82565 b 600160 a 0 60020 a 0 38581166000908152600160209081526040808320338085529083529281902085905580519485525192871693919260008051
"deployedBytecode" : " 0 x 608060405234801561001057600080 f d 5 b 50600436106101 c 6576000357 c 0 1000000000000000000000000000000000000000000000000000000009004806395 d 89 b 4111610116578063 b c 694 e a 2116100 b 4578063 d 73 d d 6231161008e578063 d 73 d d 623146103e4578063 d d 62 e d 3e14610410578063 e 4 a 28 a 5214610288578063 e c 0 930211461043e576101 c 6565 b 8063 b c 694 e a 2146103 d 4578063 c 36596 a 6146102 b 2578063 c 6580 d 12146103 d c 576101 c 6565 b 8063 b 0e0 d 136116100 f 0 578063 b 0e0 d 136146103 b 4578063 b 7 b 800 a 4146103 b c 578063 b a 0 19 d a b 146103 c 4578063 b c 0 63e1 a 146103 c c 576101 c 6565 b 806395 d 89 b 4114610378578063992e2 a 9214610380578063 a 9059 c b b 14610388576101 c 6565 b 806323 b 872 d d 1161018357806370 a 0 82311161015 d 57806370 a 0 82311461033 a 57806376 c 7 a 3 c 714610360578063867378 c 5146103685780639381 c d 2 b 14610370576101 c 6565 b 806323 b 872 d d 146102 b a 578063313 c e 567146102 f 0 578063661884631461030e576101 c 6565 b 806306 f d d e 0 3146101 c b 578063095 e a 7 b 31461024857806309 a 3 b b e 41461028857806318160 d d d 146102 a 2578063189 d 0 0 c a 146102 a a 578063218 b 5382146102 b 2575 b 600080 f d 5 b 6101 d 3610446565 b 6040805160208082528351818301528351919283929083019185019080838360005 b 8381101561020 d 5781810151838201526020016101 f 5565 b 50505050905090810190601 f 16801561023 a 5780820380516001836020036101000 a 0 31916815260200191505 b 509250505060405180910390 f 35 b 6102746004803603604081101561025e57600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356104 d c 565 b 604080519115158252519081900360200190 f 35 b 610290610530565 b 60408051918252519081900360200190 f 35 b 61029061053 d 565 b 610290610543565 b 610290610557565 b 610274600480360360608110156102 d 0 57600080 f d 5 b 50600160 a 0 60020 a 0 3813581169160208101359091169060400135610563565 b 6102 f 86106 c 8565 b 6040805160 f f 9092168252519081900360200190 f 35 b 6102746004803603604081101561032457600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356106 d 1565 b 6102906004803603602081101561035057600080 f d 5 b 5035600160 a 0 60020 a 0 3166107 a 9565 b 6102906107 c 4565 b 6102906107 d 6565 b 6102906107 e a 565 b 6101 d 36107 f 7565 b 610290610858565 b 6102746004803603604081101561039e57600080 f d 5 b 50600160 a 0 60020 a 0 38135169060200135610864565 b 61029061087 a 565 b 61029061087 f 565 b 610290610884565 b 610290610889565 b 610290610899565 b 6102906108 a 5565 b 610274600480360360408110156103 f a 57600080 f d 5 b 50600160 a 0 60020 a 0 381351690602001356108 a a 565 b 6102906004803603604081101561042657600080 f d 5 b 50600160 a 0 60020 a 0 38135811691602001351661092 b 565 b 610290610956565 b 60038054604080516020601 f 60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104 d 25780601 f 106104 a 7576101008083540402835291602001916104 d 2565 b 820191906000526020600020905 b 8154815290600101906020018083116104 b 557829003601 f 168201915 b 5050505050905090565 b 336000818152600160209081526040808320600160 a 0 60020 a 0 3871680855290835281842086905581518681529151939490939092600080516020610 b 7 d 833981519152928290030190 a 350600192915050565 b 6802 b 5e3 a f 16 b 188000081565 b 60025490565 b 6402540 b e 400670 d e 0 b 6 b 3 a 76400005 b 0 481565 b 670 d e 0 b 6 b 3 a 764000081565 b 600033600160 a 0 60020 a 0 38516148061059 f 5750600160 a 0 60020 a 0 3841660009081526001602090815260408083203384529091529020548211155 b 6105 f 3576040805160e560020 a 62461 b c d 0 2815260206004820152601560248201527 f 4552525 f 42544 f 4 b 454e5 f 4241445 f 43414 c 4 c 45520000000000000000000000604482015290519081900360640190 f d 5 b 6105 f e 848484610966565 b 33600160 a 0 60020 a 0 385161480159061063 c 5750600160 a 0 60020 a 0 38416600090815260016020908152604080832033845290915290205460001914155 b 156106 b e 57600160 a 0 60020 a 0 38416600090815260016020908152604080832033845290915290205461066 f 9083610 a 82565 b 600160 a 0 60020 a 0 385811660009081526001602090815260408083203380855290835292819020859055805194855251928716939192600080516020610 b 7 d 8339815191529281900390910190 a 35 b 5060019392505050565 b 60055460 f f 1690565 b 336000908152600160209081526040808320600160 a 0 60020 a 0 3861684529091528120548083111561072657336000908152600160209081526040808320600160 a 0 60020 a 0 388168452909152812055610755565 b 6107308184610 a 82565 b 336000908152600160209081526040808320600160 a 0 60020 a 0 3891684529091529020555 b 336000818152600160209081526040808320600160 a 0 60020 a 0 38916808552908352928190205481519081529051929392600080516020610 b 7 d 833981519152929181900390910190 a 35060019392505050565 b 600160 a 0 60020 a 0 31660009081526020819052604090205490565 b 620 f 4240670 d e 0 b 6 b 3 a 7640000610553565 b 64e8 d 4 a 51000670 d e 0 b 6 b 3 a 7640000610553565 b 68056 b c 75e2 d 6310
"sourceMap" : "2857:49:7:-;2812:2299;2857:49;;2812:2299;2857:49;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2912:33:7;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2951:30:7;;;-1:-1:-1;;2951:30:7;2979:2;2951:30;;;2812:2299;5:2:-1;;;;30:1;27;20:12;5:2;2812:2299:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2812:2299:7;;;-1:-1:-1;2812:2299:7;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;" ,
"deployedSourceMap" : " 2812 : 2299 : 7 : - ; ; ; ; 8 : 9 : -1 ; 5 : 2 ; ; ; 30 : 1 ; 27 ; 20 : 12 ; 5 : 2 ; 2812 : 2299 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2988 : 81 ; ; ; : : : i ; : : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 8 : 100 : -1 ; 33 : 3 ; 30 : 1 ; 27 : 10 ; 8 : 100 ; ; ; 90 : 11 ; ; ; 84 : 18 ; 71 : 11 ; ; ; 64 : 39 ; 52 : 2 ; 45 : 10 ; 8 : 100 ; ; ; 12 : 14 ; 2988 : 81 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3574 : 180 ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 3574 : 180 : 7 ; ; ; ; ; ; ; ; : : : i ; : : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1111 : 50 : 2 ; ; ; : : : i ; : : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3482 : 86 : 7 ; ; ; : : : i ; 1403 : 54 : 2 : - ; ; ; : : : i ; 1004 : 45 : : - ; ; ; : : : i ; 4544 : 565 : 7 : - ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 4544 : 565 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; : : : i ; 3166 : 80 : : - ; ; ; : : : i ; : : : - ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4014 : 388 ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 4014 : 388 : 7 ; ; ; ; ; ; ; ; : : : i ; 3376 : 100 : : - ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; 3376 : 100 : 7 ; -1 : -1 : -1 ; ; ; ; ; 3376 : 100 : 7 ; ; : : : i ; 840 : 53 : 2 : - ; ; ; : : : i ; 1167 : 54 : : - ; ; ; : : : i ; 1228 : 51 : : - ; ; ; : : : i ; 3075 : 85 : 7 : - ; ; ; : : : i ; 1519 : 59 : 2 : - ; ; ; : : : i ; 4408 : 130 : 7 : - ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 4408 : 130 : 7 ; ; ; ; ; ; ; ; : : : i ; 791 : 42 : 2 : - ; ; ; : : : i ; 743 : : : - ; ; ; : : : i ; 1286 : 46 : : - ; ; ; : : : i ; 899 : 50 : : - ; ; ; : : : i ; 1338 : 59 : : - ; ; ; : : : i ; 955 : 42 : : - ; ; ; : : : i ; 3760 : 248 : 7 : - ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 3760 : 248 : 7 ; ; ; ; ; ; ; ; : : : i ; 3252 : 118 : : - ; ; ; ; ; ; 13 : 2 : -1 ; 8 : 3 ; 5 : 11 ; 2 : 2 ; ; ; 29 : 1 ; 26 ; 19 : 12 ; 2 : 2 ; -1 : -1 ; ; ; ; ; ; 3252 : 118 : 7 ; ; ; ; ; ; ; ; ; ; : : : i ; 1464 : 49 : 2 : - ; ; ; : : : i ; 2988 : 81 : 7 : - ; 3057 : 5 ; 3050 : 12 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; 3050 : 12 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3025 : 13 ; ; 3050 : 12 ; ; 3057 : 5 ; ; 3050 : 12 ; ; 3057 : 5 ; 3050 : 12 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 2988 : 81 ; : : : o ; 3574 : 180 : : - ; 3659 : 10 ; 3632 : 4 ; 3648 : 22 ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 3648 : 27 : 7 ; ; ; ; ; ; ; ; ; ; ; : 33 ; ; ; 3696 : 30 ; ; ; ; ; ; ; 3632 : 4 ; ; 3648 : 27 ; ; 3659 : 10 ; ; -1 : -1 : -1 ; ; ; ; ; ; ; ; ; ; ; 3696 : 30 : 7 ; ; ; ; ; ; ; -1 : -1 : -1 ; 3743 : 4 : 7 ; 3574 : 180 ; ; ; ; : : : o ; 1111 : 50 : 2 : - ; 1152 : 9 ; 1111 : 50 ; : : : o ; 3482 : 86 : 7 : - ; 3549 : 12 ; ; 3482 : 86 ; : : : o ; 1403 : 54 : 2 : - ; 1451 : 6 ; 730 ; 1444 : 13 ; ; 1403 : 54 ; : : : o ; 1004 : 45 : : - ; 730 : 6 ; 1004 : 45 ; : : : o ; 4544 : 565 : 7 : - ; 4662 : 4 ; 4704 : 10 ; -1 : -1 : -1 ; ; ; ; ; 4704 : 17 : 7 ; ; ; ; : 55 ; ; -1 : -1 : -1 ; ; ; ; ; ; 4732 : 15 : 7 ; ; ; ; ; ; : 10 ; : 15 ; ; ; ; ; ; ; ; 4748 : 10 ; 4732 : 27 ; ; ; ; ; ; ; ; 4725 : 34 ; ; ; 4704 : 55 ; 4683 : 124 ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 4683 : 124 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 4817 : 20 ; 4823 : 3 ; 4828 ; 4833 ; 4817 : 5 ; : 20 : : i ; : : : - ; 4851 : 10 ; -1 : -1 : -1 ; ; ; ; ; 4851 : 17 : 7 ; ; ; ; ; ; : 63 ; ; -1 : -1 : -1 ; ; ; ; ; ; 4872 : 15 : 7 ; ; ; ; ; ; : 10 ; : 15 ; ; ; ; ; ; ; ; 4888 : 10 ; 4872 : 27 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; 4872 : 42 : 7 ; ; 4851 : 63 ; 4847 : 235 ; ; ; -1 : -1 : -1 ; ; ; ; ; 4965 : 15 : 7 ; ; ; ; ; ; : 10 ; : 15 ; ; ; ; ; ; ; ; 4981 : 10 ; 4965 : 27 ; ; ; ; ; ; ; ; 4960 : 38 ; ; 4994 : 3 ; 4960 : 4 ; : 38 : : i ; : : : - ; -1 : -1 : -1 ; ; ; ; ; 4930 : 15 : 7 ; ; ; ; ; ; ; : 10 ; : 15 ; ; ; ; ; ; ; ; 4946 : 10 ; 4930 : 27 ; ; ; ; ; ; ; ; ; ; : 68 ; ; ; 5017 : 54 ; ; ; ; ; ; ; ; ; ; 4946 : 10 ; ; -1 : -1 : -1 ; ; ; ; ; ; ; ; ; ; ; 5017 : 54 : 7 ; ; ; ; ; ; ; ; ; 4847 : 235 ; -1 : -1 : -1 ; 5098 : 4 : 7 ; 4544 : 565 ; ; ; ; ; : : : o ; 3166 : 80 : : - ; 3230 : 9 ; ; ; ; 3166 : 80 ; : : : o ; 4014 : 388 : : - ; 4124 : 10 ; 4081 : 4 ; 4113 : 22 ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 4113 : 27 : 7 ; ; ; ; ; ; ; ; ; ; 4154 : 14 ; ; ; 4150 : 156 ; ; ; 4195 : 10 ; 4214 : 1 ; 4184 : 22 ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 4184 : 27 : 7 ; ; ; ; ; ; ; ; ; : 31 ; 4150 : 156 ; ; ; 4276 : 19 ; 4281 : 8 ; 4291 : 3 ; 4276 : 4 ; : 19 : : i ; : : : - ; 4257 : 10 ; 4246 : 22 ; ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 4246 : 27 : 7 ; ; ; ; ; ; ; ; ; : 49 ; 4150 : 156 ; 4329 : 10 ; 4346 : 22 ; ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 4320 : 54 : 7 ; ; 4346 : 27 ; ; ; ; ; ; ; ; ; ; ; 4320 : 54 ; ; ; ; ; ; ; ; ; 4329 : 10 ; -1 : -1 : -1 ; ; ; ; ; ; ; ; ; ; ; 4320 : 54 : 7 ; ; ; ; ; ; ; ; ; ; -1 : -1 : -1 ; 4391 : 4 : 7 ; ; 4014 : 388 ; -1 : -1 : -1 ; ; ; 4014 : 388 : 7 : o ; 3376 : 100 : : - ; -1 : -1 : -1 ; ; ; ; ; 3455 : 14 : 7 ; 3432 : 4 ; 3455 : 14 ; ; ; ; ; ; ; ; ; ; ; ; 3376 : 100 : : o ; 840 : 53 : 2 : - ; 888 : 5 ; 730 : 6 ; 881 : 12 ; ; 1167 : 54 ; 1215 : 6 ; 730 ; 1208 : 13 ; ; 1228 : 51 ; 1269 : 10 ; 1228 : 51 ; : : : o ; 3075 : 85 : 7 : - ; 3146 : 7 ; 3139 : 14 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; 3139 : 14 : 7 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 3114 : 13 ; ; 3139 : 14 ; ; 3146 : 7 ; ; 3139 : 14 ; ; 3146 : 7 ; 3139 : 14 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 1519 : 59 : 2 ; 1560 : 18 ; 1519 : 59 ; : : : o ; 4408 : 130 : 7 : - ; 4467 : 4 ; 4483 : 27 ; 4489 : 10 ; 4501 : 3 ; 4506 ; 4483 : 5 ; : 27 : : i ; : : : - ; -1 : -1 : -1 ; 4527 : 4 : 7 ; 4408 : 130 ; ; ; ; : : : o ; 791 : 42 : 2 : - ; 832 : 1 ; 791 : 42 ; : : : o ; 743 : : : - ; 784 : 1 ; 743 : 42 ; : : : o ; 1286 : 46 : : - ; 1327 : 5 ; 1286 : 46 ; : : : o ; 899 : 50 : : - ; 947 : 2 ; 730 : 6 ; 940 : 9 ; ; 1338 : 59 ; 1379 : 18 ; 1338 : 59 ; : : : o ; 955 : 42 : : - ; 996 : 1 ; 955 : 42 ; : : : o ; 3760 : 248 : 7 : - ; 3889 : 10 ; 3827 : 4 ; 3878 : 22 ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 3878 : 27 : 7 ; ; ; ; ; ; ; ; ; ; 3873 : 38 ; ; 3907 : 3 ; 3873 : 4 ; : 38 : : i ; : : : - ; 3854 : 10 ; 3843 : 22 ; ; ; ; : 10 ; : 22 ; ; ; ; ; ; ; ; -1 : -1 : -1 ; ; ; ; ; 3843 : 27 : 7 ; ; ; ; ; ; ; ; ; ; ; ; : 6
"source" : " // This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n\n// You should have received a copy of the GNU General Public License\n// along with this program. If not, see <http://www.gnu.org/licenses/>.\n\npragma solidity 0.5.7;\n\nimport './BNum.sol';\nimport 'openzeppelin-solidity/contracts/token/ERC20/IERC20.sol';\n\n// Highly opinionated token implementation\n\n// interface IERC20 {\n// event Approval(address indexed src, address indexed dst, uint amt);\n// event Transfer(address indexed src, address indexed dst, uint amt);\n\n// function totalSupply() external view returns (uint);\n// function balanceOf(address whom) external view returns (uint);\n// function allowance(address src, address dst) external view returns (uint);\n\n// function approve(address dst, uint amt) external returns (bool);\n// function transfer(address dst, uint amt) external returns (bool);\n// function transferFrom(\n// address src, address dst, uint amt\n// ) external returns (bool);\n// }\n\ncontract BTokenBase is BNum {\n\n mapping(address => uint) internal _balance;\n mapping(address => mapping(address=>uint)) internal _allowance;\n uint internal _totalSupply;\n\n event Approval(address indexed src, address indexed dst, uint amt);\n event Transfer(address indexed src, address indexed dst, uint amt);\n\n function _mint(uint amt) internal {\n _balance[address(this)] = badd(_balance[address(this)], amt);\n _totalSupply = badd(_totalSupply, amt);\n emit Transfer(address(0), address(this), amt);\n }\n\n function _burn(uint amt) internal {\n require(\n _balance[address(this)] >= amt, \n 'ERR_INSUFFICIENT_BAL'\n );\n _balance[address(this)] = bsub(_balance[address(this)], amt);\n _totalSupply = bsub(_totalSupply, amt);\n emit Transfer(address(this), address(0), amt);\n }\n\n function _move(address src, address dst, uint amt) internal {\n require(_balance[src] >= amt, 'ERR_INSUFFICIENT_BAL');\n _balance[src] = bsub(_balance[src], amt);\n _balance[dst] = badd(_balance[dst], amt);\n emit Transfer(src, dst, amt);\n }\n\n function _push(address to, uint amt) internal {\n _move(address(this), to, amt);\n }\n\n function _pull(address from, uint amt) internal {\n _move(from, address(this), amt);\n }\n}\n\ncontract BToken is BTokenBase, IERC20 {\n\n string private _name = 'Balancer Pool Token';\n string private _symbol = 'BPT';\n uint8 private _decimals = 18;\n\n function name() public view returns (string memory) {\n return _name;\n }\n\n function symbol() public view returns (string memory) {\n return _symbol;\n }\n\n function decimals() public view returns(uint8) {\n return _decimals;\n }\n\n function allowance(address src, address dst) external view returns (uint) {\n return _allowance[src][dst];\n }\n\n function balanceOf(address whom) external view returns (uint) {\n return _balance[whom];\n }\n\n function totalSupply() public view returns (uint) {\n return _totalSupply;\n }\n\n function approve(address dst, uint amt) external returns (bool) {\n _allowance[msg.sender][dst] = amt;\n emit Approval(msg.sender, dst, amt);\n return true;\n }\n\n function increaseApproval(address dst, uint amt) external returns (bool) {\n _allowance[msg.sender][dst] = badd(_allowance[msg.sender][dst], amt);\n emit Approval(msg.sender, dst, _allowance[msg.s
"sourcePath" : "/home/travis/build/oceanprotocol/ocean-contracts/contracts/balancer/BToken.sol" ,
"ast" : {
"absolutePath" : "/home/travis/build/oceanprotocol/ocean-contracts/contracts/balancer/BToken.sol" ,
"exportedSymbols" : {
2020-12-11 11:37:09 +01:00
"BToken" : [ 4285 ] ,
"BTokenBase" : [ 3979 ]
2020-11-20 13:12:02 +01:00
} ,
"id" : 4286 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 3780 ,
2020-12-11 11:37:09 +01:00
"literals" : [ "solidity" , "0.5" , ".7" ] ,
2020-11-20 13:12:02 +01:00
"nodeType" : "PragmaDirective" ,
"src" : "643:22:7"
} ,
{
"absolutePath" : "/home/travis/build/oceanprotocol/ocean-contracts/contracts/balancer/BNum.sol" ,
"file" : "./BNum.sol" ,
"id" : 3781 ,
"nodeType" : "ImportDirective" ,
"scope" : 4286 ,
"sourceUnit" : 1423 ,
"src" : "667:20:7" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol" ,
"file" : "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol" ,
"id" : 3782 ,
"nodeType" : "ImportDirective" ,
"scope" : 4286 ,
"sourceUnit" : 6538 ,
"src" : "688:64:7" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3783 ,
"name" : "BNum" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1422 ,
"src" : "1468:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BNum_$1422" ,
"typeString" : "contract BNum"
}
} ,
"id" : 3784 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "1468:4:7"
}
] ,
2020-12-11 11:37:09 +01:00
"contractDependencies" : [ 280 , 1422 ] ,
2020-11-20 13:12:02 +01:00
"contractKind" : "contract" ,
"documentation" : null ,
"fullyImplemented" : true ,
"id" : 3979 ,
2020-12-11 11:37:09 +01:00
"linearizedBaseContracts" : [ 3979 , 1422 , 280 ] ,
2020-11-20 13:12:02 +01:00
"name" : "BTokenBase" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : false ,
"id" : 3788 ,
"name" : "_balance" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1480:60:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"typeName" : {
"id" : 3787 ,
"keyType" : {
"id" : 3785 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1488:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1480:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"valueType" : {
"id" : 3786 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1499:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3794 ,
"name" : "_allowance" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1546:62:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
} ,
"typeName" : {
"id" : 3793 ,
"keyType" : {
"id" : 3789 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1554:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1546:42:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
} ,
"valueType" : {
"id" : 3792 ,
"keyType" : {
"id" : 3790 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1573:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1565:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"valueType" : {
"id" : 3791 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1582:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3796 ,
"name" : "_totalSupply" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1614:26:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3795 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1614:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"anonymous" : false ,
"documentation" : null ,
"id" : 3804 ,
"name" : "Approval" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
"id" : 3803 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3798 ,
"indexed" : true ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1662:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3797 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1662:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3800 ,
"indexed" : true ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1683:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3799 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1683:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3802 ,
"indexed" : false ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1704:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3801 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1704:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1661:52:7"
} ,
"src" : "1647:67:7"
} ,
{
"anonymous" : false ,
"documentation" : null ,
"id" : 3812 ,
"name" : "Transfer" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
"id" : 3811 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3806 ,
"indexed" : true ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1734:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3805 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1734:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3808 ,
"indexed" : true ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1755:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3807 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1755:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3810 ,
"indexed" : false ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1776:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3809 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1776:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1733:52:7"
} ,
"src" : "1719:67:7"
} ,
{
"body" : {
"id" : 3849 ,
"nodeType" : "Block" ,
"src" : "1826:180:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 3830 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3817 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "1836:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3821 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3819 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1853:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3818 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1845:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3820 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1845:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1836:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3823 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "1867:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3827 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3825 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1884:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3824 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1876:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3826 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1876:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1867:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3828 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1892:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3822 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "1862:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3829 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1862:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "1836:60:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3831 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1836:60:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3837 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 3832 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "1906:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3834 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "1926:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3835 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1940:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3833 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "1921:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3836 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1921:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "1906:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3838 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1906:38:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 3841 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1976:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
}
] ,
"id" : 3840 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1968:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3842 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1968:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3844 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1988:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3843 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1980:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3845 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1980:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3846 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1995:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3839 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "1959:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3847 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1959:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3848 ,
"nodeType" : "EmitStatement" ,
"src" : "1954:45:7"
}
]
} ,
"documentation" : null ,
"id" : 3850 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_mint" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3815 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3814 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3850 ,
"src" : "1807:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3813 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1807:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1806:10:7"
} ,
"returnParameters" : {
"id" : 3816 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1826:0:7"
} ,
"scope" : 3979 ,
"src" : "1792:214:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3898 ,
"nodeType" : "Block" ,
"src" : "2046:288:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 3862 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3856 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2077:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3860 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3858 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2094:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3857 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2086:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3859 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2086:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2077:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 3861 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2104:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2077:30:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f494e53554646494349454e545f42414c" ,
"id" : 3863 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2122:22:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
} ,
"value" : "ERR_INSUFFICIENT_BAL"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
}
] ,
"id" : 3855 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "2056:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 3864 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2056:98:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3865 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2056:98:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3879 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3866 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2164:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3870 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3868 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2181:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3867 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2173:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3869 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2173:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2164:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3872 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2195:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3876 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3874 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2212:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3873 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2204:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3875 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2204:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2195:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3877 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2220:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3871 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2190:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3878 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2190:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2164:60:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3880 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2164:60:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3886 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 3881 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "2234:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3883 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "2254:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3884 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2268:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3882 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2249:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3885 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2249:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2234:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3887 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2234:38:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3890 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2304:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3889 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2296:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3891 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2296:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 3893 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2319:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
}
] ,
"id" : 3892 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2311:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3894 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2311:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 3895 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2323:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3888 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "2287:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3896 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2287:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3897 ,
"nodeType" : "EmitStatement" ,
"src" : "2282:45:7"
}
]
} ,
"documentation" : null ,
"id" : 3899 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_burn" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3853 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3852 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3899 ,
"src" : "2027:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3851 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2027:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2026:10:7"
} ,
"returnParameters" : {
"id" : 3854 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2046:0:7"
} ,
"scope" : 3979 ,
"src" : "2012:322:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3945 ,
"nodeType" : "Block" ,
"src" : "2400:208:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 3913 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3909 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2418:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3911 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3910 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2427:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2418:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 3912 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2435:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2418:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f494e53554646494349454e545f42414c" ,
"id" : 3914 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2440:22:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
} ,
"value" : "ERR_INSUFFICIENT_BAL"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
}
] ,
"id" : 3908 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "2410:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 3915 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2410:53:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3916 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2410:53:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3926 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3917 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2473:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3919 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3918 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2482:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2473:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3921 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2494:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3923 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3922 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2503:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2494:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3924 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2509:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3920 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2489:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3925 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2489:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2473:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3927 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2473:40:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3937 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3928 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2523:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3930 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3929 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2532:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2523:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3932 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2544:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3934 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3933 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2553:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2544:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3935 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2559:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3931 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "2539:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3936 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2539:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2523:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3938 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2523:40:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3940 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2587:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3941 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2592:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3942 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2597:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3939 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "2578:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3943 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2578:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3944 ,
"nodeType" : "EmitStatement" ,
"src" : "2573:28:7"
}
]
} ,
"documentation" : null ,
"id" : 3946 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_move" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3906 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3901 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2355:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3900 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2355:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3903 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2368:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3902 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2368:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3905 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2381:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3904 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2381:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2354:36:7"
} ,
"returnParameters" : {
"id" : 3907 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2400:0:7"
} ,
"scope" : 3979 ,
"src" : "2340:268:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3961 ,
"nodeType" : "Block" ,
"src" : "2660:46:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3955 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2684:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3954 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2676:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3956 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2676:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3957 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3948 ,
"src" : "2691:2:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3958 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3950 ,
"src" : "2695:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3953 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "2670:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3959 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2670:29:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3960 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2670:29:7"
}
]
} ,
"documentation" : null ,
"id" : 3962 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_push" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3951 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3948 ,
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3962 ,
"src" : "2629:10:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3947 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2629:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3950 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3962 ,
"src" : "2641:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3949 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2641:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2628:22:7"
} ,
"returnParameters" : {
"id" : 3952 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2660:0:7"
} ,
"scope" : 3979 ,
"src" : "2614:92:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3977 ,
"nodeType" : "Block" ,
"src" : "2760:48:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3970 ,
"name" : "from" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3964 ,
"src" : "2776:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3972 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2790:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3971 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2782:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3973 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2782:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3974 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3966 ,
"src" : "2797:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3969 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "2770:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3975 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2770:31:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3976 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2770:31:7"
}
]
} ,
"documentation" : null ,
"id" : 3978 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_pull" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3967 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3964 ,
"name" : "from" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3978 ,
"src" : "2727:12:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3963 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2727:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3966 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3978 ,
"src" : "2741:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3965 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2741:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2726:24:7"
} ,
"returnParameters" : {
"id" : 3968 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2760:0:7"
} ,
"scope" : 3979 ,
"src" : "2712:96:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
}
] ,
"scope" : 4286 ,
"src" : "1445:1365:7"
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3980 ,
"name" : "BTokenBase" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 3979 ,
"src" : "2831:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
} ,
"id" : 3981 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "2831:10:7"
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3982 ,
"name" : "IERC20" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 6537 ,
"src" : "2843:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_IERC20_$6537" ,
"typeString" : "contract IERC20"
}
} ,
"id" : 3983 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "2843:6:7"
}
] ,
2020-12-11 11:37:09 +01:00
"contractDependencies" : [ 280 , 1422 , 3979 , 6537 ] ,
2020-11-20 13:12:02 +01:00
"contractKind" : "contract" ,
"documentation" : null ,
"fullyImplemented" : true ,
"id" : 4285 ,
2020-12-11 11:37:09 +01:00
"linearizedBaseContracts" : [ 4285 , 6537 , 3979 , 1422 , 280 ] ,
2020-11-20 13:12:02 +01:00
"name" : "BToken" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : false ,
"id" : 3986 ,
"name" : "_name" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2857:49:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3984 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2857:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "42616c616e63657220506f6f6c20546f6b656e" ,
"id" : 3985 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2885:21:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_86726d210cafef5a97cd8551cc3cd59ead4ad6b4a08f1b0e2ca14d5024839298" ,
"typeString" : "literal_string \"Balancer Pool Token\""
} ,
"value" : "Balancer Pool Token"
} ,
"visibility" : "private"
} ,
{
"constant" : false ,
"id" : 3989 ,
"name" : "_symbol" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2912:33:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3987 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2912:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "425054" ,
"id" : 3988 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2940:5:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_2c4469c3871c2223d094ce996c22463935f1f3c0f4a0177add993c1ee46e9606" ,
"typeString" : "literal_string \"BPT\""
} ,
"value" : "BPT"
} ,
"visibility" : "private"
} ,
{
"constant" : false ,
"id" : 3992 ,
"name" : "_decimals" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2951:30:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
"typeName" : {
"id" : 3990 ,
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2951:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "3138" ,
"id" : 3991 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2979:2:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_18_by_1" ,
"typeString" : "int_const 18"
} ,
"value" : "18"
} ,
"visibility" : "private"
} ,
{
"body" : {
"id" : 3999 ,
"nodeType" : "Block" ,
"src" : "3040:29:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 3997 ,
"name" : "_name" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3986 ,
"src" : "3057:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string storage ref"
}
} ,
"functionReturnParameters" : 3996 ,
"id" : 3998 ,
"nodeType" : "Return" ,
"src" : "3050:12:7"
}
]
} ,
"documentation" : null ,
"id" : 4000 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "name" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3993 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3001:2:7"
} ,
"returnParameters" : {
"id" : 3996 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3995 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4000 ,
"src" : "3025:13:7" ,
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory_ptr" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3994 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3025:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3024:15:7"
} ,
"scope" : 4285 ,
"src" : "2988:81:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4007 ,
"nodeType" : "Block" ,
"src" : "3129:31:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4005 ,
"name" : "_symbol" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3989 ,
"src" : "3146:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string storage ref"
}
} ,
"functionReturnParameters" : 4004 ,
"id" : 4006 ,
"nodeType" : "Return" ,
"src" : "3139:14:7"
}
]
} ,
"documentation" : null ,
"id" : 4008 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "symbol" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4001 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3090:2:7"
} ,
"returnParameters" : {
"id" : 4004 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4003 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4008 ,
"src" : "3114:13:7" ,
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory_ptr" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 4002 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3114:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3113:15:7"
} ,
"scope" : 4285 ,
"src" : "3075:85:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4015 ,
"nodeType" : "Block" ,
"src" : "3213:33:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4013 ,
"name" : "_decimals" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3992 ,
"src" : "3230:9:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"functionReturnParameters" : 4012 ,
"id" : 4014 ,
"nodeType" : "Return" ,
"src" : "3223:16:7"
}
]
} ,
"documentation" : null ,
"id" : 4016 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "decimals" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4009 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3183:2:7"
} ,
"returnParameters" : {
"id" : 4012 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4011 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4016 ,
"src" : "3206:5:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
"typeName" : {
"id" : 4010 ,
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3206:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3205:7:7"
} ,
"scope" : 4285 ,
"src" : "3166:80:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4031 ,
"nodeType" : "Block" ,
"src" : "3326:44:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4025 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3343:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4027 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4026 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4018 ,
"src" : "3354:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3343:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4029 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4028 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4020 ,
"src" : "3359:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3343:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4024 ,
"id" : 4030 ,
"nodeType" : "Return" ,
"src" : "3336:27:7"
}
]
} ,
"documentation" : null ,
"id" : 4032 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "allowance" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4021 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4018 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3271:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4017 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3271:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4020 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3284:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4019 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3284:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3270:26:7"
} ,
"returnParameters" : {
"id" : 4024 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4023 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3320:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4022 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3320:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3319:6:7"
} ,
"scope" : 4285 ,
"src" : "3252:118:7" ,
"stateMutability" : "view" ,
"superFunction" : 6500 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4043 ,
"nodeType" : "Block" ,
"src" : "3438:38:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4039 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "3455:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4041 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4040 ,
"name" : "whom" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4034 ,
"src" : "3464:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3455:14:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4038 ,
"id" : 4042 ,
"nodeType" : "Return" ,
"src" : "3448:21:7"
}
]
} ,
"documentation" : null ,
"id" : 4044 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "balanceOf" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4035 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4034 ,
"name" : "whom" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4044 ,
"src" : "3395:12:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4033 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3395:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3394:14:7"
} ,
"returnParameters" : {
"id" : 4038 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4037 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4044 ,
"src" : "3432:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4036 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3432:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3431:6:7"
} ,
"scope" : 4285 ,
"src" : "3376:100:7" ,
"stateMutability" : "view" ,
"superFunction" : 6482 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4051 ,
"nodeType" : "Block" ,
"src" : "3532:36:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4049 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "3549:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4048 ,
"id" : 4050 ,
"nodeType" : "Return" ,
"src" : "3542:19:7"
}
]
} ,
"documentation" : null ,
"id" : 4052 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "totalSupply" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4045 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3502:2:7"
} ,
"returnParameters" : {
"id" : 4048 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4047 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4052 ,
"src" : "3526:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4046 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3526:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3525:6:7"
} ,
"scope" : 4285 ,
"src" : "3482:86:7" ,
"stateMutability" : "view" ,
"superFunction" : 6475 ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4079 ,
"nodeType" : "Block" ,
"src" : "3638:116:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4068 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4061 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3648:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4065 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4062 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3659:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4063 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3659:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3648:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4066 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4064 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4054 ,
"src" : "3671:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "3648:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"id" : 4067 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4056 ,
"src" : "3678:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "3648:33:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4069 ,
"nodeType" : "ExpressionStatement" ,
"src" : "3648:33:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4071 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3705:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4072 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3705:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4073 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4054 ,
"src" : "3717:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4074 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4056 ,
"src" : "3722:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4070 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "3696:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4075 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3696:30:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4076 ,
"nodeType" : "EmitStatement" ,
"src" : "3691:35:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4077 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "3743:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4060 ,
"id" : 4078 ,
"nodeType" : "Return" ,
"src" : "3736:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4080 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "approve" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4057 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4054 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3591:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4053 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3591:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4056 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3604:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4055 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3604:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3590:23:7"
} ,
"returnParameters" : {
"id" : 4060 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4059 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3632:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4058 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3632:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3631:6:7"
} ,
"scope" : 4285 ,
"src" : "3574:180:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6509 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4120 ,
"nodeType" : "Block" ,
"src" : "3833:175:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4104 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4089 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3843:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4093 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4090 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3854:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4091 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3854:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3843:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4094 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4092 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3866:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "3843:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4096 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3878:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4099 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4097 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3889:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4098 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3889:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3878:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4101 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4100 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3901:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3878:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4102 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4084 ,
"src" : "3907:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4095 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "3873:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4103 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3873:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "3843:68:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4105 ,
"nodeType" : "ExpressionStatement" ,
"src" : "3843:68:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4107 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3935:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4108 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3935:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4109 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3947:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4110 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3952:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4113 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4111 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3963:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4112 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3963:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3952:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4115 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4114 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3975:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3952:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4106 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "3926:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4116 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3926:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4117 ,
"nodeType" : "EmitStatement" ,
"src" : "3921:59:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4118 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "3997:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4088 ,
"id" : 4119 ,
"nodeType" : "Return" ,
"src" : "3990:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4121 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "increaseApproval" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4085 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4082 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3786:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4081 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3786:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4084 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3799:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4083 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3799:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3785:23:7"
} ,
"returnParameters" : {
"id" : 4088 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4087 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3827:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4086 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3827:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3826:6:7"
} ,
"scope" : 4285 ,
"src" : "3760:248:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4180 ,
"nodeType" : "Block" ,
"src" : "4087:315:7" ,
"statements" : [
{
2020-12-11 11:37:09 +01:00
"assignments" : [ 4131 ] ,
2020-11-20 13:12:02 +01:00
"declarations" : [
{
"constant" : false ,
"id" : 4131 ,
"name" : "oldValue" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4180 ,
"src" : "4097:13:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4130 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4097:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 4138 ,
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4132 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4113:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4135 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4133 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4124:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4134 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4124:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4113:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4137 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4136 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4136:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4113:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "4097:43:7"
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4141 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 4139 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4125 ,
"src" : "4154:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4140 ,
"name" : "oldValue" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4131 ,
"src" : "4160:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4154:14:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
"id" : 4164 ,
"nodeType" : "Block" ,
"src" : "4232:74:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4162 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4152 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4246:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4156 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4153 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4257:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4154 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4257:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4246:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4157 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4155 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4269:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4246:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4159 ,
"name" : "oldValue" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4131 ,
"src" : "4281:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4160 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4125 ,
"src" : "4291:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4158 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "4276:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4161 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4276:19:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4246:49:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4163 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4246:49:7"
}
]
} ,
"id" : 4165 ,
"nodeType" : "IfStatement" ,
"src" : "4150:156:7" ,
"trueBody" : {
"id" : 4151 ,
"nodeType" : "Block" ,
"src" : "4170:56:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4149 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4142 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4184:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4146 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4143 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4195:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4144 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4195:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4184:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4147 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4145 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4207:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4184:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 4148 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4214:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "4184:31:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4150 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4184:31:7"
}
]
}
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4167 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4329:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4168 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4329:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4169 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4341:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4170 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4346:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4173 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4171 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4357:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4172 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4357:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4346:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4175 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4174 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4369:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4346:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4166 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "4320:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4176 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4320:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4177 ,
"nodeType" : "EmitStatement" ,
"src" : "4315:59:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4178 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4391:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4129 ,
"id" : 4179 ,
"nodeType" : "Return" ,
"src" : "4384:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4181 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "decreaseApproval" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4126 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4123 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4040:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4122 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4040:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4125 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4053:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4124 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4053:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4039:23:7"
} ,
"returnParameters" : {
"id" : 4129 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4128 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4081:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4127 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4081:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4080:6:7"
} ,
"scope" : 4285 ,
"src" : "4014:388:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4199 ,
"nodeType" : "Block" ,
"src" : "4473:65:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4191 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4489:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4192 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4489:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4193 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4183 ,
"src" : "4501:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4194 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4185 ,
"src" : "4506:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4190 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "4483:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4195 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4483:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4196 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4483:27:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4197 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4527:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4189 ,
"id" : 4198 ,
"nodeType" : "Return" ,
"src" : "4520:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4200 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "transfer" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4186 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4183 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4426:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4182 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4426:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4185 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4439:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4184 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4439:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4425:23:7"
} ,
"returnParameters" : {
"id" : 4189 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4188 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4467:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4187 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4467:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4466:6:7"
} ,
"scope" : 4285 ,
"src" : "4408:130:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6491 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4283 ,
"nodeType" : "Block" ,
"src" : "4673:436:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"id" : 4224 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 4215 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4212 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4704:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4213 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4704:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4214 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4718:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"src" : "4704:17:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "||" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4223 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 4216 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4725:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4217 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4732:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4219 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4218 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4743:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4732:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4222 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4220 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4748:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4221 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4748:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4732:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4725:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"src" : "4704:55:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f42544f4b454e5f4241445f43414c4c4552" ,
"id" : 4225 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4774:23:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_7c78c5c07128d4fb2c83ecfae573652cc351a44f64cf0f454240bdf4749e318c" ,
"typeString" : "literal_string \"ERR_BTOKEN_BAD_CALLER\""
} ,
"value" : "ERR_BTOKEN_BAD_CALLER"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_7c78c5c07128d4fb2c83ecfae573652cc351a44f64cf0f454240bdf4749e318c" ,
"typeString" : "literal_string \"ERR_BTOKEN_BAD_CALLER\""
}
] ,
"id" : 4211 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "4683:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 4226 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4683:124:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4227 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4683:124:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4229 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4823:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4230 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4204 ,
"src" : "4828:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4231 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4833:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4228 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "4817:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4232 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4817:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4233 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4817:20:7"
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"id" : 4249 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 4237 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4234 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4851:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4235 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4851:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4236 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4865:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"src" : "4851:17:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "&&" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4248 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4238 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4872:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4240 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4239 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4883:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4872:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4243 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4241 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4888:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4242 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4888:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4872:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4246 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "-" ,
"prefix" : true ,
"src" : "4911:2:7" ,
"subExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
"id" : 4245 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4912:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
} ,
"value" : "1"
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_minus_1_by_1" ,
"typeString" : "int_const -1"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_minus_1_by_1" ,
"typeString" : "int_const -1"
}
] ,
"id" : 4244 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "4903:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_uint256_$" ,
"typeString" : "type(uint256)"
} ,
"typeName" : "uint256"
} ,
"id" : 4247 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4903:11:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4872:42:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"src" : "4851:63:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
"id" : 4280 ,
"nodeType" : "IfStatement" ,
"src" : "4847:235:7" ,
"trueBody" : {
"id" : 4279 ,
"nodeType" : "Block" ,
"src" : "4916:166:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4265 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4250 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4930:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4254 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4251 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4941:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4930:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4255 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4252 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4946:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4253 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4946:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4930:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4257 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4965:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4259 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4258 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4976:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4965:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4262 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4260 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4981:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4261 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4981:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4965:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4263 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4994:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4256 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "4960:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4264 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4960:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4930:68:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4266 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4930:68:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4268 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "5026:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4269 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "5026:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4270 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4204 ,
"src" : "5038:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4271 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "5043:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4273 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4272 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "5054:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "5043:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4276 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4274 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "5059:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4275 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "5059:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "5043:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4267 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "5017:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4277 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "5017:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4278 ,
"nodeType" : "EmitStatement" ,
"src" : "5012:59:7"
}
]
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4281 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "5098:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4210 ,
"id" : 4282 ,
"nodeType" : "Return" ,
"src" : "5091:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4284 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "transferFrom" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4207 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4202 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4575:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4201 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4575:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4204 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4597:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4203 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4597:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4206 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4619:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4205 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4619:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4565:68:7"
} ,
"returnParameters" : {
"id" : 4210 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4209 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4662:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4208 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4662:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4661:6:7"
} ,
"scope" : 4285 ,
"src" : "4544:565:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6520 ,
"visibility" : "external"
}
] ,
"scope" : 4286 ,
"src" : "2812:2299:7"
}
] ,
"src" : "643:4469:7"
} ,
"legacyAST" : {
"absolutePath" : "/home/travis/build/oceanprotocol/ocean-contracts/contracts/balancer/BToken.sol" ,
"exportedSymbols" : {
2020-12-11 11:37:09 +01:00
"BToken" : [ 4285 ] ,
"BTokenBase" : [ 3979 ]
2020-11-20 13:12:02 +01:00
} ,
"id" : 4286 ,
"nodeType" : "SourceUnit" ,
"nodes" : [
{
"id" : 3780 ,
2020-12-11 11:37:09 +01:00
"literals" : [ "solidity" , "0.5" , ".7" ] ,
2020-11-20 13:12:02 +01:00
"nodeType" : "PragmaDirective" ,
"src" : "643:22:7"
} ,
{
"absolutePath" : "/home/travis/build/oceanprotocol/ocean-contracts/contracts/balancer/BNum.sol" ,
"file" : "./BNum.sol" ,
"id" : 3781 ,
"nodeType" : "ImportDirective" ,
"scope" : 4286 ,
"sourceUnit" : 1423 ,
"src" : "667:20:7" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"absolutePath" : "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol" ,
"file" : "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol" ,
"id" : 3782 ,
"nodeType" : "ImportDirective" ,
"scope" : 4286 ,
"sourceUnit" : 6538 ,
"src" : "688:64:7" ,
"symbolAliases" : [ ] ,
"unitAlias" : ""
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3783 ,
"name" : "BNum" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 1422 ,
"src" : "1468:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BNum_$1422" ,
"typeString" : "contract BNum"
}
} ,
"id" : 3784 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "1468:4:7"
}
] ,
2020-12-11 11:37:09 +01:00
"contractDependencies" : [ 280 , 1422 ] ,
2020-11-20 13:12:02 +01:00
"contractKind" : "contract" ,
"documentation" : null ,
"fullyImplemented" : true ,
"id" : 3979 ,
2020-12-11 11:37:09 +01:00
"linearizedBaseContracts" : [ 3979 , 1422 , 280 ] ,
2020-11-20 13:12:02 +01:00
"name" : "BTokenBase" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : false ,
"id" : 3788 ,
"name" : "_balance" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1480:60:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"typeName" : {
"id" : 3787 ,
"keyType" : {
"id" : 3785 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1488:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1480:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"valueType" : {
"id" : 3786 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1499:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3794 ,
"name" : "_allowance" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1546:62:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
} ,
"typeName" : {
"id" : 3793 ,
"keyType" : {
"id" : 3789 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1554:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1546:42:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
} ,
"valueType" : {
"id" : 3792 ,
"keyType" : {
"id" : 3790 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1573:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"nodeType" : "Mapping" ,
"src" : "1565:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
} ,
"valueType" : {
"id" : 3791 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1582:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3796 ,
"name" : "_totalSupply" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3979 ,
"src" : "1614:26:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3795 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1614:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"anonymous" : false ,
"documentation" : null ,
"id" : 3804 ,
"name" : "Approval" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
"id" : 3803 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3798 ,
"indexed" : true ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1662:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3797 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1662:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3800 ,
"indexed" : true ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1683:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3799 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1683:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3802 ,
"indexed" : false ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3804 ,
"src" : "1704:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3801 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1704:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1661:52:7"
} ,
"src" : "1647:67:7"
} ,
{
"anonymous" : false ,
"documentation" : null ,
"id" : 3812 ,
"name" : "Transfer" ,
"nodeType" : "EventDefinition" ,
"parameters" : {
"id" : 3811 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3806 ,
"indexed" : true ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1734:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3805 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1734:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3808 ,
"indexed" : true ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1755:19:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3807 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1755:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3810 ,
"indexed" : false ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3812 ,
"src" : "1776:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3809 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1776:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1733:52:7"
} ,
"src" : "1719:67:7"
} ,
{
"body" : {
"id" : 3849 ,
"nodeType" : "Block" ,
"src" : "1826:180:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 3830 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3817 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "1836:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3821 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3819 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1853:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3818 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1845:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3820 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1845:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "1836:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3823 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "1867:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3827 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3825 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1884:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3824 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1876:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3826 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1876:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "1867:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3828 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1892:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3822 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "1862:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3829 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1862:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "1836:60:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3831 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1836:60:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3837 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 3832 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "1906:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3834 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "1926:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3835 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1940:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3833 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "1921:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3836 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1921:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "1906:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3838 ,
"nodeType" : "ExpressionStatement" ,
"src" : "1906:38:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 3841 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "1976:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
}
] ,
"id" : 3840 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1968:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3842 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1968:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3844 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "1988:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3843 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "1980:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3845 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1980:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3846 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3814 ,
"src" : "1995:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3839 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "1959:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3847 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "1959:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3848 ,
"nodeType" : "EmitStatement" ,
"src" : "1954:45:7"
}
]
} ,
"documentation" : null ,
"id" : 3850 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_mint" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3815 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3814 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3850 ,
"src" : "1807:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3813 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "1807:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "1806:10:7"
} ,
"returnParameters" : {
"id" : 3816 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "1826:0:7"
} ,
"scope" : 3979 ,
"src" : "1792:214:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3898 ,
"nodeType" : "Block" ,
"src" : "2046:288:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 3862 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3856 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2077:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3860 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3858 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2094:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3857 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2086:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3859 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2086:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2077:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 3861 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2104:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2077:30:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f494e53554646494349454e545f42414c" ,
"id" : 3863 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2122:22:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
} ,
"value" : "ERR_INSUFFICIENT_BAL"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
}
] ,
"id" : 3855 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "2056:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 3864 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2056:98:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3865 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2056:98:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3879 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3866 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2164:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3870 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3868 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2181:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3867 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2173:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3869 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2173:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2164:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3872 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2195:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3876 ,
"indexExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3874 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2212:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3873 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2204:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3875 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2204:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2195:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3877 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2220:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3871 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2190:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3878 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2190:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2164:60:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3880 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2164:60:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3886 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"id" : 3881 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "2234:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3883 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "2254:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3884 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2268:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3882 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2249:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3885 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2249:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2234:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3887 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2234:38:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3890 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2304:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3889 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2296:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3891 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2296:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 3893 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2319:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
}
] ,
"id" : 3892 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2311:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3894 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2311:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 3895 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3852 ,
"src" : "2323:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3888 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "2287:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3896 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2287:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3897 ,
"nodeType" : "EmitStatement" ,
"src" : "2282:45:7"
}
]
} ,
"documentation" : null ,
"id" : 3899 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_burn" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3853 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3852 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3899 ,
"src" : "2027:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3851 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2027:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2026:10:7"
} ,
"returnParameters" : {
"id" : 3854 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2046:0:7"
} ,
"scope" : 3979 ,
"src" : "2012:322:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3945 ,
"nodeType" : "Block" ,
"src" : "2400:208:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 3913 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3909 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2418:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3911 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3910 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2427:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2418:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 3912 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2435:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2418:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f494e53554646494349454e545f42414c" ,
"id" : 3914 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2440:22:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
} ,
"value" : "ERR_INSUFFICIENT_BAL"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_6d886dfa4c52985ff7e07248f8343de807c72a722ad596b432ce38fd268e3469" ,
"typeString" : "literal_string \"ERR_INSUFFICIENT_BAL\""
}
] ,
"id" : 3908 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "2410:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 3915 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2410:53:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3916 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2410:53:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3926 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3917 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2473:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3919 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3918 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2482:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2473:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3921 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2494:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3923 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3922 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2503:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2494:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3924 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2509:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3920 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "2489:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3925 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2489:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2473:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3927 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2473:40:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"id" : 3937 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3928 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2523:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3930 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3929 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2532:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "2523:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 3932 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "2544:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 3934 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 3933 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2553:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "2544:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 3935 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2559:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3931 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "2539:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 3936 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2539:24:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "2523:40:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 3938 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2523:40:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3940 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3901 ,
"src" : "2587:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3941 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3903 ,
"src" : "2592:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3942 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3905 ,
"src" : "2597:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3939 ,
"name" : "Transfer" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3812 ,
"src" : "2578:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3943 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2578:23:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3944 ,
"nodeType" : "EmitStatement" ,
"src" : "2573:28:7"
}
]
} ,
"documentation" : null ,
"id" : 3946 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_move" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3906 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3901 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2355:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3900 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2355:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3903 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2368:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3902 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2368:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3905 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3946 ,
"src" : "2381:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3904 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2381:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2354:36:7"
} ,
"returnParameters" : {
"id" : 3907 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2400:0:7"
} ,
"scope" : 3979 ,
"src" : "2340:268:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3961 ,
"nodeType" : "Block" ,
"src" : "2660:46:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3955 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2684:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3954 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2676:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3956 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2676:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3957 ,
"name" : "to" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3948 ,
"src" : "2691:2:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3958 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3950 ,
"src" : "2695:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3953 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "2670:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3959 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2670:29:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3960 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2670:29:7"
}
]
} ,
"documentation" : null ,
"id" : 3962 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_push" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3951 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3948 ,
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3962 ,
"src" : "2629:10:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3947 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2629:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3950 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3962 ,
"src" : "2641:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3949 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2641:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2628:22:7"
} ,
"returnParameters" : {
"id" : 3952 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2660:0:7"
} ,
"scope" : 3979 ,
"src" : "2614:92:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
} ,
{
"body" : {
"id" : 3977 ,
"nodeType" : "Block" ,
"src" : "2760:48:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3970 ,
"name" : "from" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3964 ,
"src" : "2776:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 3972 ,
"name" : "this" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6580 ,
"src" : "2790:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
] ,
"id" : 3971 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "2782:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_address_$" ,
"typeString" : "type(address)"
} ,
"typeName" : "address"
} ,
"id" : 3973 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2782:13:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 3974 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3966 ,
"src" : "2797:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 3969 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "2770:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 3975 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "2770:31:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 3976 ,
"nodeType" : "ExpressionStatement" ,
"src" : "2770:31:7"
}
]
} ,
"documentation" : null ,
"id" : 3978 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "_pull" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3967 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3964 ,
"name" : "from" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3978 ,
"src" : "2727:12:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 3963 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2727:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 3966 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 3978 ,
"src" : "2741:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 3965 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2741:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "2726:24:7"
} ,
"returnParameters" : {
"id" : 3968 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "2760:0:7"
} ,
"scope" : 3979 ,
"src" : "2712:96:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
}
] ,
"scope" : 4286 ,
"src" : "1445:1365:7"
} ,
{
"baseContracts" : [
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3980 ,
"name" : "BTokenBase" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 3979 ,
"src" : "2831:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_BTokenBase_$3979" ,
"typeString" : "contract BTokenBase"
}
} ,
"id" : 3981 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "2831:10:7"
} ,
{
"arguments" : null ,
"baseName" : {
"contractScope" : null ,
"id" : 3982 ,
"name" : "IERC20" ,
"nodeType" : "UserDefinedTypeName" ,
"referencedDeclaration" : 6537 ,
"src" : "2843:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_contract$_IERC20_$6537" ,
"typeString" : "contract IERC20"
}
} ,
"id" : 3983 ,
"nodeType" : "InheritanceSpecifier" ,
"src" : "2843:6:7"
}
] ,
2020-12-11 11:37:09 +01:00
"contractDependencies" : [ 280 , 1422 , 3979 , 6537 ] ,
2020-11-20 13:12:02 +01:00
"contractKind" : "contract" ,
"documentation" : null ,
"fullyImplemented" : true ,
"id" : 4285 ,
2020-12-11 11:37:09 +01:00
"linearizedBaseContracts" : [ 4285 , 6537 , 3979 , 1422 , 280 ] ,
2020-11-20 13:12:02 +01:00
"name" : "BToken" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"constant" : false ,
"id" : 3986 ,
"name" : "_name" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2857:49:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3984 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2857:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "42616c616e63657220506f6f6c20546f6b656e" ,
"id" : 3985 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2885:21:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_86726d210cafef5a97cd8551cc3cd59ead4ad6b4a08f1b0e2ca14d5024839298" ,
"typeString" : "literal_string \"Balancer Pool Token\""
} ,
"value" : "Balancer Pool Token"
} ,
"visibility" : "private"
} ,
{
"constant" : false ,
"id" : 3989 ,
"name" : "_symbol" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2912:33:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3987 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2912:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "425054" ,
"id" : 3988 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2940:5:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_2c4469c3871c2223d094ce996c22463935f1f3c0f4a0177add993c1ee46e9606" ,
"typeString" : "literal_string \"BPT\""
} ,
"value" : "BPT"
} ,
"visibility" : "private"
} ,
{
"constant" : false ,
"id" : 3992 ,
"name" : "_decimals" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4285 ,
"src" : "2951:30:7" ,
"stateVariable" : true ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
"typeName" : {
"id" : 3990 ,
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "2951:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"value" : {
"argumentTypes" : null ,
"hexValue" : "3138" ,
"id" : 3991 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "2979:2:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_18_by_1" ,
"typeString" : "int_const 18"
} ,
"value" : "18"
} ,
"visibility" : "private"
} ,
{
"body" : {
"id" : 3999 ,
"nodeType" : "Block" ,
"src" : "3040:29:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 3997 ,
"name" : "_name" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3986 ,
"src" : "3057:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string storage ref"
}
} ,
"functionReturnParameters" : 3996 ,
"id" : 3998 ,
"nodeType" : "Return" ,
"src" : "3050:12:7"
}
]
} ,
"documentation" : null ,
"id" : 4000 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "name" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 3993 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3001:2:7"
} ,
"returnParameters" : {
"id" : 3996 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 3995 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4000 ,
"src" : "3025:13:7" ,
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory_ptr" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 3994 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3025:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3024:15:7"
} ,
"scope" : 4285 ,
"src" : "2988:81:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4007 ,
"nodeType" : "Block" ,
"src" : "3129:31:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4005 ,
"name" : "_symbol" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3989 ,
"src" : "3146:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage" ,
"typeString" : "string storage ref"
}
} ,
"functionReturnParameters" : 4004 ,
"id" : 4006 ,
"nodeType" : "Return" ,
"src" : "3139:14:7"
}
]
} ,
"documentation" : null ,
"id" : 4008 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "symbol" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4001 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3090:2:7"
} ,
"returnParameters" : {
"id" : 4004 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4003 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4008 ,
"src" : "3114:13:7" ,
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_memory_ptr" ,
"typeString" : "string"
} ,
"typeName" : {
"id" : 4002 ,
"name" : "string" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3114:6:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_string_storage_ptr" ,
"typeString" : "string"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3113:15:7"
} ,
"scope" : 4285 ,
"src" : "3075:85:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4015 ,
"nodeType" : "Block" ,
"src" : "3213:33:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4013 ,
"name" : "_decimals" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3992 ,
"src" : "3230:9:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"functionReturnParameters" : 4012 ,
"id" : 4014 ,
"nodeType" : "Return" ,
"src" : "3223:16:7"
}
]
} ,
"documentation" : null ,
"id" : 4016 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "decimals" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4009 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3183:2:7"
} ,
"returnParameters" : {
"id" : 4012 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4011 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4016 ,
"src" : "3206:5:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
} ,
"typeName" : {
"id" : 4010 ,
"name" : "uint8" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3206:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint8" ,
"typeString" : "uint8"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3205:7:7"
} ,
"scope" : 4285 ,
"src" : "3166:80:7" ,
"stateMutability" : "view" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4031 ,
"nodeType" : "Block" ,
"src" : "3326:44:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4025 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3343:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4027 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4026 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4018 ,
"src" : "3354:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3343:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4029 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4028 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4020 ,
"src" : "3359:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3343:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4024 ,
"id" : 4030 ,
"nodeType" : "Return" ,
"src" : "3336:27:7"
}
]
} ,
"documentation" : null ,
"id" : 4032 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "allowance" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4021 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4018 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3271:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4017 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3271:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4020 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3284:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4019 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3284:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3270:26:7"
} ,
"returnParameters" : {
"id" : 4024 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4023 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4032 ,
"src" : "3320:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4022 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3320:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3319:6:7"
} ,
"scope" : 4285 ,
"src" : "3252:118:7" ,
"stateMutability" : "view" ,
"superFunction" : 6500 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4043 ,
"nodeType" : "Block" ,
"src" : "3438:38:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4039 ,
"name" : "_balance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3788 ,
"src" : "3455:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4041 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4040 ,
"name" : "whom" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4034 ,
"src" : "3464:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3455:14:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4038 ,
"id" : 4042 ,
"nodeType" : "Return" ,
"src" : "3448:21:7"
}
]
} ,
"documentation" : null ,
"id" : 4044 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "balanceOf" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4035 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4034 ,
"name" : "whom" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4044 ,
"src" : "3395:12:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4033 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3395:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3394:14:7"
} ,
"returnParameters" : {
"id" : 4038 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4037 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4044 ,
"src" : "3432:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4036 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3432:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3431:6:7"
} ,
"scope" : 4285 ,
"src" : "3376:100:7" ,
"stateMutability" : "view" ,
"superFunction" : 6482 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4051 ,
"nodeType" : "Block" ,
"src" : "3532:36:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4049 ,
"name" : "_totalSupply" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3796 ,
"src" : "3549:12:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"functionReturnParameters" : 4048 ,
"id" : 4050 ,
"nodeType" : "Return" ,
"src" : "3542:19:7"
}
]
} ,
"documentation" : null ,
"id" : 4052 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "totalSupply" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4045 ,
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
"src" : "3502:2:7"
} ,
"returnParameters" : {
"id" : 4048 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4047 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4052 ,
"src" : "3526:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4046 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3526:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3525:6:7"
} ,
"scope" : 4285 ,
"src" : "3482:86:7" ,
"stateMutability" : "view" ,
"superFunction" : 6475 ,
"visibility" : "public"
} ,
{
"body" : {
"id" : 4079 ,
"nodeType" : "Block" ,
"src" : "3638:116:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4068 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4061 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3648:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4065 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4062 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3659:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4063 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3659:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3648:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4066 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4064 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4054 ,
"src" : "3671:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "3648:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"id" : 4067 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4056 ,
"src" : "3678:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "3648:33:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4069 ,
"nodeType" : "ExpressionStatement" ,
"src" : "3648:33:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4071 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3705:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4072 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3705:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4073 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4054 ,
"src" : "3717:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4074 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4056 ,
"src" : "3722:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4070 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "3696:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4075 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3696:30:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4076 ,
"nodeType" : "EmitStatement" ,
"src" : "3691:35:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4077 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "3743:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4060 ,
"id" : 4078 ,
"nodeType" : "Return" ,
"src" : "3736:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4080 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "approve" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4057 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4054 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3591:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4053 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3591:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4056 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3604:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4055 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3604:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3590:23:7"
} ,
"returnParameters" : {
"id" : 4060 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4059 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4080 ,
"src" : "3632:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4058 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3632:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3631:6:7"
} ,
"scope" : 4285 ,
"src" : "3574:180:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6509 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4120 ,
"nodeType" : "Block" ,
"src" : "3833:175:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4104 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4089 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3843:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4093 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4090 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3854:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4091 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3854:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3843:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4094 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4092 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3866:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "3843:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4096 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3878:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4099 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4097 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3889:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4098 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3889:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3878:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4101 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4100 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3901:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3878:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4102 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4084 ,
"src" : "3907:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4095 ,
"name" : "badd" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1001 ,
"src" : "3873:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4103 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3873:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "3843:68:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4105 ,
"nodeType" : "ExpressionStatement" ,
"src" : "3843:68:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4107 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3935:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4108 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3935:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4109 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3947:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4110 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "3952:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4113 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4111 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "3963:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4112 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "3963:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3952:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4115 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4114 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4082 ,
"src" : "3975:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "3952:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4106 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "3926:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4116 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "3926:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4117 ,
"nodeType" : "EmitStatement" ,
"src" : "3921:59:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4118 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "3997:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4088 ,
"id" : 4119 ,
"nodeType" : "Return" ,
"src" : "3990:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4121 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "increaseApproval" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4085 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4082 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3786:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4081 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3786:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4084 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3799:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4083 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3799:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3785:23:7"
} ,
"returnParameters" : {
"id" : 4088 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4087 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4121 ,
"src" : "3827:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4086 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "3827:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "3826:6:7"
} ,
"scope" : 4285 ,
"src" : "3760:248:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4180 ,
"nodeType" : "Block" ,
"src" : "4087:315:7" ,
"statements" : [
{
2020-12-11 11:37:09 +01:00
"assignments" : [ 4131 ] ,
2020-11-20 13:12:02 +01:00
"declarations" : [
{
"constant" : false ,
"id" : 4131 ,
"name" : "oldValue" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4180 ,
"src" : "4097:13:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4130 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4097:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"id" : 4138 ,
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4132 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4113:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4135 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4133 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4124:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4134 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4124:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4113:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4137 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4136 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4136:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4113:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
"src" : "4097:43:7"
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4141 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 4139 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4125 ,
"src" : "4154:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : ">" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4140 ,
"name" : "oldValue" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4131 ,
"src" : "4160:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4154:14:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : {
"id" : 4164 ,
"nodeType" : "Block" ,
"src" : "4232:74:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4162 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4152 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4246:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4156 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4153 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4257:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4154 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4257:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4246:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4157 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4155 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4269:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4246:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4159 ,
"name" : "oldValue" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4131 ,
"src" : "4281:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4160 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4125 ,
"src" : "4291:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4158 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "4276:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4161 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4276:19:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4246:49:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4163 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4246:49:7"
}
]
} ,
"id" : 4165 ,
"nodeType" : "IfStatement" ,
"src" : "4150:156:7" ,
"trueBody" : {
"id" : 4151 ,
"nodeType" : "Block" ,
"src" : "4170:56:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4149 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4142 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4184:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4146 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4143 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4195:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4144 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4195:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4184:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4147 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4145 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4207:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4184:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
"id" : 4148 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4214:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"src" : "4184:31:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4150 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4184:31:7"
}
]
}
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4167 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4329:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4168 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4329:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4169 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4341:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4170 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4346:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4173 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4171 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4357:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4172 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4357:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4346:22:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4175 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4174 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4123 ,
"src" : "4369:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4346:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4166 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "4320:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4176 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4320:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4177 ,
"nodeType" : "EmitStatement" ,
"src" : "4315:59:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4178 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4391:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4129 ,
"id" : 4179 ,
"nodeType" : "Return" ,
"src" : "4384:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4181 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "decreaseApproval" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4126 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4123 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4040:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4122 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4040:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4125 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4053:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4124 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4053:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4039:23:7"
} ,
"returnParameters" : {
"id" : 4129 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4128 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4181 ,
"src" : "4081:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4127 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4081:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4080:6:7"
} ,
"scope" : 4285 ,
"src" : "4014:388:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4199 ,
"nodeType" : "Block" ,
"src" : "4473:65:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4191 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4489:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4192 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4489:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4193 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4183 ,
"src" : "4501:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4194 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4185 ,
"src" : "4506:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4190 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "4483:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4195 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4483:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4196 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4483:27:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4197 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4527:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4189 ,
"id" : 4198 ,
"nodeType" : "Return" ,
"src" : "4520:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4200 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "transfer" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4186 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4183 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4426:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4182 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4426:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4185 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4439:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4184 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4439:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4425:23:7"
} ,
"returnParameters" : {
"id" : 4189 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4188 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4200 ,
"src" : "4467:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4187 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4467:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4466:6:7"
} ,
"scope" : 4285 ,
"src" : "4408:130:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6491 ,
"visibility" : "external"
} ,
{
"body" : {
"id" : 4283 ,
"nodeType" : "Block" ,
"src" : "4673:436:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"id" : 4224 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 4215 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4212 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4704:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4213 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4704:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "==" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4214 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4718:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"src" : "4704:17:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "||" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4223 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"id" : 4216 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4725:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<=" ,
"rightExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4217 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4732:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4219 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4218 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4743:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4732:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4222 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4220 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4748:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4221 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4748:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4732:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4725:34:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"src" : "4704:55:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
{
"argumentTypes" : null ,
"hexValue" : "4552525f42544f4b454e5f4241445f43414c4c4552" ,
"id" : 4225 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "string" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4774:23:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_stringliteral_7c78c5c07128d4fb2c83ecfae573652cc351a44f64cf0f454240bdf4749e318c" ,
"typeString" : "literal_string \"ERR_BTOKEN_BAD_CALLER\""
} ,
"value" : "ERR_BTOKEN_BAD_CALLER"
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
{
"typeIdentifier" : "t_stringliteral_7c78c5c07128d4fb2c83ecfae573652cc351a44f64cf0f454240bdf4749e318c" ,
"typeString" : "literal_string \"ERR_BTOKEN_BAD_CALLER\""
}
] ,
"id" : 4211 ,
"name" : "require" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6555 , 6556 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6556 ,
"src" : "4683:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$" ,
"typeString" : "function (bool,string memory) pure"
}
} ,
"id" : 4226 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4683:124:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4227 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4683:124:7"
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4229 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4823:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4230 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4204 ,
"src" : "4828:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"id" : 4231 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4833:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4228 ,
"name" : "_move" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3946 ,
"src" : "4817:5:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4232 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4817:20:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4233 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4817:20:7"
} ,
{
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"id" : 4249 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"id" : 4237 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4234 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4851:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4235 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4851:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"id" : 4236 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4865:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"src" : "4851:17:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "&&" ,
"rightExpression" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"id" : 4248 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4238 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4872:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4240 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4239 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4883:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4872:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4243 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4241 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4888:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4242 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4888:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4872:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "!=" ,
"rightExpression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"id" : 4246 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "-" ,
"prefix" : true ,
"src" : "4911:2:7" ,
"subExpression" : {
"argumentTypes" : null ,
"hexValue" : "31" ,
"id" : 4245 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "4912:1:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_1_by_1" ,
"typeString" : "int_const 1"
} ,
"value" : "1"
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_minus_1_by_1" ,
"typeString" : "int_const -1"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_rational_minus_1_by_1" ,
"typeString" : "int_const -1"
}
] ,
"id" : 4244 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"lValueRequested" : false ,
"nodeType" : "ElementaryTypeNameExpression" ,
"src" : "4903:7:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_type$_t_uint256_$" ,
"typeString" : "type(uint256)"
} ,
"typeName" : "uint256"
} ,
"id" : 4247 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "typeConversion" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4903:11:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4872:42:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"src" : "4851:63:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"falseBody" : null ,
"id" : 4280 ,
"nodeType" : "IfStatement" ,
"src" : "4847:235:7" ,
"trueBody" : {
"id" : 4279 ,
"nodeType" : "Block" ,
"src" : "4916:166:7" ,
"statements" : [
{
"expression" : {
"argumentTypes" : null ,
"id" : 4265 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftHandSide" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4250 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4930:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4254 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4251 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4941:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4930:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4255 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4252 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4946:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4253 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4946:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : true ,
"nodeType" : "IndexAccess" ,
"src" : "4930:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "Assignment" ,
"operator" : "=" ,
"rightHandSide" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4257 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "4965:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4259 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4258 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "4976:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4965:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4262 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4260 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "4981:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4261 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "4981:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "4965:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"id" : 4263 ,
"name" : "amt" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4206 ,
"src" : "4994:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4256 ,
"name" : "bsub" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 1028 ,
"src" : "4960:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$" ,
"typeString" : "function (uint256,uint256) pure returns (uint256)"
}
} ,
"id" : 4264 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "4960:38:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"src" : "4930:68:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"id" : 4266 ,
"nodeType" : "ExpressionStatement" ,
"src" : "4930:68:7"
} ,
{
"eventCall" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4268 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "5026:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4269 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "5026:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
{
"argumentTypes" : null ,
"id" : 4270 ,
"name" : "dst" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4204 ,
"src" : "5038:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
"id" : 4271 ,
"name" : "_allowance" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 3794 ,
"src" : "5043:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$" ,
"typeString" : "mapping(address => mapping(address => uint256))"
}
} ,
"id" : 4273 ,
"indexExpression" : {
"argumentTypes" : null ,
"id" : 4272 ,
"name" : "src" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 4202 ,
"src" : "5054:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "5043:15:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_mapping$_t_address_$_t_uint256_$" ,
"typeString" : "mapping(address => uint256)"
}
} ,
"id" : 4276 ,
"indexExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
"id" : 4274 ,
"name" : "msg" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
"referencedDeclaration" : 6552 ,
"src" : "5059:3:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_magic_message" ,
"typeString" : "msg"
}
} ,
"id" : 4275 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "sender" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
"src" : "5059:10:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
"src" : "5043:27:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address_payable" ,
"typeString" : "address payable"
} ,
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
] ,
"id" : 4267 ,
"name" : "Approval" ,
"nodeType" : "Identifier" ,
2020-12-11 11:37:09 +01:00
"overloadedDeclarations" : [ 6536 ] ,
2020-11-20 13:12:02 +01:00
"referencedDeclaration" : 6536 ,
"src" : "5017:8:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$" ,
"typeString" : "function (address,address,uint256)"
}
} ,
"id" : 4277 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
"src" : "5017:54:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
"id" : 4278 ,
"nodeType" : "EmitStatement" ,
"src" : "5012:59:7"
}
]
}
} ,
{
"expression" : {
"argumentTypes" : null ,
"hexValue" : "74727565" ,
"id" : 4281 ,
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "bool" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
"src" : "5098:4:7" ,
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"value" : "true"
} ,
"functionReturnParameters" : 4210 ,
"id" : 4282 ,
"nodeType" : "Return" ,
"src" : "5091:11:7"
}
]
} ,
"documentation" : null ,
"id" : 4284 ,
"implemented" : true ,
"kind" : "function" ,
"modifiers" : [ ] ,
"name" : "transferFrom" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
"id" : 4207 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4202 ,
"name" : "src" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4575:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4201 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4575:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4204 ,
"name" : "dst" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4597:11:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
"id" : 4203 ,
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4597:7:7" ,
"stateMutability" : "nonpayable" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
"id" : 4206 ,
"name" : "amt" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4619:8:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
"id" : 4205 ,
"name" : "uint" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4619:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4565:68:7"
} ,
"returnParameters" : {
"id" : 4210 ,
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
"id" : 4209 ,
"name" : "" ,
"nodeType" : "VariableDeclaration" ,
"scope" : 4284 ,
"src" : "4662:4:7" ,
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
"id" : 4208 ,
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
"src" : "4662:4:7" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"src" : "4661:6:7"
} ,
"scope" : 4285 ,
"src" : "4544:565:7" ,
"stateMutability" : "nonpayable" ,
"superFunction" : 6520 ,
"visibility" : "external"
}
] ,
"scope" : 4286 ,
"src" : "2812:2299:7"
}
] ,
"src" : "643:4469:7"
} ,
"compiler" : {
"name" : "solc" ,
"version" : "0.5.7+commit.6da8b019.Emscripten.clang"
} ,
"networks" : { } ,
"schemaVersion" : "3.2.4" ,
"updatedAt" : "2020-10-22T12:03:05.101Z" ,
"devdoc" : {
"methods" : { }
} ,
"userdoc" : {
"methods" : { }
}
2020-12-11 11:37:09 +01:00
}