0 txs
1 call
constructor
constructor(address _buildManager, address _owner, uint256 _initialFeeToPay, uint256 _updateFee, bytes8 _refCode, address[] _plugins, uint64 _updateInterval, uint64 _challengeTimeout)
functions
facetAddress
viewfunction facetAddress(bytes4 _functionSelector) view returns (address facetAddress_)
facetAddresses
viewfunction facetAddresses() view returns (address[] facetAddresses_)
facetFunctionSelectors
viewfunction facetFunctionSelectors(address _facet) view returns (bytes4[] facetFunctionSelectors_)
facets
viewfunction facets() view returns (tuple[] facets_)
supportsInterface
viewfunction supportsInterface(bytes4 _interfaceId) view returns (bool)
addPluginList
nonpayablefunction addPluginList(address[] _plugins)
removePluginList
nonpayablefunction removePluginList(address[] _plugins)
replacePlugin
nonpayablefunction replacePlugin(address[] _oldPlugins, address[] _newPlugins)
setPause
nonpayablefunction setPause(bool _isPaused)
events
AddFunctions
event AddFunctions(address _facetAddress, bytes4[] _functionSelectors, uint16 selectorPosition)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
PauseSet
event PauseSet(bool indexed isPaused)
errors
DistributionStarted
error DistributionStarted()
FunctionNotExists
error FunctionNotExists()
InitialFeeNotPaid
error InitialFeeNotPaid()
NotTheOwner
error NotTheOwner()
PluginNotRegistered
error PluginNotRegistered()
creation bytecode
0x608060405234801562000010575f80fd5b50604051620023c5380380620023c5833981016040819052620000339162000846565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cec80546001600160801b03908116600160801b918816919091021781557fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75ced80546001600160401b038581166001600160801b031990921691909117680100000000000000009185168202179091557fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cef80546001600160a01b0319166001600160a01b038c161790557fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cee8054600160401b600160801b03191660c088901c9092029190911790555f8790036200016e57600181018054600160801b600160c01b031916600160801b426001600160401b03160217905562000193565b80546001600160801b0319166001600160801b038816178155620001936001620001db565b6001810180546001600160c01b0316600160c01b426001600160401b031602179055620001c1818562000242565b620001cc886200033d565b50505050505050505062000b38565b5f80516020620023a5833981519152805460ff60a01b1916600160a01b831515908102919091179091556040515f805160206200236183398151915291907f878ac8a2ca79520471f8f3c8494fa802c03ce3bf034252aad7f22318984fdbdb905f90a25050565b5f5b815181101562000338576200027c8383838151811062000268576200026862000969565b6020026020010151620003ad60201b60201c565b5f82828151811062000292576200029262000969565b60200260200101516001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa158015620002d5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052620002fe91908101906200097d565b90506200032e83838151811062000319576200031962000969565b6020026020010151826200044060201b60201c565b5060010162000244565b505050565b5f80516020620023a583398151915280546001600160a01b031981166001600160a01b038481169182179093556040515f8051602062002361833981519152939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b6003820154604051636c6bc68760e11b81526001600160a01b0383811660048301529091169063d8d78d0e90602401602060405180830381865afa158015620003f8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200041e919062000a27565b6200043c57604051632f49c4f160e01b815260040160405180910390fd5b5050565b5f815111620004aa5760405162461bcd60e51b815260206004820152602b60248201527f4c69624469616d6f6e644375743a204e6f2073656c6563746f727320696e206660448201526a1858d95d081d1bc818dd5d60aa1b60648201526084015b60405180910390fd5b5f80516020620023618339815191526001600160a01b038316620005265760405162461bcd60e51b815260206004820152602c60248201527f4c69624469616d6f6e644375743a204164642066616365742063616e2774206260448201526b65206164647265737328302960a01b6064820152608401620004a1565b6001600160a01b0383165f9081526001820160205260408120549061ffff82169003620005cd57620005728460405180606001604052806024815260200162002381602491396200077d565b6002820180546001600160a01b0386165f81815260018087016020908152604083208201805461ffff191661ffff90961695909517909455845490810185559381529190912090910180546001600160a01b03191690911790555b5f5b835181101562000739575f848281518110620005ef57620005ef62000969565b6020908102919091018101516001600160e01b031981165f908152918690526040909120549091506001600160a01b03168015620006965760405162461bcd60e51b815260206004820152603560248201527f4c69624469616d6f6e644375743a2043616e2774206164642066756e6374696f60448201527f6e207468617420616c72656164792065786973747300000000000000000000006064820152608401620004a1565b6001600160a01b0387165f8181526001878101602090815260408084208054938401815584528184206008840401805463ffffffff60079095166004026101000a948502191660e089901c94909402939093179092556001600160e01b031986168352889052902080546001600160b01b031916909117600160a01b61ffff87160217905583620007278162000a4f565b94505060019092019150620005cf9050565b507f1e276e775f40f560dd2320571648985b1c73ff2675ce328bc449a4a82e317dc08484836040516200076f9392919062000a7c565b60405180910390a150505050565b813b8181620007a15760405162461bcd60e51b8152600401620004a1919062000aea565b50505050565b80516001600160a01b0381168114620007be575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715620008025762000802620007c3565b604052919050565b5f6001600160401b03821115620008255762000825620007c3565b5060051b60200190565b80516001600160401b0381168114620007be575f80fd5b5f805f805f805f80610100898b0312156200085f575f80fd5b6200086a89620007a7565b975060206200087b818b01620007a7565b60408b015160608c015160808d0151929a5090985096506001600160c01b031981168114620008a8575f80fd5b60a08b01519095506001600160401b03811115620008c4575f80fd5b8a01601f81018c13620008d5575f80fd5b8051620008ec620008e6826200080a565b620007d7565b81815260059190911b8201830190838101908e8311156200090b575f80fd5b928401925b8284101562000934576200092484620007a7565b8252928401929084019062000910565b80975050505050506200094a60c08a016200082f565b91506200095a60e08a016200082f565b90509295985092959890939650565b634e487b7160e01b5f52603260045260245ffd5b5f60208083850312156200098f575f80fd5b82516001600160401b03811115620009a5575f80fd5b8301601f81018513620009b6575f80fd5b8051620009c7620008e6826200080a565b81815260059190911b82018301908381019087831115620009e6575f80fd5b928401925b8284101562000a1c5783516001600160e01b03198116811462000a0c575f80fd5b82529284019290840190620009eb565b979650505050505050565b5f6020828403121562000a38575f80fd5b8151801515811462000a48575f80fd5b9392505050565b5f61ffff80831681810362000a7257634e487b7160e01b5f52601160045260245ffd5b6001019392505050565b6001600160a01b03841681526060602080830182905284519183018290525f9185820191906080850190845b8181101562000ad05784516001600160e01b0319168352938301939183019160010162000aa8565b505080935050505061ffff83166040830152949350505050565b5f602080835283518060208501525f5b8181101562000b185785810183015185820160400152820162000afa565b505f604082860101526040601f19601f8301168501019250505092915050565b61181b8062000b465f395ff3fe608060405260043610610085575f3560e01c80637a0ed627116100585780637a0ed627146101c1578063adfca15e146101e2578063bedb86fb1461020e578063c2a01f881461022d578063cdffacc61461024c57610085565b806301ffc9a7146100f65780634ca8d4031461016257806352ef6b2c1461018157806372744b44146101a2575b5f80356001600160e01b03191681525f805160206117a2833981519152602081905260409091205481906001600160a01b0316806100d65760405163ae75dabb60e01b815260040160405180910390fd5b365f80375f80365f845af43d5f803e8080156100f0573d5ff35b3d5ffd5b005b348015610101575f80fd5b5061014d6101103660046111e1565b6001600160e01b0319165f9081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f602052604090205460ff1690565b60405190151581526020015b60405180910390f35b34801561016d575f80fd5b506100f461017c3660046112f4565b6102ae565b34801561018c575f80fd5b506101956102e4565b604051610159919061132e565b3480156101ad575f80fd5b506100f46101bc36600461137a565b610353565b3480156101cc575f80fd5b506101d5610394565b604051610159919061140f565b3480156101ed575f80fd5b506102016101fc3660046114c0565b610548565b604051610159919061151f565b348015610219575f80fd5b506100f461022836600461153e565b61060f565b348015610238575f80fd5b506100f4610247366004611559565b610620565b348015610257575f80fd5b506102966102663660046111e1565b6001600160e01b0319165f9081525f805160206117a283398151915260205260409020546001600160a01b031690565b6040516001600160a01b039091168152602001610159565b6102b661067a565b6102e17fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cec5b826106e1565b50565b60605f5f805160206117a28339815191526002810180546040805160208084028201810190925282815293945083018282801561034857602002820191905f5260205f20905b81546001600160a01b0316815260019091019060200180831161032a575b505050505091505090565b61035b61067a565b5f5b81518110156103905761038882828151811061037b5761037b6115b9565b60200260200101516107be565b60010161035d565b5050565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e546060905f805160206117a2833981519152908067ffffffffffffffff8111156103e1576103e1611203565b60405190808252806020026020018201604052801561042657816020015b604080518082019091525f8152606060208201528152602001906001900390816103ff5790505b5092505f5b81811015610542575f836002018281548110610449576104496115b9565b905f5260205f20015f9054906101000a90046001600160a01b0316905080858381518110610479576104796115b9565b6020908102919091018101516001600160a01b0392831690529082165f9081526001860182526040908190208054825181850281018501909352808352919290919083018282801561051457602002820191905f5260205f20905f905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116104d65790505b505050505085838151811061052b5761052b6115b9565b60209081029190910181015101525060010161042b565b50505090565b6001600160a01b0381165f9081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d602090815260409182902080548351818402810184019094528084526060935f805160206117a2833981519152939092919083018282801561060257602002820191905f5260205f20905f905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116105c45790505b5050505050915050919050565b61061761067a565b6102e18161082d565b61062861067a565b5f5b82518110156106505761064883828151811061037b5761037b6115b9565b60010161062a565b506103907fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cec6102db565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cec6106a481610836565b6001810154600160801b900467ffffffffffffffff165f036106d9576040516392e3e90760e01b815260040160405180910390fd5b6102e1610881565b5f5b81518110156107b95761070f83838381518110610702576107026115b9565b60200260200101516108dc565b5f828281518110610722576107226115b9565b60200260200101516001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa158015610764573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261078b91908101906115cd565b90506107b08383815181106107a2576107a26115b9565b602002602001015182610967565b506001016106e3565b505050565b5f816001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa1580156107fa573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261082191908101906115cd565b90506103908282610c49565b6102e181610d56565b600281015467ffffffffffffffff16158015906108635750600281015467ffffffffffffffff4281169116105b156102e157604051636576290f60e11b815260040160405180910390fd5b336108b37fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320546001600160a01b031690565b6001600160a01b0316146108da576040516336b6b89560e01b815260040160405180910390fd5b565b6003820154604051636c6bc68760e11b81526001600160a01b0383811660048301529091169063d8d78d0e90602401602060405180830381865afa158015610926573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094a9190611657565b61039057604051632f49c4f160e01b815260040160405180910390fd5b5f8151116109905760405162461bcd60e51b815260040161098790611672565b60405180910390fd5b5f805160206117a28339815191526001600160a01b038316610a095760405162461bcd60e51b815260206004820152602c60248201527f4c69624469616d6f6e644375743a204164642066616365742063616e2774206260448201526b65206164647265737328302960a01b6064820152608401610987565b6001600160a01b0383165f9081526001820160205260408120549061ffff82169003610aac57610a51846040518060600160405280602481526020016117c260249139610dce565b6002820180546001600160a01b0386165f81815260018087016020908152604083208201805461ffff191661ffff90961695909517909455845490810185559381529190912090910180546001600160a01b03191690911790555b5f5b8351811015610c07575f848281518110610aca57610aca6115b9565b6020908102919091018101516001600160e01b031981165f908152918690526040909120549091506001600160a01b03168015610b675760405162461bcd60e51b815260206004820152603560248201527f4c69624469616d6f6e644375743a2043616e2774206164642066756e6374696f6044820152746e207468617420616c72656164792065786973747360581b6064820152608401610987565b6001600160a01b0387165f8181526001878101602090815260408084208054938401815584528184206008840401805463ffffffff60079095166004026101000a948502191660e089901c94909402939093179092556001600160e01b031986168352889052902080546001600160b01b031916909117600160a01b61ffff87160217905583610bf6816116d1565b94505060019092019150610aae9050565b507f1e276e775f40f560dd2320571648985b1c73ff2675ce328bc449a4a82e317dc0848483604051610c3b939291906116f1565b60405180910390a150505050565b5f815111610c695760405162461bcd60e51b815260040161098790611672565b5f805160206117a28339815191526001600160a01b03831615610ced5760405162461bcd60e51b815260206004820152603660248201527f4c69624469616d6f6e644375743a2052656d6f76652066616365742061646472604482015275657373206d757374206265206164647265737328302960501b6064820152608401610987565b5f5b8251811015610d50575f838281518110610d0b57610d0b6115b9565b6020908102919091018101516001600160e01b031981165f908152918590526040909120549091506001600160a01b0316610d468183610def565b5050600101610cef565b50505050565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320805460ff60a01b1916600160a01b831515908102919091179091556040515f805160206117a283398151915291907f878ac8a2ca79520471f8f3c8494fa802c03ce3bf034252aad7f22318984fdbdb905f90a25050565b813b8181610d505760405162461bcd60e51b81526004016109879190611728565b5f805160206117a28339815191526001600160a01b038316610e795760405162461bcd60e51b815260206004820152603760248201527f4c69624469616d6f6e644375743a2043616e27742072656d6f76652066756e6360448201527f74696f6e207468617420646f65736e27742065786973740000000000000000006064820152608401610987565b306001600160a01b03841603610ee85760405162461bcd60e51b815260206004820152602e60248201527f4c69624469616d6f6e644375743a2043616e27742072656d6f766520696d6d7560448201526d3a30b1363290333ab731ba34b7b760911b6064820152608401610987565b6001600160e01b031982165f90815260208281526040808320546001600160a01b0387168452600180860190935290832054600160a01b90910461ffff169291610f3191611774565b905080821461101a576001600160a01b0385165f9081526001840160205260408120805483908110610f6557610f656115b9565b5f91825260208083206008830401546001600160a01b038a168452600188019091526040909220805460079092166004026101000a90920460e01b925082919085908110610fb557610fb56115b9565b5f91825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c929092029390931790556001600160e01b031992909216825284905260409020805461ffff60a01b1916600160a01b61ffff8516021790555b6001600160a01b0385165f90815260018401602052604090208054806110425761104261178d565b5f828152602080822060085f1990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319861682528490526040812080546001600160b01b03191690558190036111c55760028301545f906110ad90600190611774565b6001600160a01b0387165f90815260018087016020526040909120015490915061ffff16808214611168575f8560020183815481106110ee576110ee6115b9565b5f918252602090912001546002870180546001600160a01b03909216925082918490811061111e5761111e6115b9565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260018781019092526040902001805461ffff191661ffff83161790555b8460020180548061117b5761117b61178d565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b03891682526001878101909152604090912001805461ffff1916905550505b5050505050565b6001600160e01b0319811681146102e1575f80fd5b5f602082840312156111f1575f80fd5b81356111fc816111cc565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561124057611240611203565b604052919050565b5f67ffffffffffffffff82111561126157611261611203565b5060051b60200190565b6001600160a01b03811681146102e1575f80fd5b5f82601f83011261128e575f80fd5b813560206112a361129e83611248565b611217565b8083825260208201915060208460051b8701019350868411156112c4575f80fd5b602086015b848110156112e95780356112dc8161126b565b83529183019183016112c9565b509695505050505050565b5f60208284031215611304575f80fd5b813567ffffffffffffffff81111561131a575f80fd5b6113268482850161127f565b949350505050565b602080825282518282018190525f9190848201906040850190845b8181101561136e5783516001600160a01b031683529284019291840191600101611349565b50909695505050505050565b5f602080838503121561138b575f80fd5b823567ffffffffffffffff8111156113a1575f80fd5b8301601f810185136113b1575f80fd5b80356113bf61129e82611248565b81815260059190911b820183019083810190878311156113dd575f80fd5b928401925b828410156114045783356113f58161126b565b825292840192908401906113e2565b979650505050505050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b838110156114b257888303603f19018552815180516001600160a01b031684528701518784018790528051878501819052908801905f9060608601905b8083101561149d5783516001600160e01b0319168252928a019260019290920191908a0190611473565b50968901969450505090860190600101611436565b509098975050505050505050565b5f602082840312156114d0575f80fd5b81356111fc8161126b565b5f815180845260208085019450602084015f5b838110156115145781516001600160e01b031916875295820195908201906001016114ee565b509495945050505050565b602081525f6111fc60208301846114db565b80151581146102e1575f80fd5b5f6020828403121561154e575f80fd5b81356111fc81611531565b5f806040838503121561156a575f80fd5b823567ffffffffffffffff80821115611581575f80fd5b61158d8683870161127f565b935060208501359150808211156115a2575f80fd5b506115af8582860161127f565b9150509250929050565b634e487b7160e01b5f52603260045260245ffd5b5f60208083850312156115de575f80fd5b825167ffffffffffffffff8111156115f4575f80fd5b8301601f81018513611604575f80fd5b805161161261129e82611248565b81815260059190911b82018301908381019087831115611630575f80fd5b928401925b82841015611404578351611648816111cc565b82529284019290840190611635565b5f60208284031215611667575f80fd5b81516111fc81611531565b6020808252602b908201527f4c69624469616d6f6e644375743a204e6f2073656c6563746f727320696e206660408201526a1858d95d081d1bc818dd5d60aa1b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b5f61ffff8083168181036116e7576116e76116bd565b6001019392505050565b6001600160a01b03841681526060602082018190525f90611714908301856114db565b905061ffff83166040830152949350505050565b5f602080835283518060208501525f5b8181101561175457858101830151858201604001528201611738565b505f604082860101526040601f19601f8301168501019250505092915050565b81810381811115611787576117876116bd565b92915050565b634e487b7160e01b5f52603160045260245ffdfec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a204e657720666163657420686173206e6f20636f6465a2646970667358221220835a22c298d1a3497fced54845b41b4875e5f28b44ea57a4fa92771ffb3eedec64736f6c63430008180033c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a204e657720666163657420686173206e6f20636f6465c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000