0 txs
4 calls
constructor
constructor(address _core, address _farmRegistry)
functions
cooldown
viewfunction cooldown() view returns (uint256)
core
viewfunction core() view returns (address)
farmRegistry
viewfunction farmRegistry() view returns (address)
lastRebalance
viewfunction lastRebalance() view returns (uint256)
paused
viewfunction paused() view returns (bool)
batchMovement
nonpayablefunction batchMovement(address[] _from, address[] _to, uint256[] _amounts)
batchMovementWithCooldown
nonpayablefunction batchMovementWithCooldown(address[] _from, address[] _to, uint256[] _amounts)
emergencyAction
payablefunction emergencyAction(tuple[] calls) payable returns (bytes[] returnData)
pause
nonpayablefunction pause()
setCooldown
nonpayablefunction setCooldown(uint256 _cooldown)
setCore
nonpayablefunction setCore(address newCore)
singleMovement
nonpayablefunction singleMovement(address _from, address _to, uint256 _amount) returns (uint256)
singleMovementSecondaryAsset
nonpayablefunction singleMovementSecondaryAsset(address _from, address _to, address _assetToken, uint256 _amount) returns (uint256)
unpause
nonpayablefunction unpause()
events
Allocate
event Allocate(uint256 indexed timestamp, address indexed from, address indexed to, address asset, uint256 amount)
CooldownUpdated
event CooldownUpdated(uint256 indexed timestamp, uint256 cooldown)
CoreUpdate
event CoreUpdate(address indexed oldCore, address indexed newCore)
Paused
event Paused(address account)
Unpaused
event Unpaused(address account)
errors
CooldownNotElapsed
error CooldownNotElapsed()
EmptyInput
error EmptyInput()
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
InactiveRebalancer
error InactiveRebalancer()
IncompatibleAssets
error IncompatibleAssets()
InvalidFarm
error InvalidFarm(address farm)
InvalidInput
error InvalidInput()
UnderlyingCallReverted
error UnderlyingCallReverted(bytes returnData)
creation bytecode
0x60a060405234801561000f575f5ffd5b50604051611e3b380380611e3b83398101604081905261002e91610091565b5f80546001600160a01b0380851661010002610100600160a81b0319909216919091179091558116608052613840600181905561006b90426100c2565b600255506100e79050565b80516001600160a01b038116811461008c575f5ffd5b919050565b5f5f604083850312156100a2575f5ffd5b6100ab83610076565b91506100b960208401610076565b90509250929050565b818103818111156100e157634e487b7160e01b5f52601160045260245ffd5b92915050565b608051611d2061011b5f395f818161023101528181610e1601528181610ecc0152818161148b01526115410152611d205ff3fe6080604052600436106100d9575f3560e01c8063787a08a61161007c5780638456cb59116100575780638456cb591461020c57806387418e4a14610220578063cc5790081461026b578063f2f4eb261461028a575f5ffd5b8063787a08a6146101b85780637df3927e146101cd57806380009630146101ed575f5ffd5b80633f4ba83a116100b75780633f4ba83a146101455780634fc3f41a146101595780635c975abb1461017857806366dcb84214610199575f5ffd5b8063106b9ca1146100dd578063323bb807146101055780633dd5446d14610126575b5f5ffd5b3480156100e8575f5ffd5b506100f260025481565b6040519081526020015b60405180910390f35b348015610110575f5ffd5b5061012461011f366004611982565b6102ab565b005b348015610131575f5ffd5b50610124610140366004611982565b6103d2565b348015610150575f5ffd5b506101246104b8565b348015610164575f5ffd5b50610124610173366004611a21565b610593565b348015610183575f5ffd5b505f5460ff1660405190151581526020016100fc565b3480156101a4575f5ffd5b506100f26101b3366004611a4c565b6106a1565b3480156101c3575f5ffd5b506100f260015481565b6101e06101db366004611a9a565b610790565b6040516100fc9190611b07565b3480156101f8575f5ffd5b50610124610207366004611b6a565b610a12565b348015610217575f5ffd5b50610124610aef565b34801561022b575f5ffd5b506102537f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100fc565b348015610276575f5ffd5b506100f2610285366004611b8c565b610bc7565b348015610295575f5ffd5b505f5461010090046001600160a01b0316610253565b6102b3610cb4565b5f54604051632474521560e21b81527fd9fa15f584375c99b94a4f575a0f2613222d7c57b2d1db09e835e77301b9eb9a600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610324573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103489190611bca565b6103885760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b6002546001546103989042611be9565b10156103b757604051635115ba2f60e11b815260040160405180910390fd5b426002556103c9878787878787610cd9565b50505050505050565b6103da610cb4565b5f54604051632474521560e21b81527f81c2da19079a6b9586648186d4d64ede4daff8cc96fb1e2cbf9c9bb9c3b3bb94600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa15801561044b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061046f9190611bca565b6104aa5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b6103c9878787878787610cd9565b5f54604051632474521560e21b81527fe7276a2a84d8de556657ec9cf93a55a7d66f096e529d0582ed08e9e2208b92b5600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610529573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061054d9190611bca565b6105885760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b610590610da4565b50565b5f54604051632474521560e21b81527f3947e2f542c6c46c543fa4f79cbd1e27fea37ed249bc3caf992570d19123642e600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610604573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106289190611bca565b6106635760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b600182905560405182815242907f5953b565c074c2cce1866b4e69c9efc4908556bb6fca70f735907c94d94055159060200160405180910390a25050565b5f6106aa610cb4565b5f54604051632474521560e21b81527f81c2da19079a6b9586648186d4d64ede4daff8cc96fb1e2cbf9c9bb9c3b3bb94600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa15801561071b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061073f9190611bca565b61077a5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b61078686868686610df5565b9695505050505050565b5f54604051632474521560e21b81527f1a6838efa4183e08fe3607359d1259272af9d4716f65e1a7b5921f78fd5a3c6a6004820181905233602483015260609290916101009091046001600160a01b0316906391d1485490604401602060405180830381865afa158015610806573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061082a9190611bca565b6108655760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b8267ffffffffffffffff81111561087e5761087e611c0e565b6040519080825280602002602001820160405280156108b157816020015b606081526020019060019003908161089c5790505b5091505f5b83811015610a0a575f8585838181106108d1576108d1611c22565b90506020028101906108e39190611c36565b6108f1906020810190611b6a565b90505f86868481811061090657610906611c22565b90506020028101906109189190611c36565b602001359050365f88888681811061093257610932611c22565b90506020028101906109449190611c36565b610952906040810190611c54565b915091505f5f856001600160a01b0316858585604051610973929190611c97565b5f6040518083038185875af1925050503d805f81146109ad576040519150601f19603f3d011682016040523d82523d5f602084013e6109b2565b606091505b50915091508181906109d857604051634ad176bb60e01b815260040161037f9190611ca6565b50808988815181106109ec576109ec611c22565b602002602001018190525050505050505080806001019150506108b6565b505092915050565b5f54604051632474521560e21b81527f1a6838efa4183e08fe3607359d1259272af9d4716f65e1a7b5921f78fd5a3c6a600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610a83573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aa79190611bca565b610ae25760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b610aeb826113c9565b5050565b5f54604051632474521560e21b81527ffcb9fcbfa83b897fb2d5cf4b58962164105c1e71489a37ef3ae0db3fdce576f6600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610b60573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b849190611bca565b610bbf5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b61059061142e565b5f610bd0610cb4565b5f54604051632474521560e21b81527f81c2da19079a6b9586648186d4d64ede4daff8cc96fb1e2cbf9c9bb9c3b3bb94600482018190523360248301529161010090046001600160a01b0316906391d1485490604401602060405180830381865afa158015610c41573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c659190611bca565b610ca05760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b604482015260640161037f565b610cab85858561146a565b95945050505050565b5f5460ff1615610cd75760405163d93c066560e01b815260040160405180910390fd5b565b84610cf75760405163a447fc5360e01b815260040160405180910390fd5b8483148015610d0557508481145b610d225760405163b4fa3fb360e01b815260040160405180910390fd5b5f5b858110156103c957610d9b878783818110610d4157610d41611c22565b9050602002016020810190610d569190611b6a565b868684818110610d6857610d68611c22565b9050602002016020810190610d7d9190611b6a565b858585818110610d8f57610d8f611c22565b9050602002013561146a565b50600101610d24565b610dac611918565b5f805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b60405163637012c760e01b81526001600160a01b0385811660048301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063637012c790602401602060405180830381865afa158015610e5d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e819190611bca565b8590610eac5760405163400b8e8960e01b81526001600160a01b03909116600482015260240161037f565b5060405163637012c760e01b81526001600160a01b0385811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063637012c790602401602060405180830381865afa158015610f11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f359190611bca565b8490610f605760405163400b8e8960e01b81526001600160a01b03909116600482015260240161037f565b505f856001600160a01b0316631083f7616040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f9e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fc29190611cb8565b90505f856001600160a01b0316631083f7616040518163ffffffff1660e01b8152600401602060405180830381865afa158015611001573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110259190611cb8565b9050816001600160a01b0316856001600160a01b031614806110aa57506040516308c9682b60e31b81526001600160a01b03868116600483015288169063464b415890602401602060405180830381865afa158015611086573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110aa9190611bca565b6110c75760405163fce692b960e01b815260040160405180910390fd5b806001600160a01b0316856001600160a01b0316148061114a57506040516308c9682b60e31b81526001600160a01b03868116600483015287169063464b415890602401602060405180830381865afa158015611126573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114a9190611bca565b6111675760405163fce692b960e01b815260040160405180910390fd5b816001600160a01b0316856001600160a01b03160361124b575f1984036111eb57866001600160a01b0316631a6865026040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111c4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e89190611cd3565b93505b604051627b8a6760e11b8152600481018590526001600160a01b03878116602483015288169062f714ce906044015f604051808303815f87803b158015611230575f5ffd5b505af1158015611242573d5f5f3e3d5ffd5b50505050611324565b5f1984036112be576040516370a0823160e01b81526001600160a01b0388811660048301528616906370a0823190602401602060405180830381865afa158015611297573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112bb9190611cd3565b93505b604051634615707760e01b81526001600160a01b0386811660048301526024820186905287811660448301528816906346157077906064015f604051808303815f87803b15801561130d575f5ffd5b505af115801561131f573d5f5f3e3d5ffd5b505050505b856001600160a01b031663d0e30db06040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561135c575f5ffd5b505af115801561136e573d5f5f3e3d5ffd5b5050604080516001600160a01b03898116825260208201899052808b1694508b16925042917f9511b7e04ae4835f90a3df7e408c35a66c7064e36892abb46277484e49cee008910160405180910390a4509195945050505050565b5f80546001600160a01b0383811661010081810274ffffffffffffffffffffffffffffffffffffffff0019851617855560405193049190911692909183917f9209b7c8c06dcfd261686a663e7c55989337b18d59da5433c6f2835fb697092091a35050565b611436610cb4565b5f805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610dd83390565b60405163637012c760e01b81526001600160a01b0384811660048301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063637012c790602401602060405180830381865afa1580156114d2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114f69190611bca565b84906115215760405163400b8e8960e01b81526001600160a01b03909116600482015260240161037f565b5060405163637012c760e01b81526001600160a01b0384811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063637012c790602401602060405180830381865afa158015611586573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115aa9190611bca565b83906115d55760405163400b8e8960e01b81526001600160a01b03909116600482015260240161037f565b505f846001600160a01b0316631083f7616040518163ffffffff1660e01b8152600401602060405180830381865afa158015611613573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116379190611cb8565b9050806001600160a01b0316846001600160a01b0316631083f7616040518163ffffffff1660e01b8152600401602060405180830381865afa15801561167f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116a39190611cb8565b6001600160a01b0316146116ca5760405163fce692b960e01b815260040160405180910390fd5b825f0361173857846001600160a01b0316631a6865026040518163ffffffff1660e01b8152600401602060405180830381865afa15801561170d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117319190611cd3565b92506117a3565b5f1983036117a357846001600160a01b03166371a973056040518163ffffffff1660e01b8152600401602060405180830381865afa15801561177c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117a09190611cd3565b92505b5f846001600160a01b0316636083e59a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117e0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118049190611cd3565b90508084116118135783611815565b805b604051627b8a6760e11b8152600481018290526001600160a01b0387811660248301529195509087169062f714ce906044015f604051808303815f87803b15801561185e575f5ffd5b505af1158015611870573d5f5f3e3d5ffd5b50505050846001600160a01b031663d0e30db06040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156118ac575f5ffd5b505af11580156118be573d5f5f3e3d5ffd5b5050604080516001600160a01b03868116825260208201899052808a1694508a16925042917f9511b7e04ae4835f90a3df7e408c35a66c7064e36892abb46277484e49cee008910160405180910390a45091949350505050565b5f5460ff16610cd757604051638dfc202b60e01b815260040160405180910390fd5b5f5f83601f84011261194a575f5ffd5b50813567ffffffffffffffff811115611961575f5ffd5b6020830191508360208260051b850101111561197b575f5ffd5b9250929050565b5f5f5f5f5f5f60608789031215611997575f5ffd5b863567ffffffffffffffff8111156119ad575f5ffd5b6119b989828a0161193a565b909750955050602087013567ffffffffffffffff8111156119d8575f5ffd5b6119e489828a0161193a565b909550935050604087013567ffffffffffffffff811115611a03575f5ffd5b611a0f89828a0161193a565b979a9699509497509295939492505050565b5f60208284031215611a31575f5ffd5b5035919050565b6001600160a01b0381168114610590575f5ffd5b5f5f5f5f60808587031215611a5f575f5ffd5b8435611a6a81611a38565b93506020850135611a7a81611a38565b92506040850135611a8a81611a38565b9396929550929360600135925050565b5f5f60208385031215611aab575f5ffd5b823567ffffffffffffffff811115611ac1575f5ffd5b611acd8582860161193a565b90969095509350505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015611b5e57603f19878603018452611b49858351611ad9565b94506020938401939190910190600101611b2d565b50929695505050505050565b5f60208284031215611b7a575f5ffd5b8135611b8581611a38565b9392505050565b5f5f5f60608486031215611b9e575f5ffd5b8335611ba981611a38565b92506020840135611bb981611a38565b929592945050506040919091013590565b5f60208284031215611bda575f5ffd5b81518015158114611b85575f5ffd5b81810381811115611c0857634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f8235605e19833603018112611c4a575f5ffd5b9190910192915050565b5f5f8335601e19843603018112611c69575f5ffd5b83018035915067ffffffffffffffff821115611c83575f5ffd5b60200191503681900382131561197b575f5ffd5b818382375f9101908152919050565b602081525f611b856020830184611ad9565b5f60208284031215611cc8575f5ffd5b8151611b8581611a38565b5f60208284031215611ce3575f5ffd5b505191905056fea26469706673582212200025ed0952103ae02b5e8e918d5d04e2d8434037b105bc7bbb30773a96f23ae064736f6c634300081c0033000000000000000000000000f6d48735eccf12bdc1df2674b1ce3fcb3bd25490000000000000000000000000f5f2718708f471e43968271956cc01aaa8c46119