0 txs
0 calls
constructor
constructor(address _globalAccessManager, (string conditionType, address implementation, bytes4 requiredSelector, bool active)[] _implementations)
functions
allConditions
viewfunction allConditions(uint256) view returns (address)
authority
viewfunction authority() view returns (address)
conditionImplementations
viewfunction conditionImplementations(bytes32) view returns (string conditionType, address implementation, bytes4 requiredSelector, bool active)
getAllConditions
viewfunction getAllConditions() view returns (address[])
isConsumingScheduledOp
viewfunction isConsumingScheduledOp() view returns (bytes4)
addConditionImplementation
nonpayablefunction addConditionImplementation(tuple _implementation)
createCondition
nonpayablefunction createCondition(bytes32 conditionImplId, bytes initCallData, address controller, bool register) returns (address condition)
createMultipleConditions
nonpayablefunction createMultipleConditions(bytes32[] conditionImplIds, bytes[] initCallDatas, address controller, bool register) returns (address[] conditions)
removeConditionImplementation
nonpayablefunction removeConditionImplementation(bytes32 conditionImplId)
setAuthority
nonpayablefunction setAuthority(address newAuthority)
events
AuthorityUpdated
event AuthorityUpdated(address authority)
ConditionDeployed
event ConditionDeployed(address indexed condition, address indexed controller, address indexed issuer, bytes32 conditionImplId)
ConditionFactoryCreated
event ConditionFactoryCreated(address indexed factory)
ConditionImplementationAdded
event ConditionImplementationAdded(bytes32 indexed conditionImplId, string conditionType, address implementation, bytes4 requiredSelector, bool active)
ConditionImplementationRemoved
event ConditionImplementationRemoved(bytes32 indexed conditionImplId, string conditionType, address implementation)
errors
AccessManagedInvalidAuthority
error AccessManagedInvalidAuthority(address authority)
AccessManagedRequiredDelay
error AccessManagedRequiredDelay(address caller, uint32 delay)
AccessManagedUnauthorized
error AccessManagedUnauthorized(address caller)
FailedDeployment
error FailedDeployment()
InsufficientBalance
error InsufficientBalance(uint256 balance, uint256 needed)
creation bytecode
0x608080604052346104e657611ac3803803809161001c82856104ea565b83398101906040818303126104e6576100348161050d565b602082015190916001600160401b0382116104e657019180601f840112156104e6578251926001600160401b0384116103c6578360051b6040519461007c60208301876104ea565b8552602080860191830101918383116104e65760208101915b8383106103e9575f80546001600160a01b0319166001600160a01b03881690811790915560405190815287907f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1307f83ec87f0ac2a1f09421f67befe1149e3a065bf7d8593304dafe97863ef9b82385f80a25f5b81518110156103da576101218183610521565b51516001600160a01b0360206101378486610521565b5101511661018b6001600160e01b031960406101538688610521565b510151169161017d60606101678789610521565b5101511515604051948593602085019788610549565b03601f1981018352826104ea565b5190206101988284610521565b515f82815260016020526040902081518051906001600160401b0382116103c6578254600181811c911680156103bc575b60208210146103a857601f8111610363575b50602090601f83116001146102f95791806001979695949288945f926102ee575b50505f19600383901b1c191690831b1781555b60208301519101805460408085015160609095015164ffffffffff60a01b1960a08a901b8a900380199490941695909316949094179190911693901c63ffffffff60a01b169290921790151560c01b60ff60c01b161790557f67038aefe06fc31eac6eba8ae47f3f188961808d45eaad0d628e105a6325bc4f6102928386610521565b5151848060a01b0360206102a68689610521565b51015116906102e56001600160e01b031960406102c3888b610521565b5101511660606102d3888b610521565b51015115159060405194859485610549565b0390a20161010e565b0151905089806101fc565b90601f19831691845f52815f20925f5b81811061034b575092600198979695939285928a96879510610333575b505050811b01815561020f565b01515f1960f88460031b161c19169055898080610326565b92936020600181928786015181550195019301610309565b835f5260205f20601f840160051c8101916020851061039e575b601f0160051c01905b81811061039357506101db565b5f8155600101610386565b909150819061037d565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101c9565b634e487b7160e01b5f52604160045260245ffd5b604051611526908161059d8239f35b82516001600160401b0381116104e6578201906080828703601f1901126104e65760405191608083016001600160401b038111848210176103c65760405260208101516001600160401b0381116104e65760209082010187601f820112156104e65780516001600160401b0381116103c65760405191610473601f8301601f1916602001846104ea565b81835289602083830101116104e657815f9260208093018386015e8301015283526104a06040820161050d565b60208401526060810151906001600160e01b0319821682036104e657608091604085015201519081151582036104e6578260209392606085940152815201920191610095565b5f80fd5b601f909101601f19168101906001600160401b038211908210176103c657604052565b51906001600160a01b03821682036104e657565b80518210156105355760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b9260a060206060949796936080875280519182918260808a0152018388015e5f828288010152601f80199101168501019560018060a01b0316602085015263ffffffff60e01b166040840152151591015256fe60806040526004361015610011575f80fd5b5f3560e01c806353162b53146100b457806379815847146100af5780637a9e5e4b146100aa5780638fb36037146100a55780638ff64a05146100a05780639615b9221461009b578063ac096ff814610096578063bf7e214f14610091578063c874d29b1461008c5763d604017914610087575f80fd5b610850565b6107f6565b6107bb565b61075b565b61059a565b610509565b6104c6565b61040b565b610333565b346101f85760803660031901126101f8576004356001600160401b0381116101f8576100e49036906004016101fc565b906024356001600160401b0381116101f8576101049036906004016101fc565b90604435906101128261022c565b6064359261011f8461024a565b61012a81871461093b565b61013386610997565b955f5b81811061014f576040518061014b8a8261026c565b0390f35b61015a8183896109c9565b359060206101698286886109de565b9361018a8a8a6040519788958695638ff64a0560e01b875260048701610a57565b03815f305af19182156101f3576001926101bf915f916101c5575b506101b0838c610a97565b6001600160a01b039091169052565b01610136565b6101e6915060203d81116101ec575b6101de81836102e2565b810190610a1f565b8b6101a5565b503d6101d4565b610a8c565b5f80fd5b9181601f840112156101f8578235916001600160401b0383116101f8576020808501948460051b0101116101f857565b6001600160a01b038116036101f857565b35906102488261022c565b565b801515036101f857565b606435906102488261024a565b35906102488261024a565b60206040818301928281528451809452019201905f5b81811061028f5750505090565b82516001600160a01b0316845260209384019390920191600101610282565b634e487b7160e01b5f52604160045260245ffd5b608081019081106001600160401b038211176102dd57604052565b6102ae565b90601f801991011681019081106001600160401b038211176102dd57604052565b6001600160401b0381116102dd57601f01601f191660200190565b35906001600160e01b0319821682036101f857565b346101f85760203660031901126101f8576004356001600160401b0381116101f857608060031982360301126101f85760405161036f816102c2565b81600401356001600160401b0381116101f8578201366023820112156101f85760048101359061039e82610303565b936103ac60405195866102e2565b82855236602483850101116101f857610409945f6020856103ff96602460649701838601378301015284526103e36024820161023d565b60208501526103f46044820161031e565b604085015201610261565b6060820152610aab565b005b346101f85760203660031901126101f8576004356104288161022c565b5f546001600160a01b03811633036104aa57813b15610489576001600160a01b0319166001600160a01b039091169081175f556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1005b506361798f2f60e11b5f9081526001600160a01b0391909116600452602490fd5b62d1953b60e31b5f523360045260245ffd5b5f9103126101f857565b346101f8575f3660031901126101f8575f5460a01c60ff1615610501576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60205f6104ee565b346101f85760803660031901126101f8576004356024356001600160401b0381116101f857366023820112156101f8578060040135906001600160401b0382116101f85736602483830101116101f85761014b92610580926044359161056e8361022c565b6024610578610254565b940190610f52565b6040516001600160a01b0390911681529081906020820190565b346101f8575f3660031901126101f85760405180602060025491828152019060025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace905f5b8181106106045761014b856105f8818703826102e2565b6040519182918261026c565b82546001600160a01b03168452602090930192600192830192016105e1565b90600182811c92168015610651575b602083101461063d57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610632565b9060405191825f82549261066e84610623565b80845293600181169081156106d75750600114610693575b50610248925003836102e2565b90505f9291925260205f20905f915b8183106106bb575050906020610248928201015f610686565b60209193508060019154838589010152019101909184926106a2565b90506020925061024894915060ff191682840152151560051b8201015f610686565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926107356060939695926080865260808601906106f9565b6001600160a01b0390961660208501526001600160e01b03191660408401521515910152565b346101f85760203660031901126101f8576004355f52600160205260405f2060016107858261065b565b9101546040805192839261014b9260c082901c60ff16929082901b6001600160e01b031916916001600160a01b0316908561071d565b346101f8575f3660031901126101f8575f546040516001600160a01b039091168152602090f35b634e487b7160e01b5f52603260045260245ffd5b346101f85760203660031901126101f8576004356002548110156101f85760025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace01546040516001600160a01b039091168152602090f35b346101f85760203660031901126101f85760043561086e36336111e3565b805f52600160205260405f20600181015460018060a01b038116156108f6576108c76108ba7f440ec239c55d46ddfc370cd9ca46498c2778dee2e2304576a500e24ecc63d30d9361065b565b916001600160a01b031690565b906108e26108dd855f52600160205260405f2090565b611127565b6108f16040519283928361118b565b0390a2005b60405162461bcd60e51b815260206004820152601d60248201527f496d706c656d656e746174696f6e20646f6573206e6f742065786973740000006044820152606490fd5b1561094257565b60405162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606490fd5b6001600160401b0381116102dd5760051b60200190565b906109a182610980565b6109ae60405191826102e2565b82815280926109bf601f1991610980565b0190602036910137565b91908110156109d95760051b0190565b6107e2565b91908110156109d95760051b81013590601e19813603018212156101f85701908135916001600160401b0383116101f85760200182360381136101f8579190565b908160209103126101f85751610a348161022c565b90565b908060209392818452848401375f828201840152601f01601f1916010190565b93959491606093610a75928652608060208701526080860191610a37565b6001600160a01b0390951660408401521515910152565b6040513d5f823e3d90fd5b80518210156109d95760209160051b010190565b610ab536336111e3565b7f67038aefe06fc31eac6eba8ae47f3f188961808d45eaad0d628e105a6325bc4f815160208301610b7b60018060a01b03825116610b6e610b67610b58604089019663ffffffff60e01b885116610b3060608c0196610b228851151560405194859360208501978861071d565b03601f1981018352826102e2565b51902098895f526001602052610b498160405f20610bd9565b5195516001600160a01b031690565b95516001600160e01b03191690565b9151151590565b906040519485948561071d565b0390a2565b818110610b8b575050565b5f8155600101610b80565b9190601f8111610ba557505050565b610248925f5260205f20906020601f840160051c83019310610bcf575b601f0160051c0190610b80565b9091508190610bc2565b919080519283516001600160401b0381116102dd57610c0281610bfc8454610623565b84610b96565b6020601f8211600114610ca857610c8392610c3d83606094600194610248999a5f92610c9d575b50508160011b915f199060031b1c19161790565b81555b60208501519101805460408087015163ffffffff60a01b911c166001600160c01b03199091166001600160a01b0390931692909217919091178155920151151590565b815460ff60c01b191690151560c01b60ff60c01b16179055565b015190505f80610c29565b601f19821695610cbb845f5260205f2090565b965f5b818110610d045750836102489798600194610c839794606097879510610cec575b505050811b018155610c40565b01515f1960f88460031b161c191690555f8080610cdf565b83830151895560019098019760209384019301610cbe565b90604051610d29816102c2565b606060ff60018395610d3a8161065b565b855201546001600160a01b0381166020850152604081811b6001600160e01b0319169085015260c01c161515910152565b15610d7257565b60405162461bcd60e51b815260206004820152602360248201527f556e6b6e6f776e20636f6e646974696f6e20696d706c656d656e746174696f6e60448201526208125160ea1b6064820152608490fd5b15610dca57565b60405162461bcd60e51b815260206004820152602160248201527f496e61637469766520636f6e646974696f6e20696d706c656d656e746174696f6044820152603760f91b6064820152608490fd5b356001600160e01b0319811692919060048210610e34575050565b6001600160e01b031960049290920360031b82901b16169150565b15610e5657565b60405162461bcd60e51b815260206004820152601a60248201527f496e76616c69642066756e6374696f6e207369676e61747572650000000000006044820152606490fd5b908092918237015f815290565b3d15610ed2573d90610eb982610303565b91610ec760405193846102e2565b82523d5f602084013e565b606090565b906020610a349281815201906106f9565b600254680100000000000000008110156102dd57600181016002556002548110156109d95760025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b0319166001600160a01b03909216919091179055565b91939093611002610ffd86610ff0610f7a610f75885f52600160205260405f2090565b610d1c565b6020810180519093610fde91610fd191604091610fc1918b91610fa7906001600160a01b03161515610d6b565b610fbc610fb76060890151151590565b610dc3565b610e19565b9301516001600160e01b03191690565b6001600160e01b03191690565b6001600160e01b031990911614610e4f565b516001600160a01b031690565b61148d565b94816110d2575b5050806110c0575b611060575b61101f83610ee8565b60405190815233916001600160a01b0390811691908416907f15df622cc1a55691ccdd7768e9b04b2b820f4ba6e629fca58646a24bd3e5532a90602090a490565b6001600160a01b038216803b156101f857604051631169a49960e11b81526001600160a01b0385166004820152905f908290602490829084905af16110a6575b50611016565b806110b45f6110ba936102e2565b806104bc565b5f6110a0565b506001600160a01b0382161515611011565b5f9182916110e560405180938193610e9b565b039082885af16110f3610ea8565b90156110ff5780611009565b61110b611123916112d1565b60405162461bcd60e51b815291829160048301610ed7565b0390fd5b60015f916111358154610623565b8061113f57500155565b601f8111831461115157508281550155565b8184526020842061116c91601f0160051c8101908401610b80565b8083528260208120805482851b9083198460031b1c1916178355550155565b906111a36020919493946040845260408401906106f9565b6001600160a01b03909416910152565b906004116101f85790600490565b6001600160a01b039091168152604060208201819052610a3493910191610a37565b5f5461120e906001600160a01b03166112056111ff855f6111b3565b90610e19565b908330916113ce565b901561121957505050565b63ffffffff16156112b7575f805460ff60a01b1916600160a01b1790555f546112589061124c906001600160a01b031681565b6001600160a01b031690565b91823b156101f857611285925f80809460405196879586948593634a63ebf760e11b8552600485016111c1565b03925af180156101f3576112a3575b505f805460ff60a01b19169055565b806110b45f6112b1936102e2565b5f611294565b62d1953b60e31b5f526001600160a01b031660045260245ffd5b60448151106113515760048101518101602481019190602090829003126101f8576024810151906001600160401b0382116101f85701816043820112156101f85760248101519061132182610303565b9261132f60405194856102e2565b828452604482840101116101f857815f926044602093018386015e8301015290565b506040516113606040826102e2565b601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c79000000602082015290565b908160209103126101f85751610a348161024a565b91908260409103126101f857602082516113bb8161024a565b92015163ffffffff811681036101f85790565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b031990931660648084019190915282525f9392849283928392916114256084826102e2565b51915afa611431610ea8565b9061143b57509190565b80519390916040851061146057505060208061145c939483010191016113a2565b9091565b9190936020811015611473575b50509190565b611486925060208091830101910161138d565b5f8061146d565b6e5af43d82803e903d91602b57fd5bf390763d602d80600a3d3981f3363d3d373d3d3d363d7300000062ffffff8260881c16175f5260781b17602052603760095ff0906001600160a01b038216156114e157565b63b06ebf3d60e01b5f5260045ffdfea2646970667358221220e7d52b71316fae6a83f4a0727f42e90c0961ea34f7348479f1426c7108a72b0764736f6c634300081c0033000000000000000000000000d2cc3486caad797d39999cd4b216260ed39abd4200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000