26 txs
152 calls
constructor
constructor(address arcadiaFactory, address positionManager, address uniswapV3Factory)
functions
accountInfo
viewfunction accountInfo(address account) view returns (address feeRecipient, uint64 maxClaimFee)
accountToInitiator
viewfunction accountToInitiator(address owner, address account) view returns (address initiator)
ARCADIA_FACTORY
viewfunction ARCADIA_FACTORY() 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)
claim
nonpayablefunction claim(address account_, tuple initiatorParams)
executeAction
nonpayablefunction executeAction(bytes actionTargetData) returns (tuple depositData)
setAccountInfo
nonpayablefunction setAccountInfo(address account_, address initiator, address feeRecipient, uint256 maxClaimFee, bytes metaData_)
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)
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()
OnlyPool
error OnlyPool()
Reentered
error Reentered()
creation bytecode
0x60e060405234801561000f575f5ffd5b506040516126bf3803806126bf83398101604081905261002e91610066565b6001600160a01b0392831660805290821660a0521660c0526100a6565b80516001600160a01b0381168114610061575f5ffd5b919050565b5f5f5f60608486031215610078575f5ffd5b6100818461004b565b925061008f6020850161004b565b915061009d6040850161004b565b90509250925092565b60805160a05160c0516125d46100eb5f395f81816109df0152610f8f01525f818160d801528181610e7e015261115601525f81816101b5015261077f01526125d45ff3fe608060405234801561000f575f5ffd5b506004361061009b575f3560e01c80638cffa277116100635780638cffa277146101b0578063a129568d146101d7578063a7310b58146101f7578063f474e25814610258578063fa461e331461026b575f5ffd5b80630686ddd91461009f5780630a73e391146100c85780630ede59ba146101185780631204f5251461012d578063150b7a0214610178575b5f5ffd5b6100b26100ad366004611bb6565b61027e565b6040516100bf9190611c06565b60405180910390f35b6101086100d6366004611bb6565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161490565b60405190151581526020016100bf565b61012b610126366004611c18565b610315565b005b61016061013b366004611c56565b600360209081525f92835260408084209091529082529020546001600160a01b031681565b6040516001600160a01b0390911681526020016100bf565b610197610186366004611cd1565b630a85bd0160e11b95945050505050565b6040516001600160e01b031990911681526020016100bf565b6101607f000000000000000000000000000000000000000000000000000000000000000081565b6101ea6101e5366004611d3e565b610501565b6040516100bf9190611e56565b610231610205366004611bb6565b60016020525f90815260409020546001600160a01b03811690600160a01b90046001600160401b031682565b604080516001600160a01b0390931683526001600160401b039091166020830152016100bf565b61012b610266366004611e68565b610737565b61012b610279366004611ee7565b6109c3565b60026020525f90815260409020805461029690611f35565b80601f01602080910402602001604051908101604052809291908181526020018280546102c290611f35565b801561030d5780601f106102e45761010080835404028352916020019161030d565b820191905f5260205f20905b8154815290600101906020018083116102f057829003601f168201915b505050505081565b5f546001600160a01b03161561033e5760405163b5dfd9e560e01b815260040160405180910390fd5b336001600160a01b031660035f846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610388573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103ac9190611f6d565b6001600160a01b03908116825260208083019390935260409182015f908120878316825290935291205416146103f5576040516317fb43e560e31b815260040160405180910390fd5b6104056100d66020830183611bb6565b6104225760405163ed5f09f160e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b03841617815561049061044c6020840184611bb6565b61045c6040850160208601611f9c565b6001600160601b03165f5f5f5f338960405160200161047c929190611fd2565b604051602081830303815290604052610a73565b60405162b9252f60e41b81529091506001600160a01b03841690630b9252f0906104c0903090859060040161203c565b5f604051808303815f87803b1580156104d7575f5ffd5b505af11580156104e9573d5f5f3e3d5ffd5b50505f80546001600160a01b03191690555050505050565b61052c6040518060800160405280606081526020016060815260200160608152602001606081525090565b5f546001600160a01b031633146105565760405163f3f6425d60e01b815260040160405180910390fd5b335f9081526001602090815260408083208151808301909252546001600160a01b0381168252600160a01b90046001600160401b03169181019190915290806105a18686018761207b565b915091505f815f0151905083602001516001600160401b031682604001516001600160401b031611156105e757604051632a9ffab760e21b815260040160405180910390fd5b5f6105ff8284602001516001600160601b0316610def565b90505f816101200151516001600160401b0381111561062057610620612067565b604051908082528060200260200182016040528015610649578160200160208202803683370190505b5090505f81516001600160401b0381111561066657610666612067565b60405190808252806020026020018201604052801561068f578160200160208202803683370190505b5090506106ac8282868689604001516001600160401b03166110ea565b5f6106be87848488888d5f015161137a565b90506106d685856020015186610120015186856116b5565b9850846001600160a01b0316336001600160a01b03167ff7a40077ff7a04c7e61f6f26fb13774259ddf1b6bce9ecf26a8276cdd3992683866020015160405161072191815260200190565b60405180910390a3505050505050505092915050565b5f546001600160a01b0316156107605760405163b5dfd9e560e01b815260040160405180910390fd5b604051630972932760e21b81526001600160a01b0387811660048301527f000000000000000000000000000000000000000000000000000000000000000016906325ca4c9c90602401602060405180830381865afa1580156107c4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e8919061211f565b61080557604051630ea8370b60e41b815260040160405180910390fd5b5f866001600160a01b0316638da5cb5b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610843573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108679190611f6d565b9050336001600160a01b03821614610892576040516312272fd360e11b815260040160405180910390fd5b6001600160a01b0385166108b957604051634e46966960e11b815260040160405180910390fd5b670de0b6b3a76400008411156108e257604051632a9ffab760e21b815260040160405180910390fd5b6001600160a01b038082165f9081526003602090815260408083208b85168085529083528184208054868d166001600160a01b0319909116179055815180830183528a861681526001600160401b03808b1682860190815292865260018552838620915182549351909116600160a01b026001600160e01b0319909316961695909517179093556002905220610979838583612183565b50856001600160a01b0316876001600160a01b03167febc70f7c8d6a67b19e15e968cb908d21719e8ff9a778a71171fba931a618d05260405160405180910390a350505050505050565b5f80806109d28486018661224c565b9194509250905033610a067f00000000000000000000000000000000000000000000000000000000000000008585856119a1565b6001600160a01b031614610a2d57604051634b60273560e01b815260040160405180910390fd5b5f871315610a4e57610a496001600160a01b0384163389611a88565b610a6a565b5f861315610a6a57610a6a6001600160a01b0383163388611a88565b50505050505050565b606060018415610a8b5780610a87816122a8565b9150505b8315610a9f5780610a9b816122a8565b9150505b5f816001600160401b03811115610ab857610ab8612067565b604051908082528060200260200182016040528015610ae1578160200160208202803683370190505b5090505f826001600160401b03811115610afd57610afd612067565b604051908082528060200260200182016040528015610b26578160200160208202803683370190505b5090505f836001600160401b03811115610b4257610b42612067565b604051908082528060200260200182016040528015610b6b578160200160208202803683370190505b5090505f846001600160401b03811115610b8757610b87612067565b604051908082528060200260200182016040528015610bb0578160200160208202803683370190505b5090508c845f81518110610bc657610bc66122c0565b60200260200101906001600160a01b031690816001600160a01b0316815250508b835f81518110610bf957610bf96122c0565b6020026020010181815250506001825f81518110610c1957610c196122c0565b6020026020010181815250506002815f81518110610c3957610c396122c0565b602090810291909101015260018915610cc4578b85600181518110610c6057610c606122c0565b60200260200101906001600160a01b031690816001600160a01b0316815250508983600181518110610c9457610c946122c0565b602002602001018181525050600182600181518110610cb557610cb56122c0565b60209081029190910101525060025b8815610d3d578a858281518110610cdd57610cdd6122c0565b60200260200101906001600160a01b031690816001600160a01b03168152505088838281518110610d1057610d106122c0565b6020026020010181815250506001828281518110610d3057610d306122c0565b6020026020010181815250505b5f60405180608001604052808781526020018681526020018581526020018481525090506060610d8e6040518060800160405280606081526020016060815260200160608152602001606081525090565b610db06040518060600160405280606081526020015f81526020015f81525090565b838282858f604051602001610dc99594939291906122d4565b6040516020818303038152906040529a5050505050505050505050979650505050505050565b60408051610140810182525f808252602080830182905282840182905260608084018390526080840183905260a0840183905260c0840183905260e08401839052610100840192909252610120830182905283516002808252928101855292939083019080368337019050506101208201526020810182905260405163133f757160e31b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906399fbab889060240161018060405180830381865afa158015610ecc573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef091906123c6565b5050506101208a0151805197995095975093959294919350915f90610f1757610f176122c0565b60200260200101876101200151600181518110610f3657610f366122c0565b6001600160801b0390931660e08a0152600293840b60a08a01529390920b60c088015262ffffff90931660408701526001600160a01b0393841660209384029290920190920152911690526101208101518051610fef917f0000000000000000000000000000000000000000000000000000000000000000915f90610fbd57610fbd6122c0565b6020026020010151836101200151600181518110610fdd57610fdd6122c0565b602002602001015184604001516119a1565b6001600160a01b031680825260408051633850c7bd60e01b81529051633850c7bd9160048082019260e0929091908290030181865afa158015611034573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061105891906124ad565b5050505060029190910b6080840152506001600160a01b039081166101008301528151604080516334324e9f60e21b81529051919092169163d0c93a7c9160048083019260209291908290030181865afa1580156110b8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110dc9190612537565b60020b606082015292915050565b604080516080810182526020848101518252309082019081526001600160801b0382840181815260608401828152945163fc6f786560e01b81529351600485015291516001600160a01b039081166024850152915181166044840152925190921660648201525f9182917f00000000000000000000000000000000000000000000000000000000000000009091169063fc6f78659060840160408051808303815f875af115801561119d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111c19190612550565b9150915081875f815181106111d8576111d86122c0565b602002602001018181516111ec9190612572565b9052508651819088906001908110611206576112066122c0565b6020026020010181815161121a9190612572565b9052506112308284670de0b6b3a7640000611b0f565b865f81518110611242576112426122c0565b602002602001018181516112569190612572565b90525061126c8184670de0b6b3a7640000611b0f565b8660018151811061127f5761127f6122c0565b602002602001018181516112939190612572565b90525061012084015180515f906112ac576112ac6122c0565b60200260200101516001600160a01b0316336001600160a01b03167ff3055bc8d92d9c8d2f12b45d112dd345cd2cfd17292b8d65c5642ac6f912dfd7846040516112f891815260200190565b60405180910390a3836101200151600181518110611318576113186122c0565b60200260200101516001600160a01b0316336001600160a01b03167ff3055bc8d92d9c8d2f12b45d112dd345cd2cfd17292b8d65c5642ac6f912dfd78360405161136491815260200190565b60405180910390a350505050505050565b505050565b602082015160405163095ea7b360e01b815233600482015260248101919091525f906001600160a01b0385169063095ea7b3906044015f604051808303815f87803b1580156113c7575f5ffd5b505af11580156113d9573d5f5f3e3d5ffd5b50505050600190505f5f5f5b88518110156116a8578561012001518181518110611405576114056122c0565b60200260200101519250878181518110611421576114216122c0565b602002602001015189828151811061143b5761143b6122c0565b602002602001015111156115155787818151811061145b5761145b6122c0565b6020026020010151898281518110611475576114756122c0565b6020026020010151611487919061258b565b9150336001600160a01b038616036114dd57818982815181106114ac576114ac6122c0565b60209081029190910101526114cb6001600160a01b0384163384611b2a565b836114d5816122a8565b945050611570565b6114f16001600160a01b0384168684611a88565b5f898281518110611504576115046122c0565b602002602001018181525050611570565b5f915088818151811061152a5761152a6122c0565b6020026020010151888281518110611544576115446122c0565b6020026020010181815250505f898281518110611563576115636122c0565b6020026020010181815250505b5f888281518110611583576115836122c0565b602002602001015111156115c8576115c88a8983815181106115a7576115a76122c0565b6020026020010151856001600160a01b0316611a889092919063ffffffff16565b826001600160a01b03168a6001600160a01b0316336001600160a01b03167f1b37fcc57f4b6029ca7b3a70af0104811f67c72fe73e8043575f03a01e0566318b8581518110611619576116196122c0565b602002602001015160405161163091815260200190565b60405180910390a46001600160a01b03851633146116a057826001600160a01b0316856001600160a01b0316336001600160a01b03167f9a20584dd4630e0091901c0ae29c3098e8672b1cb8c0dd8e99595536ae6e211f8560405161169791815260200190565b60405180910390a45b6001016113e5565b5050509695505050505050565b6116e06040518060800160405280606081526020016060815260200160608152602001606081525090565b5f826001600160401b038111156116f9576116f9612067565b604051908082528060200260200182016040528015611722578160200160208202803683370190505b5090505f836001600160401b0381111561173e5761173e612067565b604051908082528060200260200182016040528015611767578160200160208202803683370190505b5090505f846001600160401b0381111561178357611783612067565b6040519080825280602002602001820160405280156117ac578160200160208202803683370190505b5090505f856001600160401b038111156117c8576117c8612067565b6040519080825280602002602001820160405280156117f1578160200160208202803683370190505b50905089845f81518110611807576118076122c0565b60200260200101906001600160a01b031690816001600160a01b03168152505088835f8151811061183a5761183a6122c0565b6020026020010181815250506001825f8151811061185a5761185a6122c0565b6020026020010181815250506002815f8151811061187a5761187a6122c0565b60200260200101818152505060018611156119795760015f5b8851811015611976575f8982815181106118af576118af6122c0565b6020026020010151111561196e578981815181106118cf576118cf6122c0565b60200260200101518683815181106118e9576118e96122c0565b60200260200101906001600160a01b031690816001600160a01b03168152505088818151811061191b5761191b6122c0565b6020026020010151848381518110611935576119356122c0565b6020026020010181815250506001838381518110611955576119556122c0565b60209081029190910101528161196a816122a8565b9250505b600101611893565b50505b6040805160808101825294855260208501939093529183015260608201529695505050505050565b5f826001600160a01b0316846001600160a01b0316106119bf575f5ffd5b604080516001600160a01b03808716602083015285169181019190915262ffffff83166060820152859060800160408051601f19818403018152908290528051602091820120611a67939290917fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5491016001600160f81b0319815260609390931b6bffffffffffffffffffffffff191660018401526015830191909152603582015260550190565b60408051601f19818403018152919052805160209091012095945050505050565b5f60405163a9059cbb60e01b81526001600160a01b038416600482015282602482015260205f6044835f895af13d15601f3d1160015f511416171691505080611b095760405162461bcd60e51b815260206004820152600f60248201526e1514905394d1915497d19052531151608a1b604482015260640160405180910390fd5b50505050565b5f825f190484118302158202611b23575f5ffd5b5091020490565b816014528060345263095ea7b360601b5f5260205f604460105f875af13d1560015f51141716611b96575f60345263095ea7b360601b5f525f38604460105f875af1508060345260205f604460105f875af13d1560015f51141716611b9657633e3f8f735f526004601cfd5b5f603452505050565b6001600160a01b0381168114611bb3575f5ffd5b50565b5f60208284031215611bc6575f5ffd5b8135611bd181611b9f565b9392505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f611bd16020830184611bd8565b5f5f8284036080811215611c2a575f5ffd5b8335611c3581611b9f565b92506060601f1982011215611c48575f5ffd5b506020830190509250929050565b5f5f60408385031215611c67575f5ffd5b8235611c7281611b9f565b91506020830135611c8281611b9f565b809150509250929050565b5f5f83601f840112611c9d575f5ffd5b5081356001600160401b03811115611cb3575f5ffd5b602083019150836020828501011115611cca575f5ffd5b9250929050565b5f5f5f5f5f60808688031215611ce5575f5ffd5b8535611cf081611b9f565b94506020860135611d0081611b9f565b93506040860135925060608601356001600160401b03811115611d21575f5ffd5b611d2d88828901611c8d565b969995985093965092949392505050565b5f5f60208385031215611d4f575f5ffd5b82356001600160401b03811115611d64575f5ffd5b611d7085828601611c8d565b90969095509350505050565b5f8151808452602084019350602083015f5b82811015611dac578151865260209586019590910190600101611d8e565b5093949350505050565b8051608080845281519084018190525f9160200190829060a08601905b80831015611dfe5783516001600160a01b031682526020938401936001939093019290910190611dd3565b50602085015192508581036020870152611e188184611d7c565b9250505060408301518482036040860152611e338282611d7c565b91505060608301518482036060860152611e4d8282611d7c565b95945050505050565b602081525f611bd16020830184611db6565b5f5f5f5f5f5f60a08789031215611e7d575f5ffd5b8635611e8881611b9f565b95506020870135611e9881611b9f565b94506040870135611ea881611b9f565b93506060870135925060808701356001600160401b03811115611ec9575f5ffd5b611ed589828a01611c8d565b979a9699509497509295939492505050565b5f5f5f5f60608587031215611efa575f5ffd5b843593506020850135925060408501356001600160401b03811115611f1d575f5ffd5b611f2987828801611c8d565b95989497509550505050565b600181811c90821680611f4957607f821691505b602082108103611f6757634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611f7d575f5ffd5b8151611bd181611b9f565b6001600160601b0381168114611bb3575f5ffd5b5f60208284031215611fac575f5ffd5b8135611bd181611f88565b80356001600160401b0381168114611fcd575f5ffd5b919050565b6001600160a01b0383168152608081018235611fed81611b9f565b6001600160a01b031660208381019190915283013561200b81611f88565b6001600160601b0381166040840152506001600160401b0361202f60408501611fb7565b1660608301529392505050565b6001600160a01b03831681526040602082018190525f9061205f90830184611bd8565b949350505050565b634e487b7160e01b5f52604160045260245ffd5b5f5f828403608081121561208d575f5ffd5b833561209881611b9f565b92506060601f19820112156120ab575f5ffd5b50604051606081018181106001600160401b03821117156120ce576120ce612067565b60405260208401356120df81611b9f565b815260408401356120ef81611f88565b602082015261210060608501611fb7565b6040820152809150509250929050565b80518015158114611fcd575f5ffd5b5f6020828403121561212f575f5ffd5b611bd182612110565b601f82111561137557805f5260205f20601f840160051c8101602085101561215d5750805b601f840160051c820191505b8181101561217c575f8155600101612169565b5050505050565b6001600160401b0383111561219a5761219a612067565b6121ae836121a88354611f35565b83612138565b5f601f8411600181146121df575f85156121c85750838201355b5f19600387901b1c1916600186901b17835561217c565b5f83815260208120601f198716915b8281101561220e57868501358255602094850194600190920191016121ee565b508682101561222a575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b62ffffff81168114611bb3575f5ffd5b5f5f5f6060848603121561225e575f5ffd5b833561226981611b9f565b9250602084013561227981611b9f565b915060408401356122898161223c565b809150509250925092565b634e487b7160e01b5f52601160045260245ffd5b5f600182016122b9576122b9612294565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b60a081525f6122e660a0830188611db6565b82810360208401526122f88188611db6565b8381036040850152865160608083528151908301819052919250602001905f9060808401905b8083101561235557835180516001600160a01b0316835260209081015181840152909301926001929092019160409091019061231e565b506020890151602085015260408901516040850152858103606087015261237c8189611bd8565b935050505082810360808401526123938185611bd8565b98975050505050505050565b8051600281900b8114611fcd575f5ffd5b80516001600160801b0381168114611fcd575f5ffd5b5f5f5f5f5f5f5f5f5f5f5f5f6101808d8f0312156123e2575f5ffd5b8c516123ed81611f88565b60208e0151909c506123fe81611b9f565b60408e0151909b5061240f81611b9f565b60608e0151909a5061242081611b9f565b60808e01519099506124318161223c565b975061243f60a08e0161239f565b965061244d60c08e0161239f565b955061245b60e08e016123b0565b6101008e01516101208f01519196509450925061247b6101408e016123b0565b915061248a6101608e016123b0565b90509295989b509295989b509295989b565b805161ffff81168114611fcd575f5ffd5b5f5f5f5f5f5f5f60e0888a0312156124c3575f5ffd5b87516124ce81611b9f565b96506124dc6020890161239f565b95506124ea6040890161249c565b94506124f86060890161249c565b93506125066080890161249c565b925060a088015160ff8116811461251b575f5ffd5b915061252960c08901612110565b905092959891949750929550565b5f60208284031215612547575f5ffd5b611bd18261239f565b5f5f60408385031215612561575f5ffd5b505080516020909101519092909150565b8082018082111561258557612585612294565b92915050565b818103818111156125855761258561229456fea2646970667358221220dc395a01ba7f1af8dd98dbf3ee3181d17ab9b106f298d055bfbf1a25f91285ce64736f6c634300081d0033000000000000000000000000da14fdd72345c4d2511357214c5b89a919768e5900000000000000000000000003a520b32c04bf3beef7beb72e919cf822ed34f100000000000000000000000033128a8fc17869897dce68ed026d694621f6fdfd