94 txs
226 calls
constructor
constructor(string _name, string _symbol, uint256 _maxSupply, uint256 _maxPublicMint, uint256 _pricePerToken)
functions
allowlistMintAmount
viewfunction allowlistMintAmount(address _addr) view returns (uint8)
balanceOf
viewfunction balanceOf(address owner) view returns (uint256)
contractURI
viewfunction contractURI() view returns (string)
getApproved
viewfunction getApproved(uint256 tokenId) view returns (address)
isAdmin
viewfunction isAdmin(address _admin) view returns (bool)
isAllowlistSaleActive
viewfunction isAllowlistSaleActive() view returns (bool)
isApprovedForAll
viewfunction isApprovedForAll(address owner, address operator) view returns (bool)
isSaleActive
viewfunction isSaleActive() view returns (bool)
maxPublicMint
viewfunction maxPublicMint() view returns (uint256)
maxSupply
viewfunction maxSupply() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
ownerOf
viewfunction ownerOf(uint256 tokenId) view returns (address)
pricePerToken
viewfunction pricePerToken() view returns (uint256)
pricePerTokenAllowlist
viewfunction pricePerTokenAllowlist() view returns (uint256)
provenance
viewfunction provenance() view returns (string)
royaltyInfo
viewfunction royaltyInfo(uint256 tokenId, uint256 salePrice) view returns (address, uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
symbol
viewfunction symbol() view returns (string)
tokenByIndex
viewfunction tokenByIndex(uint256 index) view returns (uint256)
tokenOfOwnerByIndex
viewfunction tokenOfOwnerByIndex(address owner, uint256 index) view returns (uint256)
tokenURI
viewfunction tokenURI(uint256 tokenId) view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
addAdmin
nonpayablefunction addAdmin(address _admin)
approve
nonpayablefunction approve(address to, uint256 tokenId)
freeMint
nonpayablefunction freeMint(uint256 _numberOfTokens, address _to)
mint
payablefunction mint(uint8 _numberOfTokens, address _to) payable
mintAllowlisted
payablefunction mintAllowlisted(uint8 _numberOfTokens) payable
recoverToken
nonpayablefunction recoverToken(address _token)
removeAdmin
nonpayablefunction removeAdmin(address _admin)
renounceOwnership
nonpayablefunction renounceOwnership()
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId, bytes data)
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId)
setAllowlistAddresses
nonpayablefunction setAllowlistAddresses(address[] _addresses, uint8 _numAllowedToMint)
setApprovalForAll
nonpayablefunction setApprovalForAll(address operator, bool approved)
setBaseURI
nonpayablefunction setBaseURI(string _baseUri)
setContractURI
nonpayablefunction setContractURI(string _URI)
setDefaultRoyalty
nonpayablefunction setDefaultRoyalty(address _recipient, uint96 _fraction)
setIsAllowlistSaleActive
nonpayablefunction setIsAllowlistSaleActive(bool _isActive)
setIsSaleActive
nonpayablefunction setIsSaleActive(bool _isActive)
setMaxPublicMint
nonpayablefunction setMaxPublicMint(uint256 _maxPublicMint)
setMaxSupply
nonpayablefunction setMaxSupply(uint256 _maxSupply)
setPricePerToken
nonpayablefunction setPricePerToken(uint256 _pricePerToken)
setPricePerTokenAllowlist
nonpayablefunction setPricePerTokenAllowlist(uint256 _pricePerTokenAllowlist)
setProvenance
nonpayablefunction setProvenance(string _provenance)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 tokenId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawAll
nonpayablefunction withdrawAll()
events
AdminAdded
event AdminAdded(address indexed admin)
AdminRemoved
event AdminRemoved(address indexed admin)
Approval
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)
ApprovalForAll
event ApprovalForAll(address indexed owner, address indexed operator, bool approved)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Transfer
event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)
errors
AdminAlreadyExists
error AdminAlreadyExists(address admin)
AdminDoesNotExist
error AdminDoesNotExist(address admin)
AdminIsAddressZero
error AdminIsAddressZero()
ArgumentIsAddressZero
error ArgumentIsAddressZero()
CallerIsNotTheAdmin
error CallerIsNotTheAdmin(address caller)
ContractBalanceIsZero
error ContractBalanceIsZero()
EtherValueSentNotExact
error EtherValueSentNotExact()
ExceedsMaxSupply
error ExceedsMaxSupply()
ExceedsMintLimit
error ExceedsMintLimit()
SaleNotActive
error SaleNotActive()
TransferFailed
error TransferFailed()
creation bytecode
0x60806040526011805461ffff191690553480156200001c57600080fd5b50604051620030be380380620030be8339810160408190526200003f91620001b3565b848460026200004f8382620002c9565b5060036200005e8282620002c9565b5050506200007b620000756200009560201b60201c565b62000099565b601292909255601355601481905560155550620003959050565b3390565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200011357600080fd5b81516001600160401b0380821115620001305762000130620000eb565b604051601f8301601f19908116603f011681019082821181831017156200015b576200015b620000eb565b81604052838152602092508660208588010111156200017957600080fd5b600091505b838210156200019d57858201830151818301840152908201906200017e565b6000602085830101528094505050505092915050565b600080600080600060a08688031215620001cc57600080fd5b85516001600160401b0380821115620001e457600080fd5b620001f289838a0162000101565b965060208801519150808211156200020957600080fd5b50620002188882890162000101565b60408801516060890151608090990151979a919950979695509350505050565b600181811c908216806200024d57607f821691505b6020821081036200026e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002c4576000816000526020600020601f850160051c810160208610156200029f5750805b601f850160051c820191505b81811015620002c057828155600101620002ab565b5050505b505050565b81516001600160401b03811115620002e557620002e5620000eb565b620002fd81620002f6845462000238565b8462000274565b602080601f8311600181146200033557600084156200031c5750858301515b600019600386901b1c1916600185901b178555620002c0565b600085815260208120601f198616915b82811015620003665788860151825594840194600190910190840162000345565b5085821015620003855787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b612d1980620003a56000396000f3fe6080604052600436106102925760003560e01c80636352211e1161015a5780639be65a60116100c1578063d2d65ff51161007a578063d2d65ff5146107e4578063d5abeb0114610804578063e8a3d4851461081a578063e985e9c51461082f578063f2fde38b14610878578063ffe630b51461089857600080fd5b80639be65a601461072e578063a22cb4651461074e578063b3485d8d1461076e578063b88d4fde1461078e578063c87b56dd146107ae578063cabadaa0146107ce57600080fd5b80637b6cba5c116101135780637b6cba5c146106935780637bf75f6c146106b3578063853828b6146106c65780638da5cb5b146106db578063938e3d7b146106f957806395d89b411461071957600080fd5b80636352211e146105e85780636f8b44b014610608578063704802751461062857806370a0823114610648578063715018a6146106685780637b1b1de61461067d57600080fd5b8063270ab52c116101fe57806342842e0e116101b757806342842e0e14610545578063492c8040146105655780634acde4d11461057b5780634f6ccce71461058e57806355f804b3146105ae578063564566a8146105ce57600080fd5b8063270ab52c146104665780632a55205a146104865780632bf2762f146104c55780632f745c59146104e55780632fbf0cea1461050557806334861c751461052557600080fd5b80630f7309e8116102505780630f7309e8146103875780631785f53c1461039c57806318160ddd146103bc57806323b872dd146103db57806324d7806c146103fb57806325a466f41461041b57600080fd5b806210f81e1461029757806301ffc9a7146102cb57806304634d8d146102eb57806306fdde031461030d578063081812fc1461032f578063095ea7b314610367575b600080fd5b3480156102a357600080fd5b506011546102b690610100900460ff1681565b60405190151581526020015b60405180910390f35b3480156102d757600080fd5b506102b66102e6366004612499565b6108b8565b3480156102f757600080fd5b5061030b6103063660046124cb565b6108c9565b005b34801561031957600080fd5b506103226108e0565b6040516102c29190612560565b34801561033b57600080fd5b5061034f61034a366004612573565b610972565b6040516001600160a01b0390911681526020016102c2565b34801561037357600080fd5b5061030b61038236600461258c565b610999565b34801561039357600080fd5b50610322610ab3565b3480156103a857600080fd5b5061030b6103b73660046125b8565b610b41565b3480156103c857600080fd5b50600a545b6040519081526020016102c2565b3480156103e757600080fd5b5061030b6103f63660046125d5565b610bfd565b34801561040757600080fd5b506102b66104163660046125b8565b610c2e565b34801561042757600080fd5b506104546104363660046125b8565b6001600160a01b031660009081526016602052604090205460ff1690565b60405160ff90911681526020016102c2565b34801561047257600080fd5b5061030b610481366004612573565b610c65565b34801561049257600080fd5b506104a66104a1366004612616565b610c73565b604080516001600160a01b0390931683526020830191909152016102c2565b3480156104d157600080fd5b5061030b6104e0366004612573565b610d1f565b3480156104f157600080fd5b506103cd61050036600461258c565b610d2d565b34801561051157600080fd5b5061030b610520366004612573565b610dc3565b34801561053157600080fd5b5061030b610540366004612638565b610dd1565b34801561055157600080fd5b5061030b6105603660046125d5565b610e40565b34801561057157600080fd5b506103cd60155481565b61030b610589366004612673565b610e5b565b34801561059a57600080fd5b506103cd6105a9366004612573565b610f8b565b3480156105ba57600080fd5b5061030b6105c936600461268e565b61101e565b3480156105da57600080fd5b506011546102b69060ff1681565b3480156105f457600080fd5b5061034f610603366004612573565b611034565b34801561061457600080fd5b5061030b610623366004612573565b611094565b34801561063457600080fd5b5061030b6106433660046125b8565b6110a2565b34801561065457600080fd5b506103cd6106633660046125b8565b611162565b34801561067457600080fd5b5061030b6111e8565b34801561068957600080fd5b506103cd60145481565b34801561069f57600080fd5b5061030b6106ae36600461270e565b6111fc565b61030b6106c136600461272b565b61121f565b3480156106d257600080fd5b5061030b6112ff565b3480156106e757600080fd5b50600c546001600160a01b031661034f565b34801561070557600080fd5b5061030b61071436600461268e565b611393565b34801561072557600080fd5b506103226113a9565b34801561073a57600080fd5b5061030b6107493660046125b8565b6113b8565b34801561075a57600080fd5b5061030b610769366004612757565b611507565b34801561077a57600080fd5b5061030b610789366004612785565b611512565b34801561079a57600080fd5b5061030b6107a936600461281f565b611593565b3480156107ba57600080fd5b506103226107c9366004612573565b6115c5565b3480156107da57600080fd5b506103cd60135481565b3480156107f057600080fd5b5061030b6107ff36600461270e565b61162c565b34801561081057600080fd5b506103cd60125481565b34801561082657600080fd5b50610322611648565b34801561083b57600080fd5b506102b661084a3660046128ff565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b34801561088457600080fd5b5061030b6108933660046125b8565b611657565b3480156108a457600080fd5b5061030b6108b336600461268e565b6116d0565b60006108c3826116e6565b92915050565b6108d2336116f1565b6108dc8282611751565b5050565b6060600280546108ef9061291d565b80601f016020809104026020016040519081016040528092919081815260200182805461091b9061291d565b80156109685780601f1061093d57610100808354040283529160200191610968565b820191906000526020600020905b81548152906001019060200180831161094b57829003601f168201915b5050505050905090565b600061097d8261184e565b506000908152600660205260409020546001600160a01b031690565b60006109a482611034565b9050806001600160a01b0316836001600160a01b031603610a165760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b0382161480610a325750610a32813361084a565b610aa45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610a0d565b610aae83836118ad565b505050565b600e8054610ac09061291d565b80601f0160208091040260200160405190810160405280929190818152602001828054610aec9061291d565b8015610b395780601f10610b0e57610100808354040283529160200191610b39565b820191906000526020600020905b815481529060010190602001808311610b1c57829003601f168201915b505050505081565b610b4961191b565b6001600160a01b038116610b705760405163274338ef60e11b815260040160405180910390fd5b6001600160a01b0381166000908152600d602052604090205460ff16610bb457604051630ed580c760e41b81526001600160a01b0382166004820152602401610a0d565b6001600160a01b0381166000818152600d6020526040808220805460ff19169055517fa3b62bc36326052d97ea62d63c3d60308ed4c3ea8ac079dd8499f1e9c4f80c0f9190a250565b610c073382611975565b610c235760405162461bcd60e51b8152600401610a0d90612957565b610aae8383836119f4565b6001600160a01b0381166000908152600d602052604081205460ff16806108c3575050600c546001600160a01b0391821691161490565b610c6e336116f1565b601355565b60008281526001602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046001600160601b0316928201929092528291610ce85750604080518082019091526000546001600160a01b0381168252600160a01b90046001600160601b031660208201525b602081015160009061271090610d07906001600160601b0316876129ba565b610d1191906129d1565b915196919550909350505050565b610d28336116f1565b601455565b6000610d3883611162565b8210610d9a5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610a0d565b506001600160a01b03919091166000908152600860209081526040808320938352929052205490565b610dcc336116f1565b601555565b610dda336116f1565b6000610de5600a5490565b601254909150610df584836129f3565b1115610e145760405163c30436e960e01b815260040160405180910390fd5b60005b83811015610e3a57610e3283610e2d83856129f3565b611b65565b600101610e17565b50505050565b610aae83838360405180602001604052806000815250611593565b6000610e66600a5490565b601154909150610100900460ff16610e915760405163b7b2409760e01b815260040160405180910390fd5b3360009081526016602052604090205460ff9081169083161115610ec857604051636ae0191360e11b815260040160405180910390fd5b601254610ed860ff8416836129f3565b1115610ef75760405163c30436e960e01b815260040160405180910390fd5b348260ff16601554610f0991906129ba565b14610f2757604051639f0a970560e01b815260040160405180910390fd5b3360009081526016602052604081208054849290610f4990849060ff16612a06565b92506101000a81548160ff021916908360ff16021790555060005b8260ff168160ff161015610aae57610f8333610e2d60ff8416856129f3565b600101610f64565b6000610f96600a5490565b8210610ff95760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610a0d565b600a828154811061100c5761100c612a1f565b90600052602060002001549050919050565b611027336116f1565b6010610aae828483612a85565b6000818152600460205260408120546001600160a01b0316806108c35760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a0d565b61109d336116f1565b601255565b6110aa61191b565b6001600160a01b0381166110d15760405163274338ef60e11b815260040160405180910390fd5b6001600160a01b0381166000908152600d602052604090205460ff16156111165760405163f646f2cd60e01b81526001600160a01b0382166004820152602401610a0d565b6001600160a01b0381166000818152600d6020526040808220805460ff19166001179055517f44d6d25963f097ad14f29f06854a01f575648a1ef82f30e562ccd3889717e3399190a250565b60006001600160a01b0382166111cc5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a0d565b506001600160a01b031660009081526005602052604090205490565b6111f061191b565b6111fa6000611b7f565b565b611205336116f1565b601180549115156101000261ff0019909216919091179055565b600061122a600a5490565b60115490915060ff166112505760405163b7b2409760e01b815260040160405180910390fd5b6013548360ff16111561127657604051636ae0191360e11b815260040160405180910390fd5b60125461128660ff8516836129f3565b11156112a55760405163c30436e960e01b815260040160405180910390fd5b348360ff166014546112b791906129ba565b146112d557604051639f0a970560e01b815260040160405180910390fd5b60005b8360ff168160ff161015610e3a576112f783610e2d60ff8416856129f3565b6001016112d8565b61130761191b565b47600081900361132a57604051632f1c17e560e01b815260040160405180910390fd5b604051600090339083908381818185875af1925050503d806000811461136c576040519150601f19603f3d011682016040523d82523d6000602084013e611371565b606091505b50509050806108dc576040516312171d8360e31b815260040160405180910390fd5b61139c336116f1565b600f610aae828483612a85565b6060600380546108ef9061291d565b6113c061191b565b6001600160a01b0381166113e75760405163f106f2bd60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa15801561142e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114529190612b45565b90508060000361147557604051632f1c17e560e01b815260040160405180910390fd5b816001600160a01b031663a9059cbb611496600c546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af11580156114e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aae9190612b5e565b6108dc338383611bd1565b61151b336116f1565b60005b60ff8116831115610e3a57816016600086868560ff1681811061154357611543612a1f565b905060200201602081019061155891906125b8565b6001600160a01b031681526020810191909152604001600020805460ff191660ff9290921691909117905561158c81612b7b565b905061151e565b61159d3383611975565b6115b95760405162461bcd60e51b8152600401610a0d90612957565b610e3a84848484611c9f565b60606115d08261184e565b60006115da611cd2565b905060008151116115fa5760405180602001604052806000815250611625565b8061160484611ce1565b604051602001611615929190612b9a565b6040516020818303038152906040525b9392505050565b611635336116f1565b6011805460ff1916911515919091179055565b6060600f80546108ef9061291d565b61165f61191b565b6001600160a01b0381166116c45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a0d565b6116cd81611b7f565b50565b6116d9336116f1565b600e610aae828483612a85565b60006108c382611d74565b6001600160a01b0381166000908152600d602052604090205460ff161580156117285750600c546001600160a01b03828116911614155b156116cd57604051636d3f049f60e01b81526001600160a01b0382166004820152602401610a0d565b6127106001600160601b03821611156117bf5760405162461bcd60e51b815260206004820152602a60248201527f455243323938313a20726f79616c7479206665652077696c6c206578636565646044820152692073616c65507269636560b01b6064820152608401610a0d565b6001600160a01b0382166118155760405162461bcd60e51b815260206004820152601960248201527f455243323938313a20696e76616c6964207265636569766572000000000000006044820152606401610a0d565b604080518082019091526001600160a01b039092168083526001600160601b039091166020909201829052600160a01b90910217600055565b6000818152600460205260409020546001600160a01b03166116cd5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a0d565b600081815260066020526040902080546001600160a01b0319166001600160a01b03841690811790915581906118e282611034565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600c546001600160a01b031633146111fa5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a0d565b60008061198183611034565b9050806001600160a01b0316846001600160a01b031614806119c857506001600160a01b0380821660009081526007602090815260408083209388168352929052205460ff165b806119ec5750836001600160a01b03166119e184610972565b6001600160a01b0316145b949350505050565b826001600160a01b0316611a0782611034565b6001600160a01b031614611a2d5760405162461bcd60e51b8152600401610a0d90612bc9565b6001600160a01b038216611a8f5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a0d565b611a9c8383836001611d99565b826001600160a01b0316611aaf82611034565b6001600160a01b031614611ad55760405162461bcd60e51b8152600401610a0d90612bc9565b600081815260066020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260058552838620805460001901905590871680865283862080546001019055868652600490945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6108dc828260405180602001604052806000815250611da5565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611c325760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a0d565b6001600160a01b03838116600081815260076020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611caa8484846119f4565b611cb684848484611dd8565b610e3a5760405162461bcd60e51b8152600401610a0d90612c0e565b6060601080546108ef9061291d565b60606000611cee83611ed9565b600101905060008167ffffffffffffffff811115611d0e57611d0e612809565b6040519080825280601f01601f191660200182016040528015611d38576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611d4257509392505050565b60006001600160e01b0319821663780e9d6360e01b14806108c357506108c382611fb1565b610e3a84848484611ff1565b611daf8383612125565b611dbc6000848484611dd8565b610aae5760405162461bcd60e51b8152600401610a0d90612c0e565b60006001600160a01b0384163b15611ece57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611e1c903390899088908890600401612c60565b6020604051808303816000875af1925050508015611e57575060408051601f3d908101601f19168201909252611e5491810190612c9d565b60015b611eb4573d808015611e85576040519150601f19603f3d011682016040523d82523d6000602084013e611e8a565b606091505b508051600003611eac5760405162461bcd60e51b8152600401610a0d90612c0e565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506119ec565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611f185772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611f44576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611f6257662386f26fc10000830492506010015b6305f5e1008310611f7a576305f5e100830492506008015b6127108310611f8e57612710830492506004015b60648310611fa0576064830492506002015b600a83106108c35760010192915050565b60006001600160e01b031982166380ac58cd60e01b1480611fe257506001600160e01b03198216635b5e139f60e01b145b806108c357506108c3826122be565b60018111156120605760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e7365637574697665207472604482015274185b9cd9995c9cc81b9bdd081cdd5c1c1bdc9d1959605a1b6064820152608401610a0d565b816001600160a01b0385166120bc576120b781600a80546000838152600b60205260408120829055600182018355919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80155565b6120df565b836001600160a01b0316856001600160a01b0316146120df576120df85826122f3565b6001600160a01b0384166120fb576120f681612390565b61211e565b846001600160a01b0316846001600160a01b03161461211e5761211e848261243f565b5050505050565b6001600160a01b03821661217b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a0d565b6000818152600460205260409020546001600160a01b0316156121e05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a0d565b6121ee600083836001611d99565b6000818152600460205260409020546001600160a01b0316156122535760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a0d565b6001600160a01b038216600081815260056020908152604080832080546001019055848352600490915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160e01b0319821663152a902d60e11b14806108c357506301ffc9a760e01b6001600160e01b03198316146108c3565b6000600161230084611162565b61230a9190612cba565b60008381526009602052604090205490915080821461235d576001600160a01b03841660009081526008602090815260408083208584528252808320548484528184208190558352600990915290208190555b5060009182526009602090815260408084208490556001600160a01b039094168352600881528383209183525290812055565b600a546000906123a290600190612cba565b6000838152600b6020526040812054600a80549394509092849081106123ca576123ca612a1f565b9060005260206000200154905080600a83815481106123eb576123eb612a1f565b6000918252602080832090910192909255828152600b9091526040808220849055858252812055600a80548061242357612423612ccd565b6001900381819060005260206000200160009055905550505050565b600061244a83611162565b6001600160a01b039093166000908152600860209081526040808320868452825280832085905593825260099052919091209190915550565b6001600160e01b0319811681146116cd57600080fd5b6000602082840312156124ab57600080fd5b813561162581612483565b6001600160a01b03811681146116cd57600080fd5b600080604083850312156124de57600080fd5b82356124e9816124b6565b915060208301356001600160601b038116811461250557600080fd5b809150509250929050565b60005b8381101561252b578181015183820152602001612513565b50506000910152565b6000815180845261254c816020860160208601612510565b601f01601f19169290920160200192915050565b6020815260006116256020830184612534565b60006020828403121561258557600080fd5b5035919050565b6000806040838503121561259f57600080fd5b82356125aa816124b6565b946020939093013593505050565b6000602082840312156125ca57600080fd5b8135611625816124b6565b6000806000606084860312156125ea57600080fd5b83356125f5816124b6565b92506020840135612605816124b6565b929592945050506040919091013590565b6000806040838503121561262957600080fd5b50508035926020909101359150565b6000806040838503121561264b57600080fd5b823591506020830135612505816124b6565b803560ff8116811461266e57600080fd5b919050565b60006020828403121561268557600080fd5b6116258261265d565b600080602083850312156126a157600080fd5b823567ffffffffffffffff808211156126b957600080fd5b818501915085601f8301126126cd57600080fd5b8135818111156126dc57600080fd5b8660208285010111156126ee57600080fd5b60209290920196919550909350505050565b80151581146116cd57600080fd5b60006020828403121561272057600080fd5b813561162581612700565b6000806040838503121561273e57600080fd5b6127478361265d565b91506020830135612505816124b6565b6000806040838503121561276a57600080fd5b8235612775816124b6565b9150602083013561250581612700565b60008060006040848603121561279a57600080fd5b833567ffffffffffffffff808211156127b257600080fd5b818601915086601f8301126127c657600080fd5b8135818111156127d557600080fd5b8760208260051b85010111156127ea57600080fd5b602092830195509350612800918601905061265d565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561283557600080fd5b8435612840816124b6565b93506020850135612850816124b6565b925060408501359150606085013567ffffffffffffffff8082111561287457600080fd5b818701915087601f83011261288857600080fd5b81358181111561289a5761289a612809565b604051601f8201601f19908116603f011681019083821181831017156128c2576128c2612809565b816040528281528a60208487010111156128db57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561291257600080fd5b8235612747816124b6565b600181811c9082168061293157607f821691505b60208210810361295157634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176108c3576108c36129a4565b6000826129ee57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156108c3576108c36129a4565b60ff82811682821603908111156108c3576108c36129a4565b634e487b7160e01b600052603260045260246000fd5b601f821115610aae576000816000526020600020601f850160051c81016020861015612a5e5750805b601f850160051c820191505b81811015612a7d57828155600101612a6a565b505050505050565b67ffffffffffffffff831115612a9d57612a9d612809565b612ab183612aab835461291d565b83612a35565b6000601f841160018114612ae55760008515612acd5750838201355b600019600387901b1c1916600186901b17835561211e565b600083815260209020601f19861690835b82811015612b165786850135825560209485019460019092019101612af6565b5086821015612b335760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b600060208284031215612b5757600080fd5b5051919050565b600060208284031215612b7057600080fd5b815161162581612700565b600060ff821660ff8103612b9157612b916129a4565b60010192915050565b60008351612bac818460208801612510565b835190830190612bc0818360208801612510565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612c9390830184612534565b9695505050505050565b600060208284031215612caf57600080fd5b815161162581612483565b818103818111156108c3576108c36129a4565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220cebebba03af090d4944bc50b7385d5804dc533cd03abe44fde970ebd6db3f22264736f6c6343000817003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f466f6d6f42756c6c436c756250465000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007464f4d4f50465000000000000000000000000000000000000000000000000000