1 tx
1 call
constructor
constructor()
functions
checkSetNameAndCreator
viewfunction checkSetNameAndCreator(string setName, string creatorName, address creator) view returns (bool isSetNameTaken, bool isCreatorNameTaken)
CREATOR_ROLE
viewfunction CREATOR_ROLE() view returns (bytes32)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getAllGlyphSets
viewfunction getAllGlyphSets(uint256 start, uint256 limit) view returns (address[])
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
glyphSetInfo
viewfunction glyphSetInfo(address) view returns (string setName, address creator, uint256 glyphCount)
glyphSets
viewfunction glyphSets(uint256) view returns (address)
glyphSetsCount
viewfunction glyphSetsCount() view returns (uint256)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
isFactoryGlyphSet
viewfunction isFactoryGlyphSet(address glyphContract) view returns (bool)
isSetNameUsed
viewfunction isSetNameUsed(bytes32) view returns (bool)
paused
viewfunction paused() view returns (bool)
setNameToCreator
viewfunction setNameToCreator(bytes32) view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
createGlyphSet
nonpayablefunction createGlyphSet(string setName, uint64[] glyphs, string[] glyphNames, string category) returns (address)
grantCreatorRole
nonpayablefunction grantCreatorRole(address account)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
removeGlyphSet
nonpayablefunction removeGlyphSet(uint256 index)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeCreatorRole
nonpayablefunction revokeCreatorRole(address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setPaused
nonpayablefunction setPaused(bool _paused)
events
GlyphSetCreated
event GlyphSetCreated(address indexed glyphContract, address indexed creator, string setName, uint256 glyphCount)
GlyphSetRemoved
event GlyphSetRemoved(address indexed glyphContract, string setName)
Paused
event Paused(bool paused)
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)
creation bytecode
0x60806040523461002d5761001233610032565b5061001c336100b1565b506040516125409081620001538239f35b600080fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff166100ad57818052816020526040822081835260205260408220600160ff198254161790553391600080516020620026938339815191528180a4600190565b5090565b6001600160a01b031660008181527f6c62265728fed18aad8adfcac4830f5edec43eb5efb25c8df8bd0fefffbd983d60205260408120549091907ff9b0d984d5d05cca317cc6289422f6b62c4c69703ccd13c6923e88bf39d9c9a59060ff1661014d57808352826020526040832082845260205260408320600160ff1982541617905560008051602062002693833981519152339380a4600190565b50509056fe60808060405260043610156200001457600080fd5b60003560e01c90816301ffc9a71462000f365750806302df5c5e14620008e157806316c38b3c146200087a578063248a9ca314620008495780632f2ff15d14620008025780633486c18d146200070657806336568abe14620006b857806345c98a3f14620006715780634d43e6f0146200062a5780635c975abb14620006055780636e1921b414620005925780637807c17014620005725780638aeda25a146200054657806390ca7e2e14620004ff57806390fafc0d146200048c57806391d14854146200043b578063934ca6171462000405578063a217fddf14620003e7578063b8a4db0d14620001ed578063bdec700714620001ba578063d547741f14620001715763eadfd07e146200012857600080fd5b346200016c5760203660031901126200016c5760206001600160a01b03806200015062001008565b1660005260028252600160406000200154161515604051908152f35b600080fd5b346200016c5760403660031901126200016c57620001b86004356200019562000ff1565b90806000526000602052620001b260016040600020015462001422565b620016bf565b005b346200016c5760203660031901126200016c576004356000526003602052602060ff604060002054166040519015158152f35b346200016c576020806003193601126200016c576004356200020e620013e7565b6001549182821015620003ae5762000226826200101f565b919060018060a01b03928391549060031b1c16938460005260028252620002516040600020620010b2565b926200025d846200145b565b9160001995868201918211620003985762000290836200028162000297946200101f565b90549060031b1c16916200101f565b906200121e565b60015494851562000382577fd38c10083fefefa8089a289876c8e5684bea16e06b20bbe02578ab207229c641950190620002d1826200101f565b909182549160031b1b1916905560015584600052600282526000600260408220620002fd815462001051565b8062000341575b50826001820155015560005260048152604060002060018060a01b031981541690556200033c60405192828493845283019062001163565b0390a2005b601f81116001146200035957508281555b8862000304565b839082825262000378601f888420920160051c8201600183016200123b565b8183555562000352565b634e487b7160e01b600052603160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6064906040519062461bcd60e51b825260048201526012602482015271496e646578206f7574206f662072616e676560701b6044820152fd5b346200016c5760003660031901126200016c57602060405160008152f35b346200016c5760203660031901126200016c576004356000526004602052602060018060a01b0360406000205416604051908152f35b346200016c5760403660031901126200016c576200045862000ff1565b600435600052600060205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b346200016c5760203660031901126200016c57620004f06001600160a01b0380620004b662001008565b16600052600260205260406000206002620004d182620010b2565b9260018301541691015460405193849360608552606085019062001163565b91602084015260408301520390f35b346200016c5760203660031901126200016c576004356001548110156200016c576200052d6020916200101f565b905460405160039290921b1c6001600160a01b03168152f35b346200016c5760003660031901126200016c576020604051600080516020620024ab8339815191528152f35b346200016c5760003660031901126200016c576020600154604051908152f35b346200016c5760403660031901126200016c57620005b5602435600435620012c7565b6040518091602080830160208452825180915260206040850193019160005b828110620005e457505050500390f35b83516001600160a01b031685528695509381019392810192600101620005d4565b346200016c5760003660031901126200016c57602060ff600554166040519015158152f35b346200016c5760203660031901126200016c57620001b86200064b62001008565b62000655620013e7565b6200066b6001600160a01b038216151562001254565b6200155d565b346200016c5760203660031901126200016c57620001b86200069262001008565b6200069c620013e7565b620006b26001600160a01b038216151562001254565b62001646565b346200016c5760403660031901126200016c57620006d562000ff1565b336001600160a01b03821603620006f457620001b890600435620016bf565b60405163334bd91960e11b8152600490fd5b346200016c5760603660031901126200016c576001600160401b036004358181116200016c576200073c90369060040162000f8e565b916024359081116200016c576200075890369060040162000f8e565b916001600160a01b03604435818116939192908490036200016c57620007876200078d916040973691620011c1565b6200145b565b600052600460205281856000205416938415159485620007f3575b50620007bb9162000787913691620011c1565b6000526004602052836000205416908115159182620007e7575b50508251911515825215156020820152f35b141590508380620007d5565b8414159450620007bb620007a8565b346200016c5760403660031901126200016c57620001b86004356200082662000ff1565b908060005260006020526200084360016040600020015462001422565b620015dd565b346200016c5760203660031901126200016c5760043560005260006020526020600160406000200154604051908152f35b346200016c5760203660031901126200016c576004358015158091036200016c5760207f0e2fb031ee032dc02d8011dc50b816eb450cf856abd8261680dac74f72165bd291620008c9620013e7565b60ff196005541660ff821617600555604051908152a1005b346200016c5760803660031901126200016c576004356001600160401b0381116200016c576200091690369060040162000f8e565b906024356001600160401b0381116200016c576200093990369060040162000fbe565b90926044356001600160401b0381116200016c576200095d90369060040162000fbe565b906064356001600160401b0381116200016c576200098090369060040162000f8e565b336000908152600080516020620024eb8339815191526020526040902054909190600080516020620024ab8339815191529060ff161562000f18575060ff6005541662000ee2578515158062000ed6575b1562000e9557841562000e5c57620009ef6200078736878a620011c1565b9788600052600360205260ff6040600020541662000e1f57821562000de657604051946001600160401b03610d6687019081119087111762000d13579185939192610d666200172586396060610d6686018181529081018a90526080019360005b8a811062000da3575050610d66850184036020610d6687010152808452602084019060208160051b86010194876000915b83831062000d3557505050505062000aab939450610d66850183036040610d6687010152620011fd565b03906000f091821562000d2957600154600160401b81101562000d135762000ade81600162000aef93016001556200101f565b6001600160a01b038616916200121e565b60405193606085016001600160401b0381118682101762000d135760405262000b1a368483620011c1565b855233602086015281604086015260018060a01b038416600052600260205260406000209480519687519660018060401b03881162000d135760209862000b62825462001051565b601f811162000cd3575b508990601f8a1160011462000c5f5798809162000c0b9798999a60009262000c53575b50508160011b916000199060031b1c19161781555b60026040600183019460018060a01b038c820151169560018060a01b031996878254161790550151910155600052600387526040600020600160ff1982541617905560048752604060002090339082541617905560405193604085526040850191620011fd565b90848301527f73ba2cccc1f31917e8f127ba3ef42cccf13722b23bcc138709003ddb521c5ea633928060018060a01b038616930390a36040516001600160a01b039091168152f35b015190508b8062000b8f565b90826000528a6000209160005b601f198c16811062000cbb5750918a9160019362000c0b999a9b9c601f1981161062000ca1575b505050811b01815562000ba4565b015160001960f88460031b161c191690558b808062000c93565b91928c60018192868501518155019401920162000c6c565b62000d0190836000528b600020601f8c0160051c8101918d8d1062000d08575b601f0160051c01906200123b565b8a62000b6c565b909150819062000cf3565b634e487b7160e01b600052604160045260246000fd5b6040513d6000823e3d90fd5b9193959750919395601f19828203018652601e1983360301893512156200016c578835830190602082016001600160401b038335116200016c578235360381136200016c5762000d8e60209283926001953590620011fd565b9a019601930190918997959896949262000a81565b9395509193919290918335906001600160401b03821682036200016c576001600160401b0390911681528795602091820195909490939291019060010162000a50565b60405162461bcd60e51b815260206004820152601160248201527010d85d1959dbdc9e481c995c5d5a5c9959607a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152601560248201527414d95d081b985b5948185b1c9958591e481d5cd959605a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152601160248201527014d95d081b985b59481c995c5d5a5c9959607a1b6044820152606490fd5b60405162461bcd60e51b8152602060048201526019602482015278476c79706820636f756e74206d75737420626520312d31323760381b6044820152606490fd5b50607f861115620009d1565b60405162461bcd60e51b815260206004820152600e60248201526d119858dd1bdc9e481c185d5cd95960921b6044820152606490fd5b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b346200016c5760203660031901126200016c576004359063ffffffff60e01b82168092036200016c57602091637965db0b60e01b811490811562000f7c575b5015158152f35b6301ffc9a760e01b1490508362000f75565b9181601f840112156200016c578235916001600160401b0383116200016c57602083818601950101116200016c57565b9181601f840112156200016c578235916001600160401b0383116200016c576020808501948460051b0101116200016c57565b602435906001600160a01b03821682036200016c57565b600435906001600160a01b03821682036200016c57565b6001548110156200103b57600160005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c9216801562001083575b60208310146200106d57565b634e487b7160e01b600052602260045260246000fd5b91607f169162001061565b601f909101601f19168101906001600160401b0382119082101762000d1357604052565b90604051918260008254620010c78162001051565b908184526020946001916001811690816000146200113f5750600114620010fc575b505050620010fa925003836200108e565b565b600090815285812095935091905b81831062001126575050620010fa9350820101388080620010e9565b855488840185015294850194879450918301916200110a565b92505050620010fa94925060ff191682840152151560051b820101388080620010e9565b919082519283825260005b84811062001190575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016200116e565b6001600160401b03811162000d1357601f01601f191660200190565b929192620011cf82620011a5565b91620011df60405193846200108e565b8294818452818301116200016c578281602093846000960137010152565b908060209392818452848401376000828201840152601f01601f1916010190565b919060018060a01b038084549260031b9316831b921b1916179055565b81811062001247575050565b600081556001016200123b565b156200125c57565b60405162461bcd60e51b815260206004820152600f60248201526e125b9d985b1a59081858d8dbdd5b9d608a1b6044820152606490fd5b6001600160401b03811162000d135760051b60200190565b919082018092116200039857565b919082039182116200039857565b9060019060015480841015620013b95780620012e48386620012ab565b1191600092600014620013a55750905b620013008483620012b9565b9362001329620013108662001293565b956200132060405197886200108e565b80875262001293565b60209190601f19013687840137805b848110620013495750505050505090565b62001354816200101f565b905490620013638484620012b9565b918951831015620013915760039190911b1c6001600160a01b031660059190911b8801840152850162001338565b634e487b7160e01b87526032600452602487fd5b620013b2915084620012ab565b90620012f4565b5050604051915050602081016001600160401b0381118282101762000d135760405260008152600036813790565b3360009081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205460ff161562000f185750565b80600052600060205260406000203360005260205260ff604060002054161562000f185750565b9081518110156200103b570160200190565b908151620014866200146d82620011a5565b916200147d60405193846200108e565b808352620011a5565b6020828101939091601f190136853760005b85518110156200155357620014ae818762001449565b5190604160f892831c10158062001539575b15620015085783620014d3828962001449565b51831c019160ff83116200039857600192901b6001600160f81b03191660001a620014ff828762001449565b535b0162001498565b600191506001600160f81b031962001521828962001449565b511660001a62001532828762001449565b5362001501565b50605a62001548828962001449565b51831c1115620014c0565b5093505051902090565b6001600160a01b03166000818152600080516020620024eb8339815191526020526040812054909190600080516020620024ab8339815191529060ff16620015d857808352826020526040832082845260205260408320600160ff198254161790556000805160206200248b833981519152339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541615600014620015d857808352826020526040832082845260205260408320600160ff198254161790556000805160206200248b833981519152339380a4600190565b6001600160a01b03166000818152600080516020620024eb8339815191526020526040812054909190600080516020620024ab8339815191529060ff1615620015d85780835282602052604083208284526020526040832060ff198154169055600080516020620024cb833981519152339380a4600190565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416600014620015d85780835282602052604083208284526020526040832060ff198154169055600080516020620024cb833981519152339380a460019056fe604060808152346200067f5762000d6690813803806200001f81620006c7565b9384398201916060818403126200067f5780516001600160401b03908181116200067f578201601f918583830112156200067f578151956020946200006e6200006889620006ed565b620006c7565b9386858a81520187819a60051b830101918483116200067f578801905b828210620006ad57505050858101518381116200067f578101918086840112156200067f578251620000c16200006882620006ed565b93888086848152019260051b820101918383116200067f57898201905b838210620006845750505050878201518481116200067f576200010292016200072a565b968351801515908162000672575b50156200062e578351918383116200061857680100000000000000009283811162000618576000928354828555808310620005c5575b50908380528884208160021c91855b838110620005865750600319811690038062000543575b505050508051156000146200053c575083516200018d6200006882620006ed565b908082526200019f601f1991620006ed565b0187835b8281106200052b57505050915b8251908111620005175786600193845483865580841062000493575b500183835287832083915b83831062000365575050505087519283116200035157620001fa600254620007b3565b85811162000315575b5085918584116001146200029b57508260008051602062000d4683398151915297989360609695936200024b93916200028f575b508160011b916000199060031b1c19161790565b6002555b5191620002768751958694855288818601528351938491828b880152878701910162000705565b01601f19168101030190a1516105559081620007f18239f35b90508401513862000237565b9291601f19831660028352878320925b818110620002ff5750918391606097969460008051602062000d468339815191529a9b969410620002e5575b5050811b016002556200024f565b85015160001960f88460031b161c191690553880620002d7565b8a830151845592850192918801918801620002ab565b6200034090600283528783208780870160051c8201928a881062000347575b0160051c019062000781565b3862000203565b9250819262000334565b634e487b7160e01b81526041600452602490fd5b80519081518881116200047f5787918c918c620003838754620007b3565b8181116200044f575b505082948d8211600114620003dd5790808596620003c1938c92620003d1575b50508160011b916000199060031b1c19161790565b85555b01920192019190620001d7565b015190503880620003ac565b868a52838a209095601f1983168b5b8181106200042c575090869784889594931062000412575b505050811b018555620003c4565b015160001960f88460031b161c1916905538808062000404565b9497939686929691938786015181550195019301928f94918c96939794620003ec565b878b52848b20620004779284810160051c82019287861062000347570160051c019062000781565b8c386200038c565b634e487b7160e01b87526041600452602487fd5b858552858484872092830192015b828110620004b1575050620001cc565b909192935085620004c38254620007b3565b80620004d8575b50500190858a9392620004a1565b8c8c808311600114620004f35750505081555b8538620004ca565b6200050d918585528420920160051c820185830162000781565b81835555620004eb565b634e487b7160e01b82526041600452602482fd5b6060828286010152018890620001a3565b91620001b0565b928593865b8c8282106200056157505050500155388080806200016c565b6200057b84978c60019495965116908560031b906200079a565b960192910162000548565b86875b8d60048210620005a25750508382015560010162000155565b620005bb88938d6001949a5116908a60031b906200079a565b9201960162000589565b620005f8908580528a8620600380860160021c8201928d601888841b169081620005ff575b50500160021c019062000781565b3862000146565b6000198087019283549203851b1c169055388e620005ea565b634e487b7160e01b600052604160045260246000fd5b865162461bcd60e51b815260048101879052601960248201527f476c79706820636f756e74206d75737420626520312d313237000000000000006044820152606490fd5b607f915011153862000110565b600080fd5b81518881116200067f578b91620006a1878480948801016200072a565b815201910190620000de565b815186811681036200067f5781529088019088016200008b565b6040519190601f01601f191682016001600160401b038111838210176200061857604052565b6001600160401b038111620006185760051b60200190565b60005b838110620007195750506000910152565b818101518382015260200162000708565b81601f820112156200067f5780516001600160401b03811162000618576200075c601f8201601f1916602001620006c7565b92818452602082840101116200067f576200077e916020808501910162000705565b90565b8181106200078d575050565b6000815560010162000781565b9060031b9160018060401b03809116831b921b19161790565b90600182811c92168015620007e5575b6020831014620007cf57565b634e487b7160e01b600052602260045260246000fd5b91607f1691620007c356fe608060408181526004908136101561001657600080fd5b600092833560e01c908163120f947f1461030c5750806362a68edd146102a6578063887296c314610263578063c638268214610246578063e55750c81461014e5763ef430aa61461006657600080fd5b3461014a578260031936011261014a5780519183600254906001908260011c92600181168015610140575b602095868610821461012d575084885290811561010b57506001146100d0575b6100cc86866100c2828b038361049d565b51918291826104d6565b0390f35b929550600283528583205b8284106100f857505050826100cc946100c29282010194386100b1565b80548685018801529286019281016100db565b60ff191687860152505050151560051b83010192506100c2826100cc386100b1565b634e487b7160e01b845260229052602483fd5b93607f1693610091565b8280fd5b508290346102425760208060031936011261014a5783359360019460015481101561023e57600185528285200194835194809680548060011c9460018216908115610234575b878710821461022157508589529081156101fd57506001146101c2575b6100cc87876100c2828c038361049d565b9080949750528583205b8284106101ea57505050826100cc946100c2928201019486806101b1565b80548685018801529286019281016101cc565b60ff19168887015250505050151560051b83010192506100c2826100cc86806101b1565b634e487b7160e01b855260229052602484fd5b95607f1695610194565b8480fd5b5080fd5b838234610242578160031936011261024257602091549051908152f35b50903461014a57602036600319011261014a57359180548310156102a3575061028d602092610467565b905491519160018060401b039160031b1c168152f35b80fd5b5091903461024257602036600319011261024257803591548210156102d15760208361028d84610467565b606490602084519162461bcd60e51b83528201526015602482015274476c797068204944206f7574206f662072616e676560581b6044820152fd5b849150833461014a578260031936011261014a5791805490818352602091838380820180978580528286209486915b81600384011061041f575061037c95549184828210610406575b8282106103eb575b8282106103ce575b50106103c0575b509050969594929396038261049d565b83519485948186019282875251809352850193925b8281106103a057505050500390f35b83516001600160401b031685528695509381019392810192600101610391565b60c01c81520184908961036c565b608084901c6001600160401b031685529093019260010184610365565b838d1c6001600160401b03168552909301926001018461035d565b6001600160401b03841685529093019260010184610355565b86546001600160401b038082168652818e1c81168b870152608082811c9091168e87015260c09190911c60608601526001909701968a9650899550909301929182019161033b565b9060008054831015610489576020818060189352208360021c019260031b1690565b634e487b7160e01b81526032600452602490fd5b601f909101601f19168101906001600160401b038211908210176104c057604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b82811061050b57505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016104e956fea264697066735822122081116095cd768a89b7aa271810672f6e230b0ff839e77603c77a922635cd705264736f6c634300081700333deb6b9a71843c517f2f549bc65007759a0f9708919062235ee749cefd91405f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0df9b0d984d5d05cca317cc6289422f6b62c4c69703ccd13c6923e88bf39d9c9a5f6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b6c62265728fed18aad8adfcac4830f5edec43eb5efb25c8df8bd0fefffbd983da2646970667358221220b86beadceb5c402df71caa17b293c43113dd908aebd291fe915e30cd47e4799e64736f6c634300081700332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d