0 txs
1k calls
constructor
constructor(address _voter)
functions
convert32toAddress
purefunction convert32toAddress(bytes32 data) pure returns (address o)
getArrayIndex
purefunction getArrayIndex(bytes data, uint8 inputNum, uint8 arrayIndex) pure returns (bytes32)
getArrayLast
purefunction getArrayLast(bytes data, uint8 inputNum) pure returns (bytes32)
getArrayLength
purefunction getArrayLength(bytes data, uint8 inputNum) pure returns (uint256)
getBalance
viewfunction getBalance(address pool, address asset) view returns (uint256 balance)
getBytes
purefunction getBytes(bytes data, uint8 inputNum, uint256 offset) pure returns (bytes)
getDecimals
viewfunction getDecimals(address asset) view returns (uint256 decimals)
getInput
purefunction getInput(bytes data, uint8 inputNum) pure returns (bytes32)
getMethod
purefunction getMethod(bytes data) pure returns (bytes4)
getParams
purefunction getParams(bytes data) pure returns (bytes)
read32
purefunction read32(bytes data, uint256 offset, uint256 length) pure returns (bytes32 o)
read4left
purefunction read4left(bytes data, uint256 offset) pure returns (bytes4 o)
removeAssetCheck
viewfunction removeAssetCheck(address pool, address asset) view
voter
viewfunction voter() view returns (address)
withdrawProcessing
viewfunction withdrawProcessing(address pool, address asset, uint256 portion, address to) view returns (address withdrawAsset, uint256 withdrawBalance, tuple[] transactions)
txGuard
nonpayablefunction txGuard(address _poolManagerLogic, address, bytes data) returns (uint16 txType, bool)
events
Approve
event Approve(address fundAddress, address manager, address spender, uint256 amount, uint256 time)
ExchangeFrom
event ExchangeFrom(address fundAddress, address sourceAsset, uint256 sourceAmount, address dstAsset, uint256 time)
ExchangeTo
event ExchangeTo(address fundAddress, address sourceAsset, address dstAsset, uint256 dstAmount, uint256 time)
errors
No errors.
creation bytecode
0x60806040523480156200001157600080fd5b50604051620027d9380380620027d983398101604081905262000034916200005a565b600080546001600160a01b0319166001600160a01b03929092169190911790556200008a565b6000602082840312156200006c578081fd5b81516001600160a01b038116811462000083578182fd5b9392505050565b61273f806200009a6000396000f3fe608060405234801561001057600080fd5b50600436106100d05760003560e01c806309ff5c7d146100d55780631053f952146100fe5780631eba30771461011e578063293d80631461013e57806341dc16c31461015e57806346c96aac146101715780636179309d14610179578063689015131461019a5780636d5fae54146101ad5780636f8ae202146101c257806382f86acc146101e4578063998546e3146101f7578063c3c6279f1461020a578063cf54aaa01461021d578063d4fac45d14610230578063db896b5714610243575b600080fd5b6100e86100e3366004612360565b610256565b6040516100f591906125ca565b60405180910390f35b61011161010c3660046123a4565b6102e9565b6040516100f591906125e8565b61013161012c366004612289565b610383565b6040516100f591906124db565b61015161014c3660046122d3565b61038a565b6040516100f591906125d3565b6100e861016c3660046123fb565b6103ec565b6101316104ca565b61018c6101873660046120af565b6104d9565b6040516100f5929190612668565b6101116101a83660046122a1565b61083e565b6101c06101bb366004612077565b610859565b005b6101d56101d036600461213b565b61088a565b6040516100f59392919061253c565b6100e86101f2366004612360565b61121b565b6100e8610205366004612360565b611232565b6101516102183660046122a1565b611263565b6100e861022b36600461203f565b611270565b6100e861023e366004612077565b6112ec565b6100e8610251366004612315565b61193f565b60008061026e848460200260040160ff16602061193f565b905060006102818560048401602061193f565b9050806102ca576040805162461bcd60e51b8152602060048201526012602482015271696e707574206973206e6f7420617272617960701b604482015290519081900360640190fd5b6102de85602080840285016004019061193f565b925050505b92915050565b606060148210610331576040805162461bcd60e51b815260206004820152600e60248201526d1a5b9d985b1a59081bd9999cd95d60921b604482015290519081900360640190fd5b816020029150600061035085848660200260040160ff1601602061193f565b9050600061036586858401600401602061193f565b905061037786602484870101836119be565b925050505b9392505050565b805b919050565b600081600401835110156103e3576040805162461bcd60e51b815260206004820152601b60248201527a52656164696e67206279746573206f7574206f6620626f756e647360281b604482015290519081900360640190fd5b50016020015190565b600080610404858560200260040160ff16602061193f565b905060006104178660048401602061193f565b905080610460576040805162461bcd60e51b8152602060048201526012602482015271696e707574206973206e6f7420617272617960701b604482015290519081900360640190fd5b60ff841681116104b0576040805162461bcd60e51b815260206004820152601660248201527534b73b30b634b21030b93930bc903837b9b4ba34b7b760511b604482015290519081900360640190fd5b610377866020600160ff881601810285016004019061193f565b6000546001600160a01b031681565b600080600061051d85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061126392505050565b90506001600160e01b0319811663095ea7b360e01b141561083057600061057c61012c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925061121b915050565b905060006105c287878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061121b915050565b60001c905060008990506000816001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561060757600080fd5b505afa15801561061b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063f919061205b565b90506000816001600160a01b0316634f8419b9866040518263ffffffff1660e01b815260040161066f91906124db565b60206040518083038186803b15801561068757600080fd5b505afa15801561069b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106bf919061205b565b90506001600160a01b038116158015906106e257506001600160a01b0381163014155b6107075760405162461bcd60e51b81526004016106fe90612632565b60405180910390fd5b7f5343b378d69227c1bc2016fd44e8104f0ffa7729f4f4f4110e349a2db0a0d0c8836001600160a01b03166339b81fd96040518163ffffffff1660e01b815260040160206040518083038186803b15801561076157600080fd5b505afa158015610775573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610799919061205b565b8d6001600160a01b031663481c6a756040518163ffffffff1660e01b815260040160206040518083038186803b1580156107d257600080fd5b505afa1580156107e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080a919061205b565b87874260405161081e9594939291906124ef565b60405180910390a16001975050505050505b506000905094509492505050565b60606102e3600480845103846119be9092919063ffffffff16565b600061086583836112ec565b905080156108855760405162461bcd60e51b81526004016106fe906125fb565b505050565b600080606085925061092a670de0b6b3a764000061092487896001600160a01b03166370a082318c6040518263ffffffff1660e01b81526004016108ce91906124db565b60206040518083038186803b1580156108e657600080fd5b505afa1580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e919061245c565b90611b0f565b90611b68565b6000805460405163b9a09fd560e01b815292945090916001600160a01b039091169063b9a09fd590610960908a906004016124db565b60206040518083038186803b15801561097857600080fd5b505afa15801561098c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b0919061205b565b60408051600680825260e0820190925291925060009190816020015b6109d4611fb3565b8152602001906001900390816109cc5750506040516326ad4fc560e11b81529093506000906001600160a01b038a1690634d5a9f8a90610a18908d906004016124db565b60206040518083038186803b158015610a3057600080fd5b505afa158015610a44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a68919061245c565b90506000896001600160a01b031663a1ac4d138c6040518263ffffffff1660e01b8152600401610a9891906124db565b60206040518083038186803b158015610ab057600080fd5b505afa158015610ac4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae8919061245c565b90506000821180610af95750600081115b15610e105789858481518110610b0b57fe5b6020908102919091018101516001600160a01b0390921690915260408051600481526024810190915290810180516001600160e01b031663d294f09360e01b1790528551869085908110610b5b57fe5b6020908102919091018101510152610b74836001611bcc565b92508115610cc35760008a6001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb757600080fd5b505afa158015610bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bef919061205b565b9050610c056001600160a01b038d168c83611c24565b15610cc15780868581518110610c1757fe5b60209081029190910101516001600160a01b0390911690526000805160206126c983398151915289610c55670de0b6b3a7640000610924878f611b0f565b604051602401610c66929190612523565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b038381831617835250505050868581518110610ca557fe5b6020908102919091018101510152610cbe846001611bcc565b93505b505b8015610e105760008a6001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0457600080fd5b505afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061205b565b9050610d526001600160a01b038d168c83611c24565b15610e0e5780868581518110610d6457fe5b60209081029190910101516001600160a01b0390911690526000805160206126c983398151915289610da2670de0b6b3a7640000610924868f611b0f565b604051602401610db3929190612523565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b038381831617835250505050868581518110610df257fe5b6020908102919091018101510152610e0b846001611bcc565b93505b505b50506001600160a01b038216156111f7576040516370a0823160e01b81526000906001600160a01b038416906370a0823190610e50908d906004016124db565b60206040518083038186803b158015610e6857600080fd5b505afa158015610e7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea0919061245c565b90508015610f76576000610ec0670de0b6b3a7640000610924848c611b0f565b905083858481518110610ecf57fe5b60209081029190910101516001600160a01b0390911690526040517f2e1a7d4d13322e7b96f9a57413e1525c250fb7a9021cf91d1540d5b69f16a49f90610f1a9083906024016125ca565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b038381831617835250505050858481518110610f5957fe5b6020908102919091018101510152610f72836001611bcc565b9250505b5081838281518110610f8457fe5b60209081029190910101516001600160a01b0390911690526040517fc00007b0b14ce14d1d8e20828982c1e51944313ec54b52ee46020e0e0167749590610fcf908b906024016124db565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b03838183161783525050505083828151811061100e57fe5b6020908102919091018101510152611027816001611bcc565b90506000826001600160a01b0316628cc2628b6040518263ffffffff1660e01b815260040161105691906124db565b60206040518083038186803b15801561106e57600080fd5b505afa158015611082573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a6919061245c565b905080156111f5576000836001600160a01b031663f7c618c16040518163ffffffff1660e01b815260040160206040518083038186803b1580156110e957600080fd5b505afa1580156110fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611121919061205b565b90506111376001600160a01b038c168b83611c24565b156111f3578085848151811061114957fe5b60209081029190910101516001600160a01b0390911690526000805160206126c983398151915288611187670de0b6b3a7640000610924868e611b0f565b604051602401611198929190612523565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b0383818316178352505050508584815181106111d757fe5b60209081029190910181015101526111f0836001611bcc565b92505b505b505b82516000906112069083611e36565b90508084510384525050509450945094915050565b600061037c838360200260040160ff16602061193f565b60008061124a848460200260040160ff16602061193f565b905061125b8460048301602061193f565b949350505050565b60006102e382600061038a565b6000816001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156112ab57600080fd5b505afa1580156112bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e39190612474565b60ff1692915050565b6000805460405163b9a09fd560e01b815282916001600160a01b03169063b9a09fd59061131d9086906004016124db565b60206040518083038186803b15801561133557600080fd5b505afa158015611349573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136d919061205b565b6040516370a0823160e01b81529091506001600160a01b038416906370a082319061139c9087906004016124db565b60206040518083038186803b1580156113b457600080fd5b505afa1580156113c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ec919061245c565b91506001600160a01b03811615611487576040516370a0823160e01b8152611484906001600160a01b038316906370a082319061142d9088906004016124db565b60206040518083038186803b15801561144557600080fd5b505afa158015611459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147d919061245c565b8390611bcc565b91505b600080856001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156114c357600080fd5b505afa1580156114d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fb919061205b565b90506000866001600160a01b0316631e50a4a66040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611570919061205b565b90506000866001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156115ad57600080fd5b505afa1580156115c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e5919061205b565b90506000876001600160a01b0316634d5a9f8a8a6040518263ffffffff1660e01b815260040161161591906124db565b60206040518083038186803b15801561162d57600080fd5b505afa158015611641573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611665919061245c565b905061167d61167685858585611e93565b8690611bcc565b945050506000866001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156116bc57600080fd5b505afa1580156116d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f4919061205b565b90506000876001600160a01b031663a1ac4d138a6040518263ffffffff1660e01b815260040161172491906124db565b60206040518083038186803b15801561173c57600080fd5b505afa158015611750573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611774919061245c565b905061178561167685858585611e93565b945050506001600160a01b038416156118a0576000846001600160a01b031663f7c618c16040518163ffffffff1660e01b815260040160206040518083038186803b1580156117d357600080fd5b505afa1580156117e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061180b919061205b565b90506000856001600160a01b0316628cc2628a6040518263ffffffff1660e01b815260040161183a91906124db565b60206040518083038186803b15801561185257600080fd5b505afa158015611866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188a919061245c565b905061189b61167685858585611e93565b945050505b611934611676836001600160a01b031663b3596f07896040518263ffffffff1660e01b81526004016118d291906124db565b60206040518083038186803b1580156118ea57600080fd5b505afa1580156118fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611922919061245c565b61092486670de0b6b3a7640000611b0f565b979650505050505050565b600081830184511015611997576040805162461bcd60e51b815260206004820152601b60248201527a52656164696e67206279746573206f7574206f6620626f756e647360281b604482015290519081900360640190fd5b8260200184015190508160200380156119b6576008810260020a820491505b509392505050565b60608182601f011015611a09576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b828284011015611a51576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b81830184511015611a9d576040805162461bcd60e51b8152602060048201526011602482015270736c6963655f6f75744f66426f756e647360781b604482015290519081900360640190fd5b606082158015611abc5760405191506000825260208201604052611b06565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015611af5578051835260209283019201611add565b5050858452601f01601f1916604052505b50949350505050565b600082611b1e575060006102e3565b82820282848281611b2b57fe5b041461037c5760405162461bcd60e51b81526004018080602001828103825260218152602001806126e96021913960400191505060405180910390fd5b6000808211611bbb576040805162461bcd60e51b815260206004820152601a602482015279536166654d6174683a206469766973696f6e206279207a65726f60301b604482015290519081900360640190fd5b818381611bc457fe5b049392505050565b60008282018381101561037c576040805162461bcd60e51b815260206004820152601b60248201527a536166654d6174683a206164646974696f6e206f766572666c6f7760281b604482015290519081900360640190fd5b600080846001600160a01b0316631e50a4a66040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6057600080fd5b505afa158015611c74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c98919061205b565b604051634df48c7360e11b81529091506001600160a01b03821690639be918e690611cc79086906004016124db565b60206040518083038186803b158015611cdf57600080fd5b505afa158015611cf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d17919061226f565b611d2557600191505061037c565b6000816001600160a01b031663e5406dbf6040518163ffffffff1660e01b815260040160006040518083038186803b158015611d6057600080fd5b505afa158015611d74573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d9c919081019061218d565b905060005b8151811015611e2c57856001600160a01b0316828281518110611dc057fe5b6020026020010151600001516001600160a01b03161415611de7576000935050505061037c565b846001600160a01b0316828281518110611dfd57fe5b6020026020010151600001516001600160a01b03161415611e24576001935050505061037c565b600101611da1565b5050509392505050565b600082821115611e8d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60405163cc435bf360e01b81526000906001600160a01b0386169063cc435bf390611ec29086906004016124db565b60206040518083038186803b158015611eda57600080fd5b505afa158015611eee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f12919061226f565b8015611f1e5750600082115b15611fa8576040516314e03fdd60e11b81526001600160a01b038516906329c07fba90611f519086908690600401612523565b60206040518083038186803b158015611f6957600080fd5b505afa158015611f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fa1919061245c565b905061125b565b506000949350505050565b60408051808201909152600081526060602082015290565b8051801515811461038557600080fd5b600082601f830112611feb578081fd5b81356001600160401b03811115611ffe57fe5b612011601f8201601f191660200161267e565b818152846020838601011115612025578283fd5b816020850160208301379081016020019190915292915050565b600060208284031215612050578081fd5b813561037c816126a1565b60006020828403121561206c578081fd5b815161037c816126a1565b60008060408385031215612089578081fd5b8235612094816126a1565b915060208301356120a4816126a1565b809150509250929050565b600080600080606085870312156120c4578182fd5b84356120cf816126a1565b935060208501356120df816126a1565b925060408501356001600160401b03808211156120fa578384fd5b818701915087601f83011261210d578384fd5b81358181111561211b578485fd5b88602082850101111561212c578485fd5b95989497505060200194505050565b60008060008060808587031215612150578384fd5b843561215b816126a1565b9350602085013561216b816126a1565b9250604085013591506060850135612182816126a1565b939692955090935050565b6000602080838503121561219f578182fd5b82516001600160401b03808211156121b5578384fd5b818501915085601f8301126121c8578384fd5b8151818111156121d457fe5b6121e1848583020161267e565b818152848101908486016040808502870188018b10156121ff578889fd5b8896505b848710156122605780828c031215612219578889fd5b8051818101818110888211171561222c57fe5b82528251612239816126a1565b8152612246838a01611fcb565b818a01528452600196909601959287019290810190612203565b50909998505050505050505050565b600060208284031215612280578081fd5b61037c82611fcb565b60006020828403121561229a578081fd5b5035919050565b6000602082840312156122b2578081fd5b81356001600160401b038111156122c7578182fd5b61125b84828501611fdb565b600080604083850312156122e5578182fd5b82356001600160401b038111156122fa578283fd5b61230685828601611fdb565b95602094909401359450505050565b600080600060608486031215612329578283fd5b83356001600160401b0381111561233e578384fd5b61234a86828701611fdb565b9660208601359650604090950135949350505050565b60008060408385031215612372578182fd5b82356001600160401b03811115612387578283fd5b61239385828601611fdb565b92505060208301356120a4816126b9565b6000806000606084860312156123b8578081fd5b83356001600160401b038111156123cd578182fd5b6123d986828701611fdb565b93505060208401356123ea816126b9565b929592945050506040919091013590565b60008060006060848603121561240f578081fd5b83356001600160401b03811115612424578182fd5b61243086828701611fdb565b9350506020840135612441816126b9565b91506040840135612451816126b9565b809150509250925092565b60006020828403121561246d578081fd5b5051919050565b600060208284031215612485578081fd5b815161037c816126b9565b60008151808452815b818110156124b557602081850181015186830182015201612499565b818111156124c65782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252608081019190915260a00190565b6001600160a01b03929092168252602082015260400190565b60006060820160018060a01b03808716845260208681860152604060608187015283875180865260808801915060808482028901019550838901875b828110156125b957898803607f1901845281518051881689528601518689018690526125a6868a0182612490565b9850509285019290850190600101612578565b50959b9a5050505050505050505050565b90815260200190565b6001600160e01b031991909116815260200190565b60006020825261037c6020830184612490565b6020808252601d908201527f63616e6e6f742072656d6f7665206e6f6e2d656d707479206173736574000000604082015260600190565b6020808252601c908201527b1d5b9cdd5c1c1bdc9d1959081cdc195b99195c88185c1c1c9bdd985b60221b604082015260600190565b61ffff9290921682521515602082015260400190565b6040518181016001600160401b038111828210171561269957fe5b604052919050565b6001600160a01b03811681146126b657600080fd5b50565b60ff811681146126b657600080fdfea9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f3b6dfd39c999758cb202f37394a15fca026e528e92fc86f8c6a1667dbef085d64736f6c6343000706003300000000000000000000000016613524e02ad97edfef371bc883f2f5d6c480a5