3 txs
83 calls
constructor
constructor(address[] spenders, address _permit2, address multisigWallet)
functions
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
eip712Domain
viewfunction eip712Domain() view returns (bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
permit2
viewfunction permit2() view returns (address)
SPENDER_ROLE
viewfunction SPENDER_ROLE() view returns (bytes32)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
addSpenders
nonpayablefunction addSpenders(address[] spenders)
executePermitTransfer
nonpayablefunction executePermitTransfer(tuple params)
executePermitTransferBatch
nonpayablefunction executePermitTransferBatch(tuple[] params)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
removeSpenders
nonpayablefunction removeSpenders(address[] spenders)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
events
EIP712DomainChanged
event EIP712DomainChanged()
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
InputOverflow
error InputOverflow()
InvalidShortString
error InvalidShortString()
PermitFailed
error PermitFailed()
PermitLengthError
error PermitLengthError()
StringTooLong
error StringTooLong(string str)
ZeroAddress
error ZeroAddress()
creation bytecode
0x610180604081815234620002ec5762001c4980380380916200002282866200030d565b8439820191606081840312620002ec5780516001600160401b039290838111620002ec5782019084601f83011215620002ec57815192602095858511620002ab576005938560051b8451966200007b8a8301896200030d565b87528880880191830101928311620002ec5788809201905b838210620002d2575050620000b99150620000b18491840162000331565b920162000331565b90825194620000c886620002f1565b600d8652878601946c2832b936b4ba26b0b730b3b2b960991b8652845198620000f18a620002f1565b6001808b52603160f81b828c019081529a6001600160a01b039591949186168015620002c157608052620001258a62000468565b98610140998a5262000137826200063f565b9a6101609b8c525190209b8c916101009d8e525190206101209b818d524660c052895191858301937f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f85528b84015260608301524660808301523060a083015260a0825260c082019082821090821117620002ab57895251902060a0523060e0528051926000805b8581106200025657505050505050508116156200024557620001e190620003e8565b5051926114319485620007f8863960805185818161040d015281816107300152818161087101528181610b4c01528181610c390152610f6d015260a05185505060c05185505060e051855050518450505183505051826101d3015251816101fd0152f35b815163d92e233d60e01b8152600490fd5b83518110156200029757878582851b860101511680156200028657906200027e889262000346565b5001620001bf565b8a5163d92e233d60e01b8152600490fd5b634e487b7160e01b82526032600452602482fd5b634e487b7160e01b600052604160045260246000fd5b885163d92e233d60e01b8152600490fd5b828091620002e08462000331565b81520191019062000093565b600080fd5b604081019081106001600160401b03821117620002ab57604052565b601f909101601f19168101906001600160401b03821190821017620002ab57604052565b51906001600160a01b0382168203620002ec57565b6001600160a01b031660008181527f4ffb062551029653461ccbf75b2f79c88d255df04d3a67abc9377d166127112960205260408120549091907f7434c6f201a551bfd17336985361933e0c4935b520dac8a49d937b325f7d5c0a9060ff16620003e357808352826020526040832082845260205260408320600160ff1982541617905560008051602062001c29833981519152339380a4600190565b505090565b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff166200046457818052816020526040822081835260205260408220600160ff19825416179055339160008051602062001c298339815191528180a4600190565b5090565b805160209081811015620005055750601f825111620004a457808251920151908083106200049557501790565b82600019910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251908160248401526000935b828510620004eb575050604492506000838284010152601f80199101168101030190fd5b8481018201518686016044015293810193859350620004c7565b9192916001600160401b038111620002ab5760019182548381811c9116801562000634575b828210146200061e57601f8111620005e5575b5080601f83116001146200057d57508192939460009262000571575b5050600019600383901b1c191690821b17905560ff90565b01519050388062000559565b90601f198316958460005282600020926000905b888210620005cd5750508385969710620005b3575b505050811b01905560ff90565b015160001960f88460031b161c19169055388080620005a6565b80878596829496860151815501950193019062000591565b8360005283601f83600020920160051c820191601f850160051c015b828110620006115750506200053d565b6000815501849062000601565b634e487b7160e01b600052602260045260246000fd5b90607f16906200052a565b805160209081811015620006cd5750601f8251116200066c57808251920151908083106200049557501790565b90604051809263305a27a960e01b82528060048301528251908160248401526000935b828510620006b3575050604492506000838284010152601f80199101168101030190fd5b84810182015186860160440152938101938593506200068f565b906001600160401b038211620002ab57600254926001938481811c91168015620007ec575b838210146200061e57601f8111620007b2575b5081601f84116001146200074657509282939183926000946200073a575b50501b916000199060031b1c19161760025560ff90565b01519250388062000723565b919083601f198116600260005284600020946000905b888383106200079757505050106200077d575b505050811b0160025560ff90565b015160001960f88460031b161c191690553880806200076f565b8587015188559096019594850194879350908101906200075c565b600260005284601f84600020920160051c820191601f860160051c015b828110620007df57505062000705565b60008155018590620007cf565b90607f1690620006f256fe60806040908082526004908136101561001757600080fd5b600092833560e01c91826301ffc9a7146108a05750816312261ee71461085c578163138a733e14610664578163248a9ca3146106395781632f2ff15d1461061b57816333c415231461059157816336568abe146105555781635b6748261461030657816372c16a24146102dd57816384b0196e146101bc57816391d1485414610181578163a217fddf14610166578163d547741f14610131575063dae51848146100c057600080fd5b3461012d57602036600319011261012d5780359067ffffffffffffffff8211610129576100ef9136910161091f565b6100f7610acd565b825b818110610104578380f35b8061012261011d61011860019486886109d7565b610990565b610e59565b50016100f9565b8280fd5b5080fd5b83903461012d5760016101629161015d61014a366108f4565b9390928387528660205286200154610b07565b610ef2565b5080f35b83903461012d578160031936011261012d5751908152602090f35b83903461012d5760209181610195366108f4565b92908152808552209060018060a01b0316600052825260ff81600020541690519015158152f35b9050346101295782600319360112610129576101f77f00000000000000000000000000000000000000000000000000000000000000006111d6565b926102217f0000000000000000000000000000000000000000000000000000000000000000611303565b90825192602092602085019585871067ffffffffffffffff8811176102c8575092602061027e838896610271998b9996528686528151998a99600f60f81b8b5260e0868c015260e08b0190610950565b91898303908a0152610950565b924660608801523060808801528460a088015286840360c088015251928381520193925b8281106102b157505050500390f35b8351855286955093810193928101926001016102a2565b604190634e487b7160e01b6000525260246000fd5b83903461012d578160031936011261012d57602090516000805160206113dc8339815191528152f35b9190503461012957602091602060031936011261055157813567ffffffffffffffff811161054d5761033b903690840161091f565b9390610345610a65565b855b858110610352578680f35b8060051b82013560be1983360301811215610549578201610371610a65565b8084016001600160a01b038061038683610990565b16158015610535575b8015610523575b61051357608083016103a881856109a4565b90506104e5575b5060a083016103be81856109a4565b90506104b0575b506103d86103d284610990565b92610990565b9160606103e6898601610990565b94013592836103fd575b5050505050600101610347565b8284116104a0579082918c9594937f00000000000000000000000000000000000000000000000000000000000000001694853b15610492578a51631b63c28b60e11b8152918416828d01528316602482015292821660448401521660648201529082908290608490829084905af180156104965761047e575b8080806103f0565b610487906109fd565b610492578638610476565b8680fd5b86513d84823e3d90fd5b8851631cf5535960e11b81528a90fd5b6104df906104bd85610990565b906104d16104ca86610990565b91876109a4565b929091606088013591610bfc565b386103c5565b61050d906104f285610990565b6105056104fe86610990565b92876109a4565b929091610b2d565b386103af565b865163d92e233d60e01b81528890fd5b508061052e84610990565b1615610396565b5080610542888501610990565b161561038f565b8780fd5b8480fd5b8380fd5b8391503461012d57610566366108f4565b91336001600160a01b0384160361058257509061016291610ef2565b5163334bd91960e11b81528490fd5b9190503461012957602036600319011261012957803567ffffffffffffffff8111610551576105c3903690830161091f565b6105ce929192610acd565b845b8181106105db578580f35b6105e96101188284876109d7565b6001600160a01b0381161561060b5790610604600192610d40565b50016105d0565b855163d92e233d60e01b81528490fd5b83903461012d5760016101629161063461014a366108f4565b610de0565b9190503461012957602036600319011261012957816020936001923581528085522001549051908152f35b9050346101295760031960203682011261055157823567ffffffffffffffff811161054d5760c081850192823603011261054d576106a0610a65565b6001600160a01b0391602482019190836106b984610990565b16158015610847575b8015610835575b610825576103d261070591608484016106e281836109a4565b90506107ff575b5060a484016106f881836109a4565b90506107ca575b50610990565b90606461071460448301610990565b91013580610720578780f35b8481116107ba57908493929188957f00000000000000000000000000000000000000000000000000000000000000001690813b1561049257608494868092818a968c519d8e9b8c9a631b63c28b60e11b8c5216908a01521660248801521660448601521660648401525af19081156107b157506107a2575b8080808080808780f35b6107ab906109fd565b38610798565b513d84823e3d90fd5b8551631cf5535960e11b81528790fd5b6107f9906107d783610990565b906107eb6107e489610990565b91856109a4565b929091606489013591610bfc565b386106ff565b61081f9061080c83610990565b61050561081889610990565b92856109a4565b386106e9565b845163d92e233d60e01b81528690fd5b508361084082610990565b16156106c9565b508361085560448401610990565b16156106c2565b83903461012d578160031936011261012d57517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b84908434610129576020366003190112610129573563ffffffff60e01b81168091036101295760209250637965db0b60e01b81149081156108e3575b5015158152f35b6301ffc9a760e01b149050836108dc565b604090600319011261091a57600435906024356001600160a01b038116810361091a5790565b600080fd5b9181601f8401121561091a5782359167ffffffffffffffff831161091a576020808501948460051b01011161091a57565b919082519283825260005b84811061097c575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520161095b565b356001600160a01b038116810361091a5790565b903590601e198136030182121561091a570180359067ffffffffffffffff821161091a5760200191813603831361091a57565b91908110156109e75760051b0190565b634e487b7160e01b600052603260045260246000fd5b67ffffffffffffffff8111610a1157604052565b634e487b7160e01b600052604160045260246000fd5b6040810190811067ffffffffffffffff821117610a1157604052565b90601f8019910116810190811067ffffffffffffffff821117610a1157604052565b3360009081527f4ffb062551029653461ccbf75b2f79c88d255df04d3a67abc9377d166127112960205260409020546000805160206113dc8339815191529060ff1615610aaf5750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b3360009081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205460ff1615610aaf5750565b80600052600060205260406000203360005260205260ff6040600020541615610aaf5750565b604051636eb1769f60e11b81526001600160a01b0380841660048301527f00000000000000000000000000000000000000000000000000000000000000008116602483015290911693929190602081604481885afa908115610bdd57600091610bab575b5060001914610ba557610ba393610f67565b565b50505050565b90506020813d602011610bd5575b81610bc660209383610a43565b8101031261091a575138610b91565b3d9150610bb9565b6040513d6000823e3d90fd5b519065ffffffffffff8216820361091a57565b6040805163927da10560e01b81526001600160a01b03848116600483015292831660248201819052306044830152969594909290916060846064817f000000000000000000000000000000000000000000000000000000000000000086165afa938415610d3557600094610c9e575b505082511610159081610c87575b50610ba557610ba393610f67565b65ffffffffffff9150602001511642111538610c79565b6060949294813d606011610d2d575b81610cba60609383610a43565b81010312610129578151926060840184811067ffffffffffffffff821117610d195783528151908682168203610d165750610d0a9183918552610cff60208201610be9565b602086015201610be9565b90820152913880610c6b565b80fd5b634e487b7160e01b82526041600452602482fd5b3d9150610cad565b50513d6000823e3d90fd5b6001600160a01b031660008181527f4ffb062551029653461ccbf75b2f79c88d255df04d3a67abc9377d166127112960205260408120549091906000805160206113dc8339815191529060ff16610ddb57808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541615600014610ddb57808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b6001600160a01b031660008181527f4ffb062551029653461ccbf75b2f79c88d255df04d3a67abc9377d166127112960205260408120549091906000805160206113dc8339815191529060ff1615610ddb5780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416600014610ddb5780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b604051937f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316939290919060006064841461116d5750826048146110f7578260e0146110d25782610100146110aa578260601461101757505061016014610fdf57634f07a86760e11b8352600483fd5b600092838093610160610164946302b67b5760e41b855260048501375af15b1561100557565b60405163b78cb0dd60e01b8152600490fd5b6302b67b5760e41b865260048601526024850152506000928392610164928491906020906040906014816050880137841965ffffffffffff9080601484013560e01c0182166064890152601883013560e01c60848901523060a4890152601c83013560e01c011660c487015261010060e48701528161010487015282808201610124880137016101448501375af1610ffe565b5060009491508493508390610100610104946323f2ebc360e21b855260048501375af1610ffe565b506000949150849350839060e060e49463d505accf821b855260048501375af1610ffe565b6000959250859450906101049385926323f2ebc360e21b8552600485015230602485015260206008602883013592803560e01c60448801528519600482013560e01c016064880152600160848801528360ff1c601b0160a48801520160c48601376001600160ff1b031660e48401525af1610ffe565b9592508594509060e493859263d505accf60e01b8552600485015230602485015260206024604483013592828160448901376000198382013560e01c0160648801528360ff1c601b0160848801520160a48601376001600160ff1b031660c48401525af1610ffe565b60ff81146112145760ff811690601f821161120257604051916111f883610a27565b8252602082015290565b604051632cd44ac360e21b8152600490fd5b506040516000600190600154918260011c90600184169384156112f9575b60209485841081146112e557838752869493929181156112c55750600114611266575b505061126392500382610a43565b90565b9093915060016000527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6936000915b8183106112ad57505061126393508201013880611255565b85548784018501529485019486945091830191611295565b91505061126394925060ff191682840152151560051b8201013880611255565b634e487b7160e01b85526022600452602485fd5b91607f1691611232565b60ff81146113255760ff811690601f821161120257604051916111f883610a27565b5060405160006002549060018260011c90600184169384156113d1575b60209485841081146112e557838752869493929181156112c5575060011461137257505061126392500382610a43565b9093915060026000527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace936000915b8183106113b957505061126393508201013880611255565b855487840185015294850194869450918301916113a1565b91607f169161134256fe7434c6f201a551bfd17336985361933e0c4935b520dac8a49d937b325f7d5c0aa2646970667358221220461c83899acdeff9994a8408fa8a6028e405acabef0fdb1cd05ef895714b9bd464736f6c634300081800332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000600d8e467b5df99bc9090edb928eb6cae69f5f820000000000000000000000000000000000000000000000000000000000000000