572 txs
1.7k calls
constructor
constructor(address owner_, address arcadiaFactory, address positionManager, address uniswapV3Factory)
functions
accountInfo
viewfunction accountInfo(address account) view returns (address feeRecipient, uint64 maxClaimFee)
accountToInitiator
viewfunction accountToInitiator(address accountOwner, address account) view returns (address initiator)
ARCADIA_FACTORY
viewfunction ARCADIA_FACTORY() view returns (address)
guardian
viewfunction guardian() view returns (address)
isPositionManager
viewfunction isPositionManager(address positionManager) view returns (bool)
metaData
viewfunction metaData(address account) view returns (bytes data)
onERC721Received
purefunction onERC721Received(address, address, uint256, bytes) pure returns (bytes4)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
changeGuardian
nonpayablefunction changeGuardian(address guardian_)
claim
nonpayablefunction claim(address account_, tuple initiatorParams)
executeAction
nonpayablefunction executeAction(bytes actionTargetData) returns (tuple depositData)
pause
nonpayablefunction pause()
setAccountInfo
nonpayablefunction setAccountInfo(address account_, address initiator, address feeRecipient, uint256 maxClaimFee, bytes metaData_)
setPauseFlag
nonpayablefunction setPauseFlag(bool paused_)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
uniswapV3SwapCallback
nonpayablefunction uniswapV3SwapCallback(int256 amount0Delta, int256 amount1Delta, bytes data)
events
AccountInfoSet
event AccountInfoSet(address indexed account, address indexed initiator)
Claimed
event Claimed(address indexed account, address indexed positionManager, uint256 id)
FeePaid
event FeePaid(address indexed account, address indexed receiver, address indexed asset, uint256 amount)
GuardianChanged
event GuardianChanged(address indexed user, address indexed newGuardian)
OwnershipTransferred
event OwnershipTransferred(address indexed user, address indexed newOwner)
PauseFlagsUpdated
event PauseFlagsUpdated(bool pauseUpdate)
YieldClaimed
event YieldClaimed(address indexed account, address indexed asset, uint256 amount)
YieldTransferred
event YieldTransferred(address indexed account, address indexed receiver, address indexed asset, uint256 amount)
errors
InvalidInitiator
error InvalidInitiator()
InvalidPositionManager
error InvalidPositionManager()
InvalidRecipient
error InvalidRecipient()
InvalidValue
error InvalidValue()
NotAnAccount
error NotAnAccount()
OnlyAccount
error OnlyAccount()
OnlyAccountOwner
error OnlyAccountOwner()
OnlyGuardian
error OnlyGuardian()
OnlyPool
error OnlyPool()
Paused
error Paused()
Reentered
error Reentered()
creation bytecode
0x60e03461011357601f61209a38819003918201601f19168301916001600160401b0383118484101761011757808492608094604052833981010312610113576100478161012b565b6100536020830161012b565b9161006c60606100656040840161012b565b920161012b565b5f80546001600160a01b0319166001600160a01b039094169384178155604051949193907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a36001600160a01b039081166080521660a05260c052611f5a9081610140823960805181818161027601526112c7015260a05181818161083e01528181610a57015281816115b60152611965015260c05181818161015c01526109250152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036101135756fe6080806040526004361015610012575f80fd5b5f905f3560e01c9081630686ddd914611999575080630a73e391146119455780630ede59ba146114f45780631204f5251461149d578063150b7a02146114465780632fcb4f04146113d1578063452a9320146113a85780635c975abb146113835780638456cb59146112f65780638cffa277146112b15780638da5cb5b1461128a5780638da92e7114611211578063a129568d14610677578063a7310b5814610625578063f2fde38b146105b2578063f474e258146101db5763fa461e33146100d9575f80fd5b346101d85760603660031901126101d8576024356004356044356001600160401b0381116101d6576101116060913690600401611b85565b90809291810103126101d65761012681611aa3565b92604061013560208401611aa3565b9201359362ffffff851685036101d2576001600160a01b03928316949216916101809085847f0000000000000000000000000000000000000000000000000000000000000000611df3565b336001600160a01b03909116036101c357848313156101a957506101a692503390611ea7565b80f35b9150508281136101b857505080f35b6101a6913390611ea7565b634b60273560e01b8552600485fd5b8580fd5b835b80fd5b50346101d85760a03660031901126101d8576101f5611a77565b6101fd611a8d565b6044356001600160a01b038116908190036101d657606435906084356001600160401b0381116101d257610235903690600401611b85565b60025491939092916001600160a01b03166105a357604051630972932760e21b81526001600160a01b039687166004820181905296602090829060249082907f0000000000000000000000000000000000000000000000000000000000000000165afa90811561054f578891610569575b501561055a57604051638da5cb5b60e01b81526020816004818b8b5af190811561054f578891610511575b506001600160a01b0316338190036105025782156104f357670de0b6b3a764000082116104e45787526005602090815260408089205f89815292529081902080546001600160a01b0319166001600160a01b038816179055519161033483611b25565b82526001600160401b039081166020808401918252878952600381526040808a209451855493516001600160e01b03199094166001600160a01b03919091161760a09390931b67ffffffffffffffff60a01b16929092179093558688526004909252908620929082116104d05781906103ad8454611ab7565b601f8111610480575b508690601f831160011461041b578792610410575b50508160011b915f199060031b1c19161790555b6001600160a01b0316907febc70f7c8d6a67b19e15e968cb908d21719e8ff9a778a71171fba931a618d0528380a380f35b013590505f806103cb565b84885260208820925090601f198416885b818110610468575090846001959493921061044f575b505050811b0190556103df565b01355f19600384901b60f8161c191690555f8080610442565b9193602060018192878701358155019501920161042c565b90915083875260208720601f840160051c810191602085106104c6575b90601f859493920160051c01905b8181106104b857506103b6565b8881558493506001016104ab565b909150819061049d565b634e487b7160e01b86526041600452602486fd5b632a9ffab760e21b8852600488fd5b634e46966960e11b8852600488fd5b6312272fd360e11b8852600488fd5b90506020813d602011610547575b8161052c60209383611b40565b810103126105435761053d90611c6f565b5f6102d1565b8780fd5b3d915061051f565b6040513d8a823e3d90fd5b630ea8370b60e41b8752600487fd5b90506020813d60201161059b575b8161058460209383611b40565b810103126105435761059590611d41565b5f6102a6565b3d9150610577565b63b5dfd9e560e01b8752600487fd5b50346101d85760203660031901126101d8576105cc611a77565b8154906105e3336001600160a01b03841614611c99565b6001600160a01b03166001600160a01b03199190911681178255337f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b50346101d85760203660031901126101d85760409081906001600160a01b0361064c611a77565b168152600360205220546001600160401b0382519160018060a01b038116835260a01c166020820152f35b50346101d85760203660031901126101d8576004356001600160401b038111610fe0576106a8903690600401611b85565b906106b1611cd4565b506002546001600160a01b03163303611202573383526003602052604083209080604051926106df84611b25565b546001600160a01b038116845260a01c6001600160401b0316602084019081529381010392608084126111fe57606061071783611aa3565b94601f1901126111fe576040519161072e83611b0a565b61073a60208201611aa3565b8084526040820135916001600160601b0383168303610543576060906020860193845201356001600160401b038116918282036110fb576001600160401b0391604087015260018060a01b0316935116106111ef576001600160601b039051166040519461014086018681106001600160401b038211176111db576040528686528660208701528660408701528660608701528660808701528660a08701528660c08701528660e08701528661010087015260606101208701526060916040516108048482611b40565b60028152601f1984013660208301376101208801526020870181905260405163133f757160e31b81526004810191909152610180816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561054f578890898a938a8c80928195611107575b50918160a062ffffff946001600160801b036101206108d19a9b960151981660e084015260020b91015260020b60c08d01521660408b01526108bf82611d91565b6001600160a01b039091169052611d70565b6001600160a01b03918216905261012087015160049160e0916108f390611d70565b511661094960018060a01b0361090d6101208c0151611d91565b51169160018060a01b039262ffffff60408d015116917f0000000000000000000000000000000000000000000000000000000000000000611df3565b1680895260405192838092633850c7bd851b82525afa801561054f5788918991611070575b5060020b60808801526001600160a01b0390811661010088015286516040516334324e9f60e21b81529160209183916004918391165afa90811561054f578891611036575b5060020b60608701526109cb61012087015151611d0f565b946001600160401b0360406109e08851611d0f565b960151166020880151604051906109f682611aef565b81526001600160801b03602082013081528160408401818152888501928284526040519563fc6f786560e01b875251600487015260018060a01b03905116602486015251166044840152511660648201526040816084818d60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af191821561102b578a918b93610fec575b50610a9d82610a978b611d70565b51611de6565b610aa68a611d70565b52610ab483610a978b611d91565b610abd8a611d91565b52805f1904808311820215670de0b6b3a76400000215610fe857610af0670de0b6b3a764000083850204610a978b611d70565b610af98a611d70565b528311810215670de0b6b3a76400000215610fe457670de0b6b3a7640000610b2791840204610a9789611d91565b610b3088611d91565b526101208901516001600160a01b0390610b4990611d70565b5116906040519081527ff3055bc8d92d9c8d2f12b45d112dd345cd2cfd17292b8d65c5642ac6f912dfd760203392a36101208801516001600160a01b0390610b9090611d91565b5116906040519081527ff3055bc8d92d9c8d2f12b45d112dd345cd2cfd17292b8d65c5642ac6f912dfd760203392a360018060a01b0390511693876020880151853b15610fe0576040519063095ea7b360e01b825233600483015260248201528181604481838a5af18015610fd557610fc0575b50929633861494851594508960015b8951821015610e3f578b90898b60018060a01b03610c36866101208a0151611da1565b511693610c438683611da1565b51610c4e878b611da1565b511015610e125750610c6291508490611da1565b51610c6d8488611da1565b518103908111610dfe579493928d9290918b90878e8d15610ddd57610c93868392611da1565b5233601452603481905263095ea7b360601b86526020866044601082885af13d156001885114171615610d8b575b50610cd190600195603452611d4e565b965b610cdd848a611da1565b51610d6a575b8a83610cef868c611da1565b51604051908152878060a01b038d16907f1b37fcc57f4b6029ca7b3a70af0104811f67c72fe73e8043575f03a01e05663160203392a4610d36575b50505001909192610c13565b6040519081527f9a20584dd4630e0091901c0ae29c3098e8672b1cb8c0dd8e99595536ae6e211f60203392a45f8a81610d2a565b610d86610d77858b611da1565b51868060a01b038c1685611ea7565b610ce3565b91509192938060345263095ea7b360601b8152386044601083875af1506034528d6020816044601082875af190516001143d15171615610dd057908a8e93925f610cc1565b633e3f8f738e526004601cfd5b85610df891610df36001999487899e979e611ea7565b611da1565b52610cd3565b634e487b7160e01b8e52601160045260248efd5b9081610df88760019795949a9998969a938c610e3983610e328185611da1565b5192611da1565b52611da1565b8b83858c938e60208301519161012084015196610e5a611cd4565b50610e6482611d0f565b96610e6e83611d0f565b986001610e7a85611d0f565b94610e8481611d0f565b978a610e8f8d611d70565b52610e998d611d70565b5281610ea487611d70565b526002610eb089611d70565b5211610f25575b505050906020939291610f219760405197610ed189611aef565b885285880152604087015285015201516040519081527ff7a40077ff7a04c7e61f6f26fb13774259ddf1b6bce9ecf26a8276cdd399268360203392a3604051918291602083526020830190611be5565b0390f35b93979492919690956001965b8851811015610fa857610f44818a611da1565b51610f52575b600101610f31565b96600190610fa0906001600160a01b03610f6c8b8a611da1565b5116610f78828b611da1565b52610f838a8c611da1565b51610f8e8288611da1565b5282610f9a8289611da1565b52611d4e565b979050610f4a565b5094979096509394509092915080610f216020610eb7565b81610fca91611b40565b61054357875f610c04565b6040513d84823e3d90fd5b5080fd5b8a80fd5b8b80fd5b915091506040813d604011611023575b8161100960409383611b40565b8101031261101f5760208151910151915f610a89565b8980fd5b3d9150610ffc565b6040513d8c823e3d90fd5b90506020813d602011611068575b8161105160209383611b40565b810103126105435761106290611db5565b5f6109b3565b3d9150611044565b91505060e0813d60e0116110ff575b8161108c60e09383611b40565b810103126105435780516001600160a01b03811681036110fb576110b260208301611db5565b916110bf60408201611dd7565b506110cb858201611dd7565b506110d860808201611dd7565b5060a081015160ff81160361101f5760c06110f39101611d41565b50905f61096e565b8880fd5b3d915061107f565b9650505050505050610180813d82116111d3575b816111296101809383611b40565b810103126105435780516001600160601b038116036105435761114e60208201611c6f565b5061115b60408201611c6f565b611166848301611c6f565b91608081015162ffffff81168103610fe45762ffffff6108d19361118c60a08501611db5565b908c60a061119c60c08801611db5565b926111c46101606111af60e08b01611dc3565b996111bd6101408201611dc3565b5001611dc3565b5098959394505091969561087e565b3d915061111b565b634e487b7160e01b88526041600452602488fd5b632a9ffab760e21b8652600486fd5b8480fd5b63f3f6425d60e01b8352600483fd5b50346101d85760203660031901126101d857600435801515809103610fe05781547f549bab54c75a364ce0e438a4fbf09df7e6b096bcc83a6f91065a0fc8e410b29a9160209161126b336001600160a01b03831614611c99565b60ff60a01b191660a082901b60ff60a01b16178455604051908152a180f35b50346101d857806003193601126101d857546040516001600160a01b039091168152602090f35b50346101d857806003193601126101d8576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50346101d857806003193601126101d8576001546001600160a01b0316330361137457805460ff8160a01c166113655760ff60a01b1916600160a01b178155604051600181527f549bab54c75a364ce0e438a4fbf09df7e6b096bcc83a6f91065a0fc8e410b29a90602090a180f35b6313d0ff5960e31b8252600482fd5b636570ecab60e11b8152600490fd5b50346101d857806003193601126101d85760ff6020915460a01c166040519015158152f35b50346101d857806003193601126101d8576001546040516001600160a01b039091168152602090f35b50346101d85760203660031901126101d8576113eb611a77565b6113ff60018060a01b038354163314611c99565b600180546001600160a01b0319166001600160a01b03929092169182179055337fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e9678380a380f35b50346101d85760803660031901126101d857611460611a77565b50611469611a8d565b506064356001600160401b038111610fe057611489903690600401611b85565b5050604051630a85bd0160e11b8152602090f35b50346101d85760403660031901126101d85760406114b9611a77565b916114c2611a8d565b6001600160a01b03938416825260056020908152929091209083165f9081529082526040908190205490519216825290f35b50346118895760803660031901126118895761150e611a77565b60603660231901126118895760ff5f5460a01c1661193657600254906001600160a01b038216611927576001600160a01b03166001600160a01b0319919091168117600255604051638da5cb5b60e01b81526020816004815f865af190811561187e575f916118ed575b506001600160a01b039081165f9081526005602090815260408083208584529091529020541633036118de576115ac611c83565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081169116036118cf576115e6611c83565b906044356001600160601b0381169283820361188957604051336020820152916001600160a01b03611616611a8d565b166040840152508360608301526064356001600160401b0381168091036118895760808301526080825261164b60a083611b40565b604080519490919061165d8387611b40565b60018652601f1983013660208801376040519061167a8483611b40565b60018252601f198401366020840137604051926116978585611b40565b60018452601f198501366020860137604051946116b48187611b40565b6001865261176598959493929190601f19013660208701376116d586611d70565b6001600160a01b0390911690526116eb82611d70565b5260016116f783611d70565b52600261170384611d70565b526040519361171185611aef565b845260208401526040830152606082015261172a611cd4565b6040519061173782611b0a565b6060825260208201905f825261177760408401915f835260405198899660a0602089015260c0880190611be5565b868103601f1901604088015290611be5565b91601f19858403016060860152606083019351936060845284518091526020608085019501905f5b81811061188d575050509160406118029492611810979451602084015251910152601f19848203016080850152606051808252806080602084015e5f828201602090810191909152601f909101601f191690910184810360a08601520190611b61565b03601f198101845283611b40565b803b15611889576118485f9291839260405194858094819362b9252f60e41b8352306004840152604060248401526044830190611b61565b03925af1801561187e5761186b575b50600280546001600160a01b031916905580f35b61187791505f90611b40565b5f5f611857565b6040513d5f823e3d90fd5b5f80fd5b825180516001600160a01b03168852602090810151818901528b98506040909701969092019160010161179f565b634e487b7160e01b5f52604160045260245ffd5b63ed5f09f160e01b5f5260045ffd5b6317fb43e560e31b5f5260045ffd5b90506020813d60201161191f575b8161190860209383611b40565b810103126118895761191990611c6f565b5f611578565b3d91506118fb565b63b5dfd9e560e01b5f5260045ffd5b6313d0ff5960e31b5f5260045ffd5b34611889576020366003190112611889576020611960611a77565b6040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169216919091148152f35b34611889576020366003190112611889576001600160a01b036119ba611a77565b165f52600460205260405f205f908054906119d482611ab7565b8085529160018116908115611a505750600114611a10575b610f21846119fc81860382611b40565b604051918291602083526020830190611b61565b5f90815260208120939250905b808210611a36575090915081016020016119fc826119ec565b919260018160209254838588010152019101909291611a1d565b60ff191660208087019190915292151560051b850190920192506119fc91508390506119ec565b600435906001600160a01b038216820361188957565b602435906001600160a01b038216820361188957565b35906001600160a01b038216820361188957565b90600182811c92168015611ae5575b6020831014611ad157565b634e487b7160e01b5f52602260045260245ffd5b91607f1691611ac6565b608081019081106001600160401b038211176118bb57604052565b606081019081106001600160401b038211176118bb57604052565b604081019081106001600160401b038211176118bb57604052565b90601f801991011681019081106001600160401b038211176118bb57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9181601f84011215611889578235916001600160401b038311611889576020838186019501011161188957565b90602080835192838152019201905f5b818110611bcf5750505090565b8251845260209384019390920191600101611bc2565b80516080808452815190840181905260a08401949391602001905f5b818110611c50575050506060611c3c611c2a611c4d959660208601518582036020870152611bb2565b60408501518482036040860152611bb2565b920151906060818403910152611bb2565b90565b82516001600160a01b0316875260209687019690920191600101611c01565b51906001600160a01b038216820361188957565b6024356001600160a01b03811681036118895790565b15611ca057565b60405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606490fd5b60405190611ce182611aef565b606080838181528160208201528160408201520152565b6001600160401b0381116118bb5760051b60200190565b90611d1982611cf8565b611d266040519182611b40565b8281528092611d37601f1991611cf8565b0190602036910137565b5190811515820361188957565b5f198114611d5c5760010190565b634e487b7160e01b5f52601160045260245ffd5b805115611d7d5760200190565b634e487b7160e01b5f52603260045260245ffd5b805160011015611d7d5760400190565b8051821015611d7d5760209160051b010190565b51908160020b820361188957565b51906001600160801b038216820361188957565b519061ffff8216820361188957565b91908201809211611d5c57565b926001600160a01b039182169290911690818310156118895762ffffff906040519260208401948552604084015216606082015260608152611e36608082611b40565b5190209060405191602083019160ff60f81b83526001600160601b03199060601b16602184015260358301527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54605583015260558252611e97607583611b40565b905190206001600160a01b031690565b60405163a9059cbb60e01b81526001600160a01b03909216600483015260248201929092526020915f9160449183905af13d15601f3d1160015f511416171615611eed57565b60405162461bcd60e51b815260206004820152600f60248201526e1514905394d1915497d19052531151608a1b6044820152606490fdfea26469706673582212208e7ea5c1230de025d57d792fb70d65bc3d7fa93988cbfaee53eb39cf38e553f864736f6c634300081d0033000000000000000000000000b4d72b1c91e640e4ed7d7397f3244de4d8acc50b000000000000000000000000da14fdd72345c4d2511357214c5b89a919768e5900000000000000000000000003a520b32c04bf3beef7beb72e919cf822ed34f100000000000000000000000033128a8fc17869897dce68ed026d694621f6fdfd