25 txs
43 calls
constructor
constructor(address _owner, address _auth, address _queue)
functions
authority
viewfunction authority() view returns (address)
owner
viewfunction owner() view returns (address)
boringRedeemMintSelfSolve
nonpayablefunction boringRedeemMintSelfSolve(tuple request, address fromTeller, address toTeller, address intermediateAsset)
boringRedeemMintSolve
nonpayablefunction boringRedeemMintSolve(tuple[] requests, address fromTeller, address toTeller, address intermediateAsset, bool coverDeficit)
boringRedeemSelfSolve
nonpayablefunction boringRedeemSelfSolve(tuple request, address teller)
boringRedeemSolve
nonpayablefunction boringRedeemSolve(tuple[] requests, address teller, bool coverDeficit)
boringSolve
nonpayablefunction boringSolve(address initiator, address boringVault, address solveAsset, uint256 totalShares, uint256 requiredAssets, bytes solveData)
multicall
nonpayablefunction multicall(bytes[] data) returns (bytes[] results)
rescueTokens
nonpayablefunction rescueTokens(address token, uint256 amount)
setAuthority
nonpayablefunction setAuthority(address newAuthority)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
AuthorityUpdated
event AuthorityUpdated(address indexed user, address indexed newAuthority)
OwnershipTransferred
event OwnershipTransferred(address indexed user, address indexed newOwner)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
BoringSolver___BoringVaultTellerMismatch
error BoringSolver___BoringVaultTellerMismatch(address boringVault, address teller)
BoringSolver___CannotCoverDeficit
error BoringSolver___CannotCoverDeficit(uint256 deficit)
BoringSolver___FailedToSolve
error BoringSolver___FailedToSolve()
BoringSolver___OnlyQueue
error BoringSolver___OnlyQueue()
BoringSolver___OnlySelf
error BoringSolver___OnlySelf()
BoringSolver___WrongInitiator
error BoringSolver___WrongInitiator()
FailedInnerCall
error FailedInnerCall()
creation bytecode
0x60a060405234801562000010575f80fd5b506040516200215f3803806200215f8339810160408190526200003391620000f5565b5f80546001600160a01b03199081166001600160a01b0386811691821784556001805490931690861617909155604051859285929133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36040516001600160a01b0382169033907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b76389980198905f90a350506001600160a01b0316608052506200013c9050565b80516001600160a01b0381168114620000f0575f80fd5b919050565b5f805f6060848603121562000108575f80fd5b6200011384620000d9565b92506200012360208501620000d9565b91506200013360408501620000d9565b90509250925092565b608051611fd9620001865f395f81816102dc015281816103870152818161057b015281816107cf015281816109a701528181610d930152818161107301526112210152611fd95ff3fe608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638da5cb5b1161006e5780638da5cb5b1461010b5780638f3866081461013a578063ac9650d81461014d578063bc9961f71461016d578063bf7e214f14610180578063f2fde38b14610193575f80fd5b806357376198146100aa5780635ff8a71f146100bf57806367aa0416146100d257806372faf4a4146100e55780637a9e5e4b146100f8575b5f80fd5b6100bd6100b83660046114e0565b6101a6565b005b6100bd6100cd36600461156f565b610269565b6100bd6100e03660046115d3565b61034b565b6100bd6100f336600461169f565b610472565b6100bd6101063660046116d7565b6105dd565b5f5461011d906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100bd6101483660046116f2565b6106c1565b61016061015b366004611743565b61083d565b60405161013191906117ff565b6100bd61017b36600461185f565b61092f565b60015461011d906001600160a01b031681565b6100bd6101a13660046116d7565b610a18565b6101bb335f356001600160e01b031916610a93565b6101e05760405162461bcd60e51b81526004016101d7906118e8565b60405180910390fd5b5f198103610251576040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa15801561022a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061024e919061190e565b90505b6102656001600160a01b0383163383610b39565b5050565b61027e335f356001600160e01b031916610a93565b61029a5760405162461bcd60e51b81526004016101d7906118e8565b5f8033846001856040516020016102b5959493929190611959565b60408051601f19818403018152908290526310498e3760e21b825291506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063412638dc906103179088908890869030906004016119ea565b5f604051808303815f87803b15801561032e575f80fd5b505af1158015610340573d5f803e3d5ffd5b505050505050505050565b610360335f356001600160e01b031916610a93565b61037c5760405162461bcd60e51b81526004016101d7906118e8565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146103c5576040516337aab0fd60e11b815260040160405180910390fd5b6001600160a01b03871630146103ee5760405163702093cb60e11b815260040160405180910390fd5b5f6103fb82840184611b17565b90505f81600181111561041057610410611925565b0361042857610423838389898989610bbc565b610468565b600181600181111561043c5761043c611925565b0361044f57610423838389898989610dc6565b6040516336ad3b5560e21b815260040160405180910390fd5b5050505050505050565b610487335f356001600160e01b031916610a93565b6104a35760405162461bcd60e51b81526004016101d7906118e8565b336104b460408401602085016116d7565b6001600160a01b0316146104db576040516303279bc360e41b815260040160405180910390fd5b6040805160018082528183019092525f91816020015b6104f9611489565b8152602001906001900390816104f157905050905061051d36849003840184611b44565b815f8151811061052f5761052f611c13565b60200260200101819052505f8033845f80604051602001610554959493929190611959565b60408051601f19818403018152908290526310498e3760e21b825291506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063412638dc906105b490859085903090600401611c27565b5f604051808303815f87803b1580156105cb575f80fd5b505af1158015610468573d5f803e3d5ffd5b5f546001600160a01b031633148061066e575060015460405163b700961360e01b81526001600160a01b039091169063b70096139061062f90339030906001600160e01b03195f351690600401611d09565b602060405180830381865afa15801561064a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061066e9190611d36565b610676575f80fd5b600180546001600160a01b0319166001600160a01b03831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b76389980198905f90a350565b6106d6335f356001600160e01b031916610a93565b6106f25760405162461bcd60e51b81526004016101d7906118e8565b3361070360408601602087016116d7565b6001600160a01b03161461072a576040516303279bc360e41b815260040160405180910390fd5b6040805160018082528183019092525f91816020015b610748611489565b81526020019060019003908161074057905050905061076c36869003860186611b44565b815f8151811061077e5761077e611c13565b60200260200101819052505f6001338686865f806040516020016107a89796959493929190611d51565b60408051601f19818403018152908290526310498e3760e21b825291506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063412638dc9061080890859085903090600401611c27565b5f604051808303815f87803b15801561081f575f80fd5b505af1158015610831573d5f803e3d5ffd5b50505050505050505050565b604080515f8152602081019091526060908267ffffffffffffffff81111561086757610867611b30565b60405190808252806020026020018201604052801561089a57816020015b60608152602001906001900390816108855790505b5091505f5b83811015610926576108f6308686848181106108bd576108bd611c13565b90506020028101906108cf9190611dc8565b856040516020016108e293929190611e0b565b604051602081830303815290604052611255565b83828151811061090857610908611c13565b6020026020010181905250808061091e90611e30565b91505061089f565b50505b92915050565b610944335f356001600160e01b031916610a93565b6109605760405162461bcd60e51b81526004016101d7906118e8565b5f6001338686866001876040516020016109809796959493929190611d51565b60408051601f19818403018152908290526310498e3760e21b825291506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063412638dc906109e2908a908a90869030906004016119ea565b5f604051808303815f87803b1580156109f9575f80fd5b505af1158015610a0b573d5f803e3d5ffd5b5050505050505050505050565b610a2d335f356001600160e01b031916610a93565b610a495760405162461bcd60e51b81526004016101d7906118e8565b5f80546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001545f906001600160a01b03168015801590610b1a575060405163b700961360e01b81526001600160a01b0382169063b700961390610adb90879030908890600401611d09565b602060405180830381865afa158015610af6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b1a9190611d36565b80610b3157505f546001600160a01b038581169116145b949350505050565b5f60405163a9059cbb60e01b81526001600160a01b038416600482015282602482015260205f6044835f895af13d15601f3d1160015f511416171691505080610bb65760405162461bcd60e51b815260206004820152600f60248201526e1514905394d1915497d19052531151608a1b60448201526064016101d7565b50505050565b5f808080610bcc898b018b611e48565b945094509450945050826001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c359190611eb3565b6001600160a01b0316886001600160a01b031614610c7957604051631469fe1360e21b81526001600160a01b03808a166004830152841660248201526044016101d7565b604051633e64ce9960e01b815287905f906001600160a01b03861690633e64ce9990610caf9085908c9086903090600401611ece565b6020604051808303815f875af1158015610ccb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cef919061190e565b905086811115610d31578315610d2357610d1e86610d0d8984611db5565b6001600160a01b0385169190610b39565b610d84565b610d1e8a610d0d8984611db5565b86811015610d84575f610d448289611db5565b90508315610d6657610d616001600160a01b0384168830846112c7565b610d82565b60405163c2fceaf960e01b8152600481018290526024016101d7565b505b610db86001600160a01b0383167f00000000000000000000000000000000000000000000000000000000000000008961135f565b505050505050505050505050565b5f8080808080610dd88b8d018d611ef9565b96509650965096509650965050846001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e21573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e459190611eb3565b6001600160a01b03168a6001600160a01b031614610e8957604051631469fe1360e21b81526001600160a01b03808c166004830152861660248201526044016101d7565b836001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ec5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee99190611eb3565b6001600160a01b0316896001600160a01b031614610f2d57604051631469fe1360e21b81526001600160a01b03808b166004830152851660248201526044016101d7565b604051633e64ce9960e01b81525f906001600160a01b03871690633e64ce9990610f619087908d9086903090600401611ece565b6020604051808303815f875af1158015610f7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa1919061190e565b90505f6110f9866001600160a01b0316634fb3ccc56040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fe3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110079190611eb3565b604051634104b9ed60e11b81526001600160a01b038881166004830152919091169063820973da90602401602060405180830381865afa15801561104d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611071919061190e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b7d122b56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f1919061190e565b8b91906113db565b9050808211156111145761110d8183611db5565b9150611151565b8082101561114d575f6111278383611db5565b90508315610d66576111446001600160a01b0387168a30846112c7565b5f925050611151565b5f91505b6111656001600160a01b0386168c8361135f565b6040516304eaba2160e51b81526001600160a01b03871690639d5744209061119790889085908e903090600401611ece565b6020604051808303815f875af11580156111b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d7919061190e565b505080156112125782156111fe576111f96001600160a01b0385168883610b39565b611212565b6112126001600160a01b0385168c83610b39565b6112466001600160a01b038b167f00000000000000000000000000000000000000000000000000000000000000008a61135f565b50505050505050505050505050565b60605f80846001600160a01b0316846040516112719190611f88565b5f60405180830381855af49150503d805f81146112a9576040519150601f19603f3d011682016040523d82523d5f602084013e6112ae565b606091505b50915091506112be8583836113fe565b95945050505050565b5f6040516323b872dd60e01b81526001600160a01b03851660048201526001600160a01b038416602482015282604482015260205f6064835f8a5af13d15601f3d1160015f5114161716915050806113585760405162461bcd60e51b81526020600482015260146024820152731514905394d1915497d19493d357d1905253115160621b60448201526064016101d7565b5050505050565b5f60405163095ea7b360e01b81526001600160a01b038416600482015282602482015260205f6044835f895af13d15601f3d1160015f511416171691505080610bb65760405162461bcd60e51b815260206004820152600e60248201526d1054141493d59157d1905253115160921b60448201526064016101d7565b5f825f1904841183021582026113ef575f80fd5b50910281810615159190040190565b6060826114135761140e8261145d565b611456565b815115801561142a57506001600160a01b0384163b155b1561145357604051639996b31560e01b81526001600160a01b03851660048201526024016101d7565b50805b9392505050565b80511561146d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b60408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b6001600160a01b0381168114611486575f80fd5b5f80604083850312156114f1575f80fd5b82356114fc816114cc565b946020939093013593505050565b5f8083601f84011261151a575f80fd5b50813567ffffffffffffffff811115611531575f80fd5b6020830191508360208260081b850101111561154b575f80fd5b9250929050565b803561155d816114cc565b919050565b8015158114611486575f80fd5b5f805f8060608587031215611582575f80fd5b843567ffffffffffffffff811115611598575f80fd5b6115a48782880161150a565b90955093505060208501356115b8816114cc565b915060408501356115c881611562565b939692955090935050565b5f805f805f805f60c0888a0312156115e9575f80fd5b87356115f4816114cc565b96506020880135611604816114cc565b95506040880135611614816114cc565b9450606088013593506080880135925060a088013567ffffffffffffffff8082111561163e575f80fd5b818a0191508a601f830112611651575f80fd5b81358181111561165f575f80fd5b8b6020828501011115611670575f80fd5b60208301945080935050505092959891949750929550565b5f6101008284031215611699575f80fd5b50919050565b5f8061012083850312156116b1575f80fd5b6116bb8484611688565b91506101008301356116cc816114cc565b809150509250929050565b5f602082840312156116e7575f80fd5b8135611456816114cc565b5f805f806101608587031215611706575f80fd5b6117108686611688565b9350610100850135611721816114cc565b9250610120850135611732816114cc565b91506101408501356115c8816114cc565b5f8060208385031215611754575f80fd5b823567ffffffffffffffff8082111561176b575f80fd5b818501915085601f83011261177e575f80fd5b81358181111561178c575f80fd5b8660208260051b85010111156117a0575f80fd5b60209290920196919550909350505050565b5f5b838110156117cc5781810151838201526020016117b4565b50505f910152565b5f81518084526117eb8160208601602086016117b2565b601f01601f19169290920160200192915050565b5f602080830181845280855180835260408601915060408160051b87010192508387015f5b8281101561185257603f198886030184526118408583516117d4565b94509285019290850190600101611824565b5092979650505050505050565b5f805f805f8060a08789031215611874575f80fd5b863567ffffffffffffffff81111561188a575f80fd5b61189689828a0161150a565b90975095505060208701356118aa816114cc565b935060408701356118ba816114cc565b925060608701356118ca816114cc565b915060808701356118da81611562565b809150509295509295509295565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b5f6020828403121561191e575f80fd5b5051919050565b634e487b7160e01b5f52602160045260245ffd5b6002811061195557634e487b7160e01b5f52602160045260245ffd5b9052565b60a081016119678288611939565b6001600160a01b03958616602083015293909416604085015290151560608401521515608090920191909152919050565b80356001600160601b038116811461155d575f80fd5b80356001600160801b038116811461155d575f80fd5b803564ffffffffff8116811461155d575f80fd5b803562ffffff8116811461155d575f80fd5b60608082528181018590525f90608080840188845b89811015611adb576001600160601b03611a1883611998565b168352602080830135611a2a816114cc565b6001600160a01b031690840152604082810135611a46816114cc565b6001600160a01b031690840152611a5e8286016119ae565b6001600160801b031685840152611a768285016119ae565b6001600160801b03168484015260a0611a908382016119c4565b64ffffffffff169084015260c0611aa88382016119d8565b62ffffff169084015260e0611abe8382016119d8565b62ffffff16908401526101009283019291909101906001016119ff565b50508481036020860152611aef81886117d4565b93505050506112be60408301846001600160a01b03169052565b80356002811061155d575f80fd5b5f60208284031215611b27575f80fd5b61145682611b09565b634e487b7160e01b5f52604160045260245ffd5b5f610100808385031215611b56575f80fd5b6040519081019067ffffffffffffffff82118183101715611b8557634e487b7160e01b5f52604160045260245ffd5b81604052611b9284611998565b8152611ba060208501611552565b6020820152611bb160408501611552565b6040820152611bc2606085016119ae565b6060820152611bd3608085016119ae565b6080820152611be460a085016119c4565b60a0820152611bf560c085016119d8565b60c0820152611c0660e085016119d8565b60e0820152949350505050565b634e487b7160e01b5f52603260045260245ffd5b606080825284518282018190525f9190608090818501906020808a01865b83811015611cdb57815180516001600160601b03168652838101516001600160a01b039081168588015260408083015190911690870152878101516001600160801b039081168988015287820151168787015260a08082015164ffffffffff169087015260c08082015162ffffff9081169188019190915260e09182015116908601526101009094019390820190600101611c45565b50508683039087015250611cef81886117d4565b9350505050610b3160408301846001600160a01b03169052565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b5f60208284031215611d46575f80fd5b815161145681611562565b60e08101611d5f828a611939565b6001600160a01b0397881660208301529587166040820152938616606085015291909416608083015292151560a082015291151560c090920191909152919050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561092957610929611da1565b5f808335601e19843603018112611ddd575f80fd5b83018035915067ffffffffffffffff821115611df7575f80fd5b60200191503681900382131561154b575f80fd5b828482375f8382015f81528351611e268183602088016117b2565b0195945050505050565b5f60018201611e4157611e41611da1565b5060010190565b5f805f805f60a08688031215611e5c575f80fd5b611e6586611b09565b94506020860135611e75816114cc565b93506040860135611e85816114cc565b92506060860135611e9581611562565b91506080860135611ea581611562565b809150509295509295909350565b5f60208284031215611ec3575f80fd5b8151611456816114cc565b6001600160a01b03948516815260208101939093526040830191909152909116606082015260800190565b5f805f805f805f60e0888a031215611f0f575f80fd5b611f1888611b09565b96506020880135611f28816114cc565b95506040880135611f38816114cc565b94506060880135611f48816114cc565b93506080880135611f58816114cc565b925060a0880135611f6881611562565b915060c0880135611f7881611562565b8091505092959891949750929550565b5f8251611f998184602087016117b2565b919091019291505056fea2646970667358221220006485cfc2e87bfc2266bd9fe007e4124c9d6351a4d2b3b2658d32bd0fdeee3264736f6c63430008150033000000000000000000000000f8553c8552f906c19286f21711721e206ee4909e000000000000000000000000aa0e63f512758e29831e7bb1e704fcbb860ab7f5000000000000000000000000b316940529b85234ec7c4f48cd8bef8d1bae5f7f