0 txs
0 calls
constructor
constructor(address minterFilter_, address allowedSeaDrop_, address genArt721Core_, uint256 projectId_)
functions
allowedSeaDrop
viewfunction allowedSeaDrop() view returns (address)
baseURI
viewfunction baseURI() view returns (string)
contractURI
purefunction contractURI() pure returns (string)
genArt721Core
viewfunction genArt721Core() view returns (address)
getMintStats
viewfunction getMintStats(address minter) view returns (uint256 minterNumMinted_, uint256 currentTotalSupply, uint256 maxSupply_)
localMaxSupply
viewfunction localMaxSupply() view returns (uint256)
maxSupply
viewfunction maxSupply() view returns (uint256)
minterFilter
viewfunction minterFilter() view returns (address)
minterFilterAddress
viewfunction minterFilterAddress() view returns (address)
minterNumMinted
viewfunction minterNumMinted(address) view returns (uint256)
minterType
viewfunction minterType() view returns (string)
owner
viewfunction owner() view returns (address)
projectId
viewfunction projectId() view returns (uint256)
provenanceHash
purefunction provenanceHash() pure returns (bytes32)
royaltyAddress
viewfunction royaltyAddress() view returns (address)
royaltyBasisPoints
viewfunction royaltyBasisPoints() view returns (uint256)
royaltyInfo
viewfunction royaltyInfo(uint256 tokenId, uint256 salePrice) view returns (address receiver, uint256 royaltyAmount)
setBaseURI
purefunction setBaseURI(string) pure
setContractURI
purefunction setContractURI(string) pure
setProvenanceHash
purefunction setProvenanceHash(bytes32) pure
setRoyaltyInfo
purefunction setRoyaltyInfo(tuple) pure
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
updateAllowedSeaDrop
purefunction updateAllowedSeaDrop(address[]) pure
mintSeaDrop
nonpayablefunction mintSeaDrop(address minter, uint256 quantity)
multiConfigure
nonpayablefunction multiConfigure(tuple config)
renounceOwnership
nonpayablefunction renounceOwnership()
setMaxSupply
nonpayablefunction setMaxSupply(uint256 newMaxSupply)
syncOwnerToArtistAddress
nonpayablefunction syncOwnerToArtistAddress()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateAllowedFeeRecipient
nonpayablefunction updateAllowedFeeRecipient(address seaDropImpl, address feeRecipient, bool allowed)
updateAllowList
nonpayablefunction updateAllowList(address seaDropImpl, tuple allowListData)
updateCreatorPayoutAddress
nonpayablefunction updateCreatorPayoutAddress(address seaDropImpl, address payoutAddress)
updateDropURI
nonpayablefunction updateDropURI(address seaDropImpl, string dropURI)
updatePayer
nonpayablefunction updatePayer(address seaDropImpl, address payer, bool allowed)
updatePublicDrop
nonpayablefunction updatePublicDrop(address seaDropImpl, tuple publicDrop)
updateSignedMintValidationParams
nonpayablefunction updateSignedMintValidationParams(address seaDropImpl, address signer, tuple signedMintValidationParams)
updateTokenGatedDrop
nonpayablefunction updateTokenGatedDrop(address seaDropImpl, address allowedNftToken, tuple dropStage)
events
AllowedSeaDropUpdated
event AllowedSeaDropUpdated(address[] allowedSeaDrop)
BatchMetadataUpdate
event BatchMetadataUpdate(uint256 _fromTokenId, uint256 _toTokenId)
ContractURIUpdated
event ContractURIUpdated(string newContractURI)
MaxSupplyUpdated
event MaxSupplyUpdated(uint256 newMaxSupply)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
ProvenanceHashUpdated
event ProvenanceHashUpdated(bytes32 previousHash, bytes32 newHash)
RoyaltyInfoUpdated
event RoyaltyInfoUpdated(address receiver, uint256 bps)
SeaDropShimForContract
event SeaDropShimForContract(address nftContract)
SeaDropTokenDeployed
event SeaDropTokenDeployed()
errors
CannotExceedMaxSupplyOfUint64
error CannotExceedMaxSupplyOfUint64(uint256 newMaxSupply)
InvalidRoyaltyBasisPoints
error InvalidRoyaltyBasisPoints(uint256 basisPoints)
MintQuantityExceedsMaxSupply
error MintQuantityExceedsMaxSupply(uint256 total, uint256 maxSupply)
NewMaxSupplyCannotBeLessThenTotalMinted
error NewMaxSupplyCannotBeLessThenTotalMinted(uint256 got, uint256 totalMinted)
OnlyAllowedSeaDrop
error OnlyAllowedSeaDrop()
ProvenanceHashCannotBeSetAfterMintStarted
error ProvenanceHashCannotBeSetAfterMintStarted()
RoyaltyAddressCannotBeZeroAddress
error RoyaltyAddressCannotBeZeroAddress()
SignersMismatch
error SignersMismatch()
TokenGatedMismatch
error TokenGatedMismatch()
creation bytecode
0x6101006040523480156200001257600080fd5b5060405162003542380380620035428339810160408190526200003591620001a9565b620000463362000140565b62000140565b600180556001600160a01b0384811660e05283811660a052821660c0819052608082905260405163a47d29cb60e01b815260048101839052620000d1919063a47d29cb90602401602060405180830381865afa158015620000ab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000040919062000203565b6040517fd7aca75208b9be5ffc04c6a01922020ffd62b55e68e502e317f5344960279af890600090a16040516001600160a01b03831681527f4ab17a70e58926b534bd6e786ef71405882bfb6480a8e71f4c983412cf432a289060200160405180910390a1505050506200022a565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620001a657600080fd5b50565b60008060008060808587031215620001c057600080fd5b8451620001cd8162000190565b6020860151909450620001e08162000190565b6040860151909350620001f38162000190565b6060959095015193969295505050565b6000602082840312156200021657600080fd5b8151620002238162000190565b9392505050565b60805160a05160c05160e05161324b620002f7600039600081816101e90152818161047e0152610bea0152600081816104a7015281816106640152818161075a015281816108cc01528181610bbc01528181610cdd01528181611acd01528181611c9801528181611e740152611fa20152600081816103ad015281816105cf0152611d920152600081816102a101528181610727015281816108a201528181610b9601528181610cb401528181611aa401528181611c7201528181611e410152611f7c015261324b6000f3fe608060405234801561001057600080fd5b50600436106101b75760003560e01c806301ffc9a7146101bc57806308d94188146101e4578063099b6bfa146102185780630c59d1fc1461022d5780631b73593c146102445780632a55205a146102575780633680620d146102895780633fafa1271461029c57806342260b5d146102c357806344dae42c146102cb57806348697249146102de57806348a4c101146102e6578063511aa644146102f957806355f804b31461030c5780636074eb6c1461031f57806360c308b61461033f57806364869dad1461035257806366251b69146103655780636c0360eb146103785780636f8b44b01461038d578063715018a6146103a057806374fe600b146103a85780637a05bc82146103cf5780637bc2be76146103e2578063840e15d4146103f55780638da5cb5b14610423578063911f456b1461042b578063938e3d7b1461043e578063ad2f852a14610451578063c6ab67a314610459578063cb743ba814610461578063d5abeb0114610474578063dd85582f1461047c578063e19133e2146104a2578063e8a3d485146104c9578063e9d1e8ac146104d1578063f2fde38b14610505575b600080fd5b6101cf6101ca366004612089565b610518565b60405190151581526020015b60405180910390f35b61020b7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101db91906120b3565b61022b6102263660046120c7565b610585565b005b61023660035481565b6040519081526020016101db565b61022b6102523660046120f5565b6105a6565b61026a610265366004612136565b61063a565b604080516001600160a01b0390931683526020830191909152016101db565b61022b610297366004612158565b6106da565b6102367f000000000000000000000000000000000000000000000000000000000000000081565b610236610718565b61022b6102d93660046121ae565b610809565b61022b610893565b61022b6102f43660046121e4565b610946565b61022b6103073660046122ea565b6109bd565b61022b61031a3660046123ff565b6109fd565b61023661032d366004612440565b60026020526000908152604090205481565b61022b61034d36600461245d565b610a15565b61022b6103603660046124d1565b610a7f565b61022b6103733660046124fd565b610c67565b610380610ca5565b6040516101db919061254f565b61022b61039b3660046120c7565b610d59565b61022b610e46565b61020b7f000000000000000000000000000000000000000000000000000000000000000081565b61022b6103dd366004612582565b610e58565b61022b6103f03660046125d6565b610e98565b610408610403366004612440565b610ed8565b604080519384526020840192909252908201526060016101db565b61020b610f1a565b61022b61043936600461262b565b610f29565b61022b61044c3660046123ff565b611a7d565b61020b611a95565b610236611b4b565b61022b61046f3660046121e4565b611b65565b610236611ba5565b7f000000000000000000000000000000000000000000000000000000000000000061020b565b61020b7f000000000000000000000000000000000000000000000000000000000000000081565b610380611bbf565b6103806040518060400160405280601581526020017453656144726f7058417274426c6f636b735368696d60581b81525081565b61022b610513366004612440565b611bd9565b60006001600160e01b03198216630c487f4760e11b148061054957506001600160e01b03198216639c15441560e01b145b8061056457506001600160e01b0319821663152a902d60e11b145b8061057f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60405162461bcd60e51b815260040161059d90612666565b60405180910390fd5b6105af33611c4f565b6105b882611d90565b6040516301308e6560e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906301308e659061060490849060040161277b565b600060405180830381600087803b15801561061e57600080fd5b505af1158015610632573d6000803e3d6000fd5b505050505050565b60405163152a902d60e11b8152600481018390526024810182905260009081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632a55205a906044016040805180830381865afa1580156106aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ce9190612794565b915091505b9250929050565b6106e333611c4f565b6106ec82611d90565b60405163ebb4a55f60e01b81526001600160a01b0383169063ebb4a55f90610604908490600401612905565b60405163050efbbd60e11b81527f0000000000000000000000000000000000000000000000000000000000000000600482015260009081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690630a1df77a9060240161016060405180830381865afa1580156107a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c6919061293d565b905080610120015161ffff168160e0015161ffff16826020015160ff1660646107ef9190612a2d565b6107f99190612a44565b6108039190612a44565b91505090565b60405162461bcd60e51b815260206004820152605360248201527f53656144726f7058417274426c6f636b735368696d3a20726f79616c7469657360448201527f206d75737420626520636f6e66696775726564206f6e207468652041727420426064820152721b1bd8dadcc818dbdc994818dbdb9d1c9858dd606a1b608482015260a40161059d565b60405163a47d29cb60e01b81527f00000000000000000000000000000000000000000000000000000000000000006004820152610944907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa15801561091b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093f9190612a57565b611de2565b565b61094f33611c4f565b61095883611d90565b604051638e7d1e4360e01b81526001600160a01b03841690638e7d1e43906109869085908590600401612a74565b600060405180830381600087803b1580156109a057600080fd5b505af11580156109b4573d6000803e3d6000fd5b50505050505050565b6109c633611c4f565b6109cf83611d90565b6040516309a7002f60e31b81526001600160a01b03841690634d380178906109869085908590600401612af9565b60405162461bcd60e51b815260040161059d90612b17565b60405162461bcd60e51b815260206004820152603960248201527f53656144726f7058417274426c6f636b735368696d3a20757064617465416c6c6044820152781bddd95914d958511c9bdc081b9bdd081cdd5c1c1bdc9d1959603a1b606482015260840161059d565b600260015403610ad15760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161059d565b6002600155610adf33611d90565b600080610aea611e32565b915091506000610afc82600354611eed565b905080610b098585612a44565b1115610b3d57610b198484612a44565b60405163384b48c560e21b815260048101919091526024810182905260440161059d565b5050506001600160a01b03821660009081526002602052604081208054839290610b68908490612a44565b90915550600090505b81811015610c5e576040516117cd60e21b81526001600160a01b0384811660048301527f000000000000000000000000000000000000000000000000000000000000000060248301527f0000000000000000000000000000000000000000000000000000000000000000811660448301523360648301527f00000000000000000000000000000000000000000000000000000000000000001690615f34906084016020604051808303816000875af1158015610c31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c559190612b8e565b50600101610b71565b50506001805550565b610c7033611c4f565b610c7982611d90565b60405163024e71b760e31b81526001600160a01b038316906312738db8906106049084906004016120b3565b604051632d9c020560e01b81527f000000000000000000000000000000000000000000000000000000000000000060048201526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632d9c020590602401600060405180830381865afa158015610d2c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d549190810190612ba7565b905090565b610d6233611c4f565b6000610d6c611e32565b91505080821115610e0a5760405162461bcd60e51b815260206004820152605c60248201527f53656144726f7058417274426c6f636b735368696d3a204f6e6c79206e65774d60448201527f6178537570706c79206c7465206d617820696e766f636174696f6e73206f6e2060648201527b1d1a1948105c9d08109b1bd8dadcc818dbdc994818dbdb9d1c9858dd60221b608482015260a40161059d565b60038290556040518281527f7810bd47de260c3e9ee10061cf438099dd12256c79485f12f94dbccc981e806c9060200160405180910390a15050565b610e4e611f0e565b6109446000611de2565b610e6133611c4f565b610e6a83611d90565b60405163b957d0cb60e01b81526001600160a01b0384169063b957d0cb906109869085908590600401612c53565b610ea133611c4f565b610eaa83611d90565b604051637ecd591560e11b81526001600160a01b0384169063fd9ab22a906109869085908590600401612d39565b6001600160a01b03811660009081526002602052604081205490808080610efd611e32565b91509150819350610f1081600354611eed565b9496939550505050565b6000546001600160a01b031690565b610f3233611f6d565b803515610f8b576040516306f8b44b60e41b8152813560048201523090636f8b44b090602401600060405180830381600087803b158015610f7257600080fd5b505af1158015610f86573d6000803e3d6000fd5b505050505b610f986020820182612d57565b159050610fb75760405162461bcd60e51b815260040161059d90612b17565b610fc46040820182612d57565b159050610fe35760405162461bcd60e51b815260040161059d90612d9d565b610ff360c0820160a08301612e13565b65ffffffffffff1615158061101e575061101360e0820160c08301612e13565b65ffffffffffff1615155b1561108d5730631b73593c6110396080840160608501612440565b836080016040518363ffffffff1660e01b815260040161105a929190612e2e565b600060405180830381600087803b15801561107457600080fd5b505af1158015611088573d6000803e3d6000fd5b505050505b61109b610140820182612d57565b1590506111175730637a05bc826110b86080840160608501612440565b6110c6610140850185612d57565b6040518463ffffffff1660e01b81526004016110e493929190612e4b565b600060405180830381600087803b1580156110fe57600080fd5b505af1158015611112573d6000803e3d6000fd5b505050505b6000611127610160830183612e79565b35146111a15730633680620d6111436080840160608501612440565b611151610160850185612e79565b6040518363ffffffff1660e01b815260040161116e929190612e99565b600060405180830381600087803b15801561118857600080fd5b505af115801561119c573d6000803e3d6000fd5b505050505b60006111b56101a083016101808401612440565b6001600160a01b03161461124c57306366251b696111d96080840160608501612440565b6111eb6101a085016101808601612440565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b15801561123357600080fd5b505af1158015611247573d6000803e3d6000fd5b505050505b6101a08101351561126f5760405162461bcd60e51b815260040161059d90612666565b600061127f6101c0830183612ebd565b905011156113495760005b6112986101c0830183612ebd565b905081101561134757306348a4c1016112b76080850160608601612440565b6112c56101c0860186612ebd565b858181106112d5576112d5612f06565b90506020020160208101906112ea9190612440565b60016040518463ffffffff1660e01b815260040161130a93929190612f1c565b600060405180830381600087803b15801561132457600080fd5b505af1158015611338573d6000803e3d6000fd5b5050505080600101905061128a565b505b60006113596101e0830183612ebd565b905011156114235760005b6113726101e0830183612ebd565b905081101561142157306348a4c1016113916080850160608601612440565b61139f6101e0860186612ebd565b858181106113af576113af612f06565b90506020020160208101906113c49190612440565b60006040518463ffffffff1660e01b81526004016113e493929190612f1c565b600060405180830381600087803b1580156113fe57600080fd5b505af1158015611412573d6000803e3d6000fd5b50505050806001019050611364565b505b6000611433610200830183612ebd565b905011156114fd5760005b61144c610200830183612ebd565b90508110156114fb573063cb743ba861146b6080850160608601612440565b611479610200860186612ebd565b8581811061148957611489612f06565b905060200201602081019061149e9190612440565b60016040518463ffffffff1660e01b81526004016114be93929190612f1c565b600060405180830381600087803b1580156114d857600080fd5b505af11580156114ec573d6000803e3d6000fd5b5050505080600101905061143e565b505b600061150d610220830183612ebd565b905011156115d75760005b611526610220830183612ebd565b90508110156115d5573063cb743ba86115456080850160608601612440565b611553610220860186612ebd565b8581811061156357611563612f06565b90506020020160208101906115789190612440565b60006040518463ffffffff1660e01b815260040161159893929190612f1c565b600060405180830381600087803b1580156115b257600080fd5b505af11580156115c6573d6000803e3d6000fd5b50505050806001019050611518565b505b60006115e7610260830183612f40565b90501115611712576115fd610240820182612ebd565b905061160d610260830183612f40565b90501461162d5760405163b81aa63960e01b815260040160405180910390fd5b60005b61163e610260830183612f40565b90508110156117105730637bc2be7661165d6080850160608601612440565b61166b610240860186612ebd565b8581811061167b5761167b612f06565b90506020020160208101906116909190612440565b61169e610260870187612f40565b868181106116ae576116ae612f06565b905061010002016040518463ffffffff1660e01b81526004016116d393929190612f89565b600060405180830381600087803b1580156116ed57600080fd5b505af1158015611701573d6000803e3d6000fd5b50505050806001019050611630565b505b6000611722610280830183612ebd565b9050111561182d5760005b61173b610280830183612ebd565b905081101561182b576040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915230637bc2be7661179b6080860160608701612440565b6117a9610280870187612ebd565b868181106117b9576117b9612f06565b90506020020160208101906117ce9190612440565b846040518463ffffffff1660e01b81526004016117ed93929190612faf565b600060405180830381600087803b15801561180757600080fd5b505af115801561181b573d6000803e3d6000fd5b505050508160010191505061172d565b505b600061183d6102c0830183613065565b90501115611967576118536102a0820182612ebd565b90506118636102c0830183613065565b905014611883576040516374ef6df760e01b815260040160405180910390fd5b60005b6118946102c0830183613065565b9050811015611965573063511aa6446118b36080850160608601612440565b6118c16102a0860186612ebd565b858181106118d1576118d1612f06565b90506020020160208101906118e69190612440565b6118f46102c0870187613065565b8681811061190457611904612f06565b905060e002016040518463ffffffff1660e01b8152600401611928939291906130ad565b600060405180830381600087803b15801561194257600080fd5b505af1158015611956573d6000803e3d6000fd5b50505050806001019050611886565b505b60006119776102e0830183612ebd565b90501115611a7a5760005b6119906102e0830183612ebd565b9050811015611a78576040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091523063511aa6446119e86080860160608701612440565b6119f66102e0870187612ebd565b86818110611a0657611a06612f06565b9050602002016020810190611a1b9190612440565b846040518463ffffffff1660e01b8152600401611a3a93929190613166565b600060405180830381600087803b158015611a5457600080fd5b505af1158015611a68573d6000803e3d6000fd5b5050505081600101915050611982565b505b50565b60405162461bcd60e51b815260040161059d90612d9d565b60405163050efbbd60e11b81527f000000000000000000000000000000000000000000000000000000000000000060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690630a1df77a9060240161016060405180830381865afa158015611b1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b41919061293d565b6101400151905090565b600060405162461bcd60e51b815260040161059d90612666565b611b6e33611c4f565b611b7783611d90565b604051633f952e6560e11b81526001600160a01b03841690637f2a5cca906109869085908590600401612a74565b600080611bb0611e32565b91505061080381600354611eed565b606060405162461bcd60e51b815260040161059d90612d9d565b611be1611f0e565b6001600160a01b038116611c465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161059d565b611a7a81611de2565b6001600160a01b0381163014801590611d21575060405163a47d29cb60e01b81527f000000000000000000000000000000000000000000000000000000000000000060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015611ce7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d0b9190612a57565b6001600160a01b0316816001600160a01b031614155b15611a7a5760405162461bcd60e51b815260206004820152604560248201526000805160206131f683398151915260448201527f617274697374206f722073656c66206d61792063616c6c20746869732066756e60648201526431ba34b7b760d91b608482015260a40161059d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614611a7a576040516315e26ff360e01b815260040160405180910390fd5b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b604051630ea5613f60e01b81527f0000000000000000000000000000000000000000000000000000000000000000600482015260009081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690630ea5613f9060240160c060405180830381865afa158015611ebb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611edf919061318c565b509396929550919350505050565b6000811580611efb57508282115b611f055781611f07565b825b9392505050565b33611f17610f1a565b6001600160a01b0316146109445760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161059d565b60405163a47d29cb60e01b81527f000000000000000000000000000000000000000000000000000000000000000060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015611ff1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120159190612a57565b6001600160a01b0316816001600160a01b031614611a7a5760405162461bcd60e51b815260206004820152603d60248201526000805160206131f683398151915260448201527f617274697374206d61792063616c6c20746869732066756e6374696f6e000000606482015260840161059d565b60006020828403121561209b57600080fd5b81356001600160e01b031981168114611f0757600080fd5b6001600160a01b0391909116815260200190565b6000602082840312156120d957600080fd5b5035919050565b6001600160a01b0381168114611a7a57600080fd5b60008082840360e081121561210957600080fd5b8335612114816120e0565b925060c0601f198201121561212857600080fd5b506020830190509250929050565b6000806040838503121561214957600080fd5b50508035926020909101359150565b6000806040838503121561216b57600080fd5b8235612176816120e0565b915060208301356001600160401b0381111561219157600080fd5b8301606081860312156121a357600080fd5b809150509250929050565b6000604082840312156121c057600080fd5b50919050565b8015158114611a7a57600080fd5b80356121df816121c6565b919050565b6000806000606084860312156121f957600080fd5b8335612204816120e0565b92506020840135612214816120e0565b91506040840135612224816121c6565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b03811182821017156122675761226761222f565b60405290565b60405161016081016001600160401b03811182821017156122675761226761222f565b80356001600160501b03811681146121df57600080fd5b803562ffffff811681146121df57600080fd5b803564ffffffffff811681146121df57600080fd5b61ffff81168114611a7a57600080fd5b80356121df816122cf565b600080600083850361012081121561230157600080fd5b843561230c816120e0565b9350602085013561231c816120e0565b925060e0603f198201121561233057600080fd5b50612339612245565b61234560408601612290565b8152612353606086016122a7565b6020820152612364608086016122ba565b604082015261237560a086016122ba565b606082015261238660c086016122ba565b608082015260e0850135612399816122cf565b60a08201526101008501356123ad816122cf565b60c082015292959194509192509050565b60008083601f8401126123d057600080fd5b5081356001600160401b038111156123e757600080fd5b6020830191508360208285010111156106d357600080fd5b6000806020838503121561241257600080fd5b82356001600160401b0381111561242857600080fd5b612434858286016123be565b90969095509350505050565b60006020828403121561245257600080fd5b8135611f07816120e0565b6000806020838503121561247057600080fd5b82356001600160401b038082111561248757600080fd5b818501915085601f83011261249b57600080fd5b8135818111156124aa57600080fd5b8660208260051b85010111156124bf57600080fd5b60209290920196919550909350505050565b600080604083850312156124e457600080fd5b82356124ef816120e0565b946020939093013593505050565b6000806040838503121561251057600080fd5b823561251b816120e0565b915060208301356121a3816120e0565b60005b8381101561254657818101518382015260200161252e565b50506000910152565b602081526000825180602084015261256e81604085016020870161252b565b601f01601f19169190910160400192915050565b60008060006040848603121561259757600080fd5b83356125a2816120e0565b925060208401356001600160401b038111156125bd57600080fd5b6125c9868287016123be565b9497909650939450505050565b60008060008385036101408112156125ed57600080fd5b84356125f8816120e0565b93506020850135612608816120e0565b9250610100603f198201121561261d57600080fd5b506040840190509250925092565b60006020828403121561263d57600080fd5b81356001600160401b0381111561265357600080fd5b82016103008185031215611f0757600080fd5b6020808252604c908201527f53656144726f7058417274426c6f636b735368696d3a2070726f76656e616e6360408201527f652068617368206e6f7420737570706f72746564206f6e2041727420426c6f6360608201526b6b7320636f6e74726163747360a01b608082015260a00190565b803565ffffffffffff811681146121df57600080fd5b6001600160501b036126ff82612290565b16825261270e602082016126d8565b65ffffffffffff80821660208501528061272a604085016126d8565b16604085015250506060810135612740816122cf565b61ffff908116606084015260808201359061275a826122cf565b16608083015260a081013561276e816121c6565b80151560a0840152505050565b60c0810161057f82846126ee565b80516121df816120e0565b600080604083850312156127a757600080fd5b82516127b2816120e0565b6020939093015192949293505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000808335601e1984360301811261280257600080fd5b83016020810192503590506001600160401b0381111561282157600080fd5b8036038213156106d357600080fd5b60006060830182358452602080840135601e1985360301811261285257600080fd5b84016020810190356001600160401b0381111561286e57600080fd5b8060051b80360383131561288157600080fd5b606060208901529381905260809387018401938290880160005b838110156128d557898703607f190182526128b683866127eb565b6128c18982846127c2565b98505050918501919085019060010161289b565b5050505050506128e860408401846127eb565b85830360408701526128fb8382846127c2565b9695505050505050565b602081526000611f076020830184612830565b60ff81168114611a7a57600080fd5b80516121df81612918565b80516121df816122cf565b6000610160828403121561295057600080fd5b61295861226d565b61296183612789565b815261296f60208401612927565b602082015261298060408401612789565b604082015261299160608401612927565b60608201526129a260808401612789565b60808201526129b360a08401612927565b60a08201526129c460c08401612789565b60c08201526129d560e08401612932565b60e08201526101006129e8818501612789565b908201526101206129fa848201612932565b90820152610140612a0c848201612789565b908201529392505050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761057f5761057f612a17565b8082018082111561057f5761057f612a17565b600060208284031215612a6957600080fd5b8151611f07816120e0565b6001600160a01b039290921682521515602082015260400190565b60018060501b03815116825262ffffff6020820151166020830152604081015164ffffffffff8082166040850152806060840151166060850152806080840151166080850152505060a081015161ffff80821660a08501528060c08401511660c085015250505050565b6001600160a01b03831681526101008101611f076020830184612a8f565b60208082526051908201527f53656144726f7058417274426c6f636b735368696d3a2062617365555249206d60408201527f75737420626520636f6e66696775726564206f6e207468652041727420426c6f60608201527018dadcc818dbdc994818dbdb9d1c9858dd607a1b608082015260a00190565b600060208284031215612ba057600080fd5b5051919050565b600060208284031215612bb957600080fd5b81516001600160401b0380821115612bd057600080fd5b818401915084601f830112612be457600080fd5b815181811115612bf657612bf661222f565b604051601f8201601f19908116603f01168101908382118183101715612c1e57612c1e61222f565b81604052828152876020848701011115612c3757600080fd5b612c4883602083016020880161252b565b979650505050505050565b602081526000612c676020830184866127c2565b949350505050565b803563ffffffff811681146121df57600080fd5b6001600160501b03612c9482612290565b1682526020810135612ca5816122cf565b61ffff166020830152612cba604082016126d8565b65ffffffffffff808216604085015280612cd6606085016126d8565b16606085015250506080810135612cec81612918565b60ff166080830152612d0060a08201612c6f565b63ffffffff1660a0830152612d1760c082016122df565b61ffff1660c0830152612d2c60e082016121d4565b80151560e0840152505050565b6001600160a01b03831681526101208101611f076020830184612c83565b6000808335601e19843603018112612d6e57600080fd5b8301803591506001600160401b03821115612d8857600080fd5b6020019150368190038213156106d357600080fd5b60208082526050908201527f53656144726f7058417274426c6f636b735368696d3a20636f6e74726163745560408201527f5249206e6f7420737570706f72746564206f6e207468652041727420426c6f6360608201526f1adcc818dbdc994818dbdb9d1c9858dd60821b608082015260a00190565b600060208284031215612e2557600080fd5b611f07826126d8565b6001600160a01b038316815260e08101611f0760208301846126ee565b6001600160a01b0384168152604060208201819052600090612e7090830184866127c2565b95945050505050565b60008235605e19833603018112612e8f57600080fd5b9190910192915050565b6001600160a01b0383168152604060208201819052600090612c6790830184612830565b6000808335601e19843603018112612ed457600080fd5b8301803591506001600160401b03821115612eee57600080fd5b6020019150600581901b36038213156106d357600080fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b039384168152919092166020820152901515604082015260600190565b6000808335601e19843603018112612f5757600080fd5b8301803591506001600160401b03821115612f7157600080fd5b6020019150600881901b36038213156106d357600080fd5b6001600160a01b038481168252831660208201526101408101612c676040830184612c83565b6001600160a01b038481168252831660208083019190915282516001600160501b03166040808401919091529083015161ffff166060808401919091529083015165ffffffffffff16608083015282015161014082019061301a60a084018265ffffffffffff169052565b50608083015160ff811660c08401525060a083015163ffffffff811660e08401525060c083015161ffff81166101008401525060e08301518015156101208401525b50949350505050565b6000808335601e1984360301811261307c57600080fd5b8301803591506001600160401b0382111561309657600080fd5b602001915060e0810236038213156106d357600080fd5b6001600160a01b0384811682528316602082015261012081016001600160501b036130d784612290565b16604083015262ffffff6130ed602085016122a7565b1660608301526130ff604084016122ba565b64ffffffffff80821660808501528061311a606087016122ba565b1660a08501528061312d608087016122ba565b1660c0850152505061314160a084016122df565b61ffff1660e083015261315660c084016122df565b61ffff811661010084015261305c565b6001600160a01b038481168252831660208201526101208101612c676040830184612a8f565b60008060008060008060c087890312156131a557600080fd5b865195506020870151945060408701516131be816121c6565b60608801519094506131cf816121c6565b608088015160a089015191945092506131e7816121c6565b80915050929550929550929556fe53656144726f7058417274426c6f636b735368696d3a204f6e6c792074686520a2646970667358221220cd4c661bfe4cdd79aa6b822c9ef034e4209ac28d50ba435346ccd072573a8e6864736f6c63430008160033000000000000000000000000a2ccfe293bc2cdd78d8166a82d1e18cd2148122b00000000000000000000000000005ea00ac477b1030ce78506496e8c2de24bf500000000000000000000000000000053a75735169ad44f6760c11f3d3d3b35440000000000000000000000000000000000000000000000000000000000000000