13.2k txs
53.9k calls
constructor
constructor(address _azukiAddress, uint256 _maxSupply, address _vrfCoordinator, address _linkToken, string initialName, string initialSymbol)
functions
azuki
viewfunction azuki() view returns (address)
azukiCanClaim
viewfunction azukiCanClaim(uint256) view returns (bool)
balanceOf
viewfunction balanceOf(address owner) view returns (uint256)
BATCH_SIZE
viewfunction BATCH_SIZE() view returns (uint256)
claimWindow
viewfunction claimWindow() view returns (uint128 startTime, uint128 endTime)
clRequestConfig
viewfunction clRequestConfig() view returns (bytes32 keyHash, uint64 subscriptionId, uint16 requestConfirmations, uint32 callbackGasLimit)
getApproved
viewfunction getApproved(uint256 tokenId) view returns (address)
isApprovedForAll
viewfunction isApprovedForAll(address owner, address operator) view returns (bool)
maxSupply
viewfunction maxSupply() view returns (uint256)
MIN_OWNERSHIP_TIME_FOR_CLAIM
viewfunction MIN_OWNERSHIP_TIME_FOR_CLAIM() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
ownerOf
viewfunction ownerOf(uint256 tokenId) view returns (address)
realOwner
viewfunction realOwner() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
symbol
viewfunction symbol() view returns (string)
tokenHasWonRaffle
viewfunction tokenHasWonRaffle(uint256) view returns (bool)
tokenURI
viewfunction tokenURI(uint256 tokenId) view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
winningAddresses
viewfunction winningAddresses(address) view returns (bool)
airdrop
nonpayablefunction airdrop(address[] receivers, uint256[] numAzukiTokens, uint256 chunkNum)
approve
nonpayablefunction approve(address to, uint256 tokenId)
claim
nonpayablefunction claim(uint256[] azukiTokenIds)
devClaim
nonpayablefunction devClaim(uint256 numAzukiTokens)
rawFulfillRandomWords
nonpayablefunction rawFulfillRandomWords(uint256 requestId, uint256[] randomWords)
renounceOwnership
nonpayablefunction renounceOwnership()
requestRaffleWinner
nonpayablefunction requestRaffleWinner() returns (uint256)
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId, bytes _data)
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId)
setApprovalForAll
nonpayablefunction setApprovalForAll(address operator, bool approved)
setBaseURI
nonpayablefunction setBaseURI(string baseURI)
setCanClaim
nonpayablefunction setCanClaim(uint256[] azukiIds)
setClaimWindow
nonpayablefunction setClaimWindow(uint128 _startTime, uint128 _endTime)
setClRequestConfig
nonpayablefunction setClRequestConfig(bytes32 _keyHash, uint64 _subscriptionId, uint16 _requestConfirmations, uint32 _callbackGasLimit)
setNameAndSymbol
nonpayablefunction setNameAndSymbol(string _newName, string _newSymbol)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 tokenId)
transferLowerOwnership
nonpayablefunction transferLowerOwnership(address newOwner)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
transferRealOwnership
nonpayablefunction transferRealOwnership(address newRealOwner)
events
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)
RaffleWinner
event RaffleWinner(uint256 winningTokenId, address winningAddress, uint256 newTokenId)
Transfer
event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)
errors
AddressAlreadyWonOrOwner
error AddressAlreadyWonOrOwner()
ApprovalCallerNotOwnerNorApproved
error ApprovalCallerNotOwnerNorApproved()
ApprovalQueryForNonexistentToken
error ApprovalQueryForNonexistentToken()
ApprovalToCurrentOwner
error ApprovalToCurrentOwner()
ApproveToCaller
error ApproveToCaller()
AzukiNotOwnedLongEnough
error AzukiNotOwnedLongEnough()
BalanceQueryForZeroAddress
error BalanceQueryForZeroAddress()
BeanCannotBeClaimed
error BeanCannotBeClaimed()
ChunkHasBeenAirdropped
error ChunkHasBeenAirdropped()
ClaimWindowNotOpen
error ClaimWindowNotOpen()
InvalidChunk
error InvalidChunk()
MaxSupplyReached
error MaxSupplyReached()
MintToZeroAddress
error MintToZeroAddress()
MintZeroQuantity
error MintZeroQuantity()
MismatchedTokenOwner
error MismatchedTokenOwner()
OnlyCoordinatorCanFulfill
error OnlyCoordinatorCanFulfill(address have, address want)
OwnerQueryForNonexistentToken
error OwnerQueryForNonexistentToken()
RaffleWinnerIsContract
error RaffleWinnerIsContract()
TokenAlreadyWon
error TokenAlreadyWon()
TransferCallerNotOwnerNorApproved
error TransferCallerNotOwnerNorApproved()
TransferFromIncorrectOwner
error TransferFromIncorrectOwner()
TransferToNonERC721ReceiverImplementer
error TransferToNonERC721ReceiverImplementer()
TransferToZeroAddress
error TransferToZeroAddress()
URIQueryForNonexistentToken
error URIQueryForNonexistentToken()
creation bytecode
0x60e06040523480156200001157600080fd5b5060405162002c2d38038062002c2d83398101604081905262000034916200030e565b83604051806040016040528060058152602001642132b0b73d60d91b815250604051806040016040528060058152602001642122a0a72d60d91b81525081600290805190602001906200008992919062000198565b5080516200009f90600390602084019062000198565b50506000805550620000b13362000146565b60098054336001600160a01b031991821617909155606091821b6001600160601b03199081166080529188901b90911660c05260a08690526010805482166001600160a01b03878116919091179091556011805490921690851617905581516200012390601490602085019062000198565b5080516200013990601590602084019062000198565b5050505050505062000409565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054620001a690620003b6565b90600052602060002090601f016020900481019282620001ca576000855562000215565b82601f10620001e557805160ff191683800117855562000215565b8280016001018555821562000215579182015b8281111562000215578251825591602001919060010190620001f8565b506200022392915062000227565b5090565b5b8082111562000223576000815560010162000228565b80516001600160a01b03811681146200025657600080fd5b919050565b600082601f8301126200026c578081fd5b81516001600160401b0380821115620002895762000289620003f3565b604051601f8301601f19908116603f01168101908282118183101715620002b457620002b4620003f3565b81604052838152602092508683858801011115620002d0578485fd5b8491505b83821015620002f35785820183015181830184015290820190620002d4565b838211156200030457848385830101525b9695505050505050565b60008060008060008060c0878903121562000327578182fd5b62000332876200023e565b95506020870151945062000349604088016200023e565b935062000359606088016200023e565b60808801519093506001600160401b038082111562000376578384fd5b620003848a838b016200025b565b935060a08901519150808211156200039a578283fd5b50620003a989828a016200025b565b9150509295509295509295565b600181811c90821680620003cb57607f821691505b60208210811415620003ed57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b60805160601c60a05160c05160601c6127cb62000462600039600081816104b80152610da10152600081816105b5015281816108f3015281816115530152611854015260008181610a450152610a8701526127cb6000f3fe608060405234801561001057600080fd5b506004361061023d5760003560e01c80635a4462151161013b5780638da5cb5b116100b8578063c5d37ae11161007c578063c5d37ae11461055f578063c87b56dd1461059d578063d5abeb01146105b0578063e985e9c5146105d7578063f2fde38b1461061357600080fd5b80638da5cb5b146104fd57806395d89b411461050e5780639fd6afe314610516578063a22cb46514610539578063b88d4fde1461054c57600080fd5b806370a08231116100ff57806370a0823114610485578063715018a614610498578063731186eb146104a0578063738ca607146104b357806381a4cd00146104da57600080fd5b80635a446215146104165780635c7d9251146104295780636352211e1461043c5780636819bec51461044f5780636ba4c1381461047257600080fd5b80631fe543e3116101c957806342842e0e1161018d57806342842e0e1461036a57806349faa4d41461037d5780634b9796291461038557806354f0168f1461039857806355f804b31461040357600080fd5b80631fe543e31461031657806323b872dd146103295780632cff67701461033c57806333d66b5b1461034f578063412583df1461036257600080fd5b806309af3f9a1161021057806309af3f9a146102bf578063172801ac146102d257806318160ddd146102e55780631c4f5150146102fb5780631df270f31461030357600080fd5b806301ffc9a71461024257806306fdde031461026a578063081812fc1461027f578063095ea7b3146102aa575b600080fd5b6102556102503660046122a9565b610626565b60405190151581526020015b60405180910390f35b610272610678565b6040516102619190612589565b61029261028d36600461240e565b61072c565b6040516001600160a01b039091168152602001610261565b6102bd6102b836600461216d565b610770565b005b6102bd6102cd366004611fec565b6107fe565b6102bd6102e0366004612249565b61083d565b600154600054035b604051908152602001610261565b6102ed6108c4565b600954610292906001600160a01b031681565b6102bd61032436600461243e565b610a3a565b6102bd610337366004612040565b610ac2565b6102bd61034a366004611fec565b610acd565b6102bd61035d366004612209565b610b19565b6102ed607881565b6102bd610378366004612040565b610bb1565b6102ed600681565b6102bd6103933660046123dc565b610bcc565b6012546013546103cb919067ffffffffffffffff811690600160401b810461ffff1690600160501b900463ffffffff1684565b6040805194855267ffffffffffffffff909316602085015261ffff9091169183019190915263ffffffff166060820152608001610261565b6102bd6104113660046122e1565b610c0f565b6102bd610424366004612315565b610c75565b6102bd61043736600461240e565b610cbf565b61029261044a36600461240e565b610cf3565b61025561045d366004611fec565b600d6020526000908152604090205460ff1681565b6102bd610480366004612209565b610d05565b6102ed610493366004611fec565b610f0d565b6102bd610f5c565b6102bd6104ae366004612198565b610fc2565b6102927f000000000000000000000000000000000000000000000000000000000000000081565b6102556104e836600461240e565b600b6020526000908152604090205460ff1681565b6008546001600160a01b0316610292565b61027261111d565b61025561052436600461240e565b600c6020526000908152604090205460ff1681565b6102bd61054736600461213c565b611149565b6102bd61055a366004612080565b6111df565b600a5461057d906001600160801b0380821691600160801b90041682565b604080516001600160801b03938416815292909116602083015201610261565b6102726105ab36600461240e565b61122a565b6102ed7f000000000000000000000000000000000000000000000000000000000000000081565b6102556105e5366004612008565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6102bd610621366004611fec565b6112af565b60006001600160e01b031982166380ac58cd60e01b148061065757506001600160e01b03198216635b5e139f60e01b145b8061067257506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060148054610687906126a8565b1515905061069c57610697611377565b905090565b601480546106a9906126a8565b80601f01602080910402602001604051908101604052809291908181526020018280546106d5906126a8565b80156107225780601f106106f757610100808354040283529160200191610722565b820191906000526020600020905b81548152906001019060200180831161070557829003601f168201915b5050505050905090565b600061073782611386565b610754576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b600061077b82610cf3565b9050806001600160a01b0316836001600160a01b031614156107b05760405163250fdee360e21b815260040160405180910390fd5b336001600160a01b038216148015906107d057506107ce81336105e5565b155b156107ee576040516367d9dca160e11b815260040160405180910390fd5b6107f98383836113b1565b505050565b6009546001600160a01b031633146108315760405162461bcd60e51b81526004016108289061259c565b60405180910390fd5b61083a816112af565b50565b6009546001600160a01b031633146108675760405162461bcd60e51b81526004016108289061259c565b6012939093556013805463ffffffff909416600160501b026dffffffff000000000000000000001961ffff909316600160401b0269ffffffffffffffffffff1990951667ffffffffffffffff909416939093179390931716179055565b6009546000906001600160a01b031633146108f15760405162461bcd60e51b81526004016108289061259c565b7f000000000000000000000000000000000000000000000000000000000000000061091f6001546000540390565b61092a90600161261a565b11156109495760405163d05cb60960e01b815260040160405180910390fd5b6040805160808101825260125480825260135467ffffffffffffffff811660208401819052600160401b820461ffff16848601819052600160501b90920463ffffffff166060850181905260105495516305d3b1d360e41b815260048101949094526024840191909152604483019190915260648201526001608482015290916000916001600160a01b0390911690635d3b1d309060a401602060405180830381600087803b1580156109fb57600080fd5b505af1158015610a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a339190612426565b9250505090565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610ab45760405163073e64fd60e21b81523360048201526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610828565b610abe828261140d565b5050565b6107f9838383611656565b6009546001600160a01b03163314610af75760405162461bcd60e51b81526004016108289061259c565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b6009546001600160a01b03163314610b435760405162461bcd60e51b81526004016108289061259c565b60005b818110156107f9576001600b6000858585818110610b7457634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060006101000a81548160ff02191690831515021790555080610baa906126e3565b9050610b46565b6107f9838383604051806020016040528060008152506111df565b6009546001600160a01b03163314610bf65760405162461bcd60e51b81526004016108289061259c565b6001600160801b03908116600160801b02911617600a55565b6008546001600160a01b03163314610c695760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610828565b6107f9600f8383611ead565b6009546001600160a01b03163314610c9f5760405162461bcd60e51b81526004016108289061259c565b610cab60148585611ead565b50610cb860158383611ead565b5050505050565b6009546001600160a01b03163314610ce95760405162461bcd60e51b81526004016108289061259c565b61083a3382611843565b6000610cfe8261192b565b5192915050565b60408051808201909152600a546001600160801b03808216808452600160801b9092041660208301524290811080610d49575081602001516001600160801b031681115b15610d67576040516309ca1d3560e11b815260040160405180910390fd5b60005b83811015610efc576000858583818110610d9457634e487b7160e01b600052603260045260246000fd5b90506020020135905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639231ab2a836040518263ffffffff1660e01b8152600401610ded91815260200190565b604080518083038186803b158015610e0457600080fd5b505afa158015610e18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3c919061237e565b80519091506001600160a01b0381163314610e6a57604051631a48ea6960e21b815260040160405180910390fd5b6000838152600b602052604090205460ff16610e9957604051635366f67d60e11b815260040160405180910390fd5b602082015167ffffffffffffffff166078610eb48242612665565b1015610ed35760405163621e39d960e11b815260040160405180910390fd5b5050506000908152600b60205260409020805460ff19169055610ef5816126e3565b9050610d6a565b50610f073384611843565b50505050565b60006001600160a01b038216610f36576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b031660009081526005602052604090205467ffffffffffffffff1690565b6008546001600160a01b03163314610fb65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610828565b610fc06000611a47565b565b6009546001600160a01b03163314610fec5760405162461bcd60e51b81526004016108289061259c565b6000818152600e602052604090205460ff16806110415750600061103f8686600081811061102a57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906104939190611fec565b115b1561105f5760405163046a2bfb60e01b815260040160405180910390fd5b83821461107e576040516222e42d60e41b815260040160405180910390fd5b60005b848110156110fd576110ed8686838181106110ac57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906110c19190611fec565b8585848181106110e157634e487b7160e01b600052603260045260246000fd5b90506020020135611843565b6110f6816126e3565b9050611081565b506000908152600e60205260409020805460ff1916600117905550505050565b60606015805461112c906126a8565b1515905061113c57610697611a99565b601580546106a9906126a8565b6001600160a01b0382163314156111735760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6111ea848484611656565b6001600160a01b0383163b1515801561120c575061120a84848484611aa8565b155b15610f07576040516368d2bf6b60e11b815260040160405180910390fd5b606061123582611386565b61125257604051630a14c4b560e41b815260040160405180910390fd5b600061125c611ba0565b905080516000141561127d57604051806020016040528060008152506112a8565b8061128784611baf565b60405160200161129892919061251e565b6040516020818303038152906040525b9392505050565b6008546001600160a01b031633146113095760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610828565b6001600160a01b03811661136e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610828565b61083a81611a47565b6060600280546106a9906126a8565b6000805482108015610672575050600090815260046020526040902054600160e01b900460ff161590565b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b600080548260008151811061143257634e487b7160e01b600052603260045260246000fd5b602002602001015161144491906126fe565b6000818152600c602052604090205490915060ff16156114775760405163ae2122df60e01b815260040160405180910390fd5b600061148282610cf3565b90506114966008546001600160a01b031690565b6001600160a01b0316816001600160a01b031614806114cd57506001600160a01b0381166000908152600d602052604090205460ff165b156114eb576040516332c03f9760e21b815260040160405180910390fd5b6001600160a01b0381163b1561151457604051636b17d49b60e11b815260040160405180910390fd5b6000828152600c602090815260408083208054600160ff1991821681179092556001600160a01b0386168552600d9093529220805490911690911790557f000000000000000000000000000000000000000000000000000000000000000061157f6001546000540390565b61158a90600161261a565b11156115a95760405163d05cb60960e01b815260040160405180910390fd5b6115c6816001604051806020016040528060008152506000611ce1565b600060016115d360005490565b6115dd9190612665565b6000818152600c602052604090819020805460ff19166001179055519091507fb7f339c4a7aad4a1b47704005283a1a2cdec75bbd915bf5522652e90e98055f490611647908590859085909283526001600160a01b03919091166020830152604082015260600190565b60405180910390a15050505050565b60006116618261192b565b9050836001600160a01b031681600001516001600160a01b0316146116985760405162a1148160e81b815260040160405180910390fd5b6000336001600160a01b03861614806116b657506116b685336105e5565b806116d15750336116c68461072c565b6001600160a01b0316145b9050806116f157604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03841661171857604051633a954ecd60e21b815260040160405180910390fd5b611724600084876113b1565b6001600160a01b038581166000908152600560209081526040808320805467ffffffffffffffff1980821667ffffffffffffffff92831660001901831617909255898616808652838620805493841693831660019081018416949094179055898652600490945282852080546001600160e01b031916909417600160a01b429092169190910217835587018084529220805491939091166117fa5760005482146117fa578054602086015167ffffffffffffffff16600160a01b026001600160e01b03199091166001600160a01b038a16171781555b50505082846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610cb8565b6000611850826002612646565b90507f0000000000000000000000000000000000000000000000000000000000000000816118816001546000540390565b61188b919061261a565b11156118aa5760405163d05cb60960e01b815260040160405180910390fd5b60006118b7600683612632565b905060005b818110156118f1576118e1856006604051806020016040528060008152506001611ce1565b6118ea816126e3565b90506118bc565b5060006118ff6006846126fe565b1115610f0757610f07846119146006856126fe565b604051806020016040528060008152506001611ce1565b604080516060810182526000808252602082018190529181019190915281600054811015611a2e57600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b810467ffffffffffffffff1692820192909252600160e01b90910460ff16151591810182905290611a2c5780516001600160a01b0316156119c2579392505050565b5060001901600081815260046020908152604091829020825160608101845290546001600160a01b038116808352600160a01b820467ffffffffffffffff1693830193909352600160e01b900460ff1615159281019290925215611a27579392505050565b6119c2565b505b604051636f96cda160e11b815260040160405180910390fd5b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6060600380546106a9906126a8565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611add90339089908890889060040161254d565b602060405180830381600087803b158015611af757600080fd5b505af1925050508015611b27575060408051601f3d908101601f19168201909252611b24918101906122c5565b60015b611b82573d808015611b55576040519150601f19603f3d011682016040523d82523d6000602084013e611b5a565b606091505b508051611b7a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b6060600f80546106a9906126a8565b606081611bd35750506040805180820190915260018152600360fc1b602082015290565b8160005b8115611bfd5780611be7816126e3565b9150611bf69050600a83612632565b9150611bd7565b60008167ffffffffffffffff811115611c2657634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015611c50576020820181803683370190505b5090505b8415611b9857611c65600183612665565b9150611c72600a866126fe565b611c7d90603061261a565b60f81b818381518110611ca057634e487b7160e01b600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611cda600a86612632565b9450611c54565b6000546001600160a01b038516611d0a57604051622e076360e81b815260040160405180910390fd5b83611d285760405163b562e8dd60e01b815260040160405180910390fd5b6001600160a01b038516600081815260056020908152604080832080546fffffffffffffffffffffffffffffffff19811667ffffffffffffffff8083168c018116918217600160401b67ffffffffffffffff1990941690921783900481168c01811690920217909155858452600490925290912080546001600160e01b031916909217600160a01b429092169190910217905580808501838015611dd557506001600160a01b0387163b15155b15611e5e575b60405182906001600160a01b038916906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a4611e266000888480600101955088611aa8565b611e43576040516368d2bf6b60e11b815260040160405180910390fd5b80821415611ddb578260005414611e5957600080fd5b611ea4565b5b6040516001830192906001600160a01b038916906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a480821415611e5f575b50600055610cb8565b828054611eb9906126a8565b90600052602060002090601f016020900481019282611edb5760008555611f21565b82601f10611ef45782800160ff19823516178555611f21565b82800160010185558215611f21579182015b82811115611f21578235825591602001919060010190611f06565b50611f2d929150611f31565b5090565b5b80821115611f2d5760008155600101611f32565b60008083601f840112611f57578182fd5b50813567ffffffffffffffff811115611f6e578182fd5b6020830191508360208260051b8501011115611f8957600080fd5b9250929050565b60008083601f840112611fa1578182fd5b50813567ffffffffffffffff811115611fb8578182fd5b602083019150836020828501011115611f8957600080fd5b80356001600160801b0381168114611fe757600080fd5b919050565b600060208284031215611ffd578081fd5b81356112a881612754565b6000806040838503121561201a578081fd5b823561202581612754565b9150602083013561203581612754565b809150509250929050565b600080600060608486031215612054578081fd5b833561205f81612754565b9250602084013561206f81612754565b929592945050506040919091013590565b60008060008060808587031215612095578081fd5b84356120a081612754565b93506020858101356120b181612754565b935060408601359250606086013567ffffffffffffffff808211156120d4578384fd5b818801915088601f8301126120e7578384fd5b8135818111156120f9576120f961273e565b61210b601f8201601f191685016125e9565b91508082528984828501011115612120578485fd5b8084840185840137810190920192909252939692955090935050565b6000806040838503121561214e578182fd5b823561215981612754565b915060208301358015158114612035578182fd5b6000806040838503121561217f578182fd5b823561218a81612754565b946020939093013593505050565b6000806000806000606086880312156121af578283fd5b853567ffffffffffffffff808211156121c6578485fd5b6121d289838a01611f46565b909750955060208801359150808211156121ea578485fd5b506121f788828901611f46565b96999598509660400135949350505050565b6000806020838503121561221b578182fd5b823567ffffffffffffffff811115612231578283fd5b61223d85828601611f46565b90969095509350505050565b6000806000806080858703121561225e578182fd5b8435935060208501356122708161277f565b9250604085013561ffff81168114612286578283fd5b9150606085013563ffffffff8116811461229e578182fd5b939692955090935050565b6000602082840312156122ba578081fd5b81356112a881612769565b6000602082840312156122d6578081fd5b81516112a881612769565b600080602083850312156122f3578182fd5b823567ffffffffffffffff811115612309578283fd5b61223d85828601611f90565b6000806000806040858703121561232a578182fd5b843567ffffffffffffffff80821115612341578384fd5b61234d88838901611f90565b90965094506020870135915080821115612365578384fd5b5061237287828801611f90565b95989497509550505050565b60006040828403121561238f578081fd5b6040516040810181811067ffffffffffffffff821117156123b2576123b261273e565b60405282516123c081612754565b815260208301516123d08161277f565b60208201529392505050565b600080604083850312156123ee578182fd5b6123f783611fd0565b915061240560208401611fd0565b90509250929050565b60006020828403121561241f578081fd5b5035919050565b600060208284031215612437578081fd5b5051919050565b60008060408385031215612450578182fd5b8235915060208084013567ffffffffffffffff8082111561246f578384fd5b818601915086601f830112612482578384fd5b8135818111156124945761249461273e565b8060051b91506124a58483016125e9565b8181528481019084860184860187018b10156124bf578788fd5b8795505b838610156124e15780358352600195909501949186019186016124c3565b508096505050505050509250929050565b6000815180845261250a81602086016020860161267c565b601f01601f19169290920160200192915050565b6000835161253081846020880161267c565b83519083019061254481836020880161267c565b01949350505050565b60006001600160a01b0380871683528086166020840152508360408301526080606083015261257f60808301846124f2565b9695505050505050565b6020815260006112a860208301846124f2565b6020808252602d908201527f4d756c74697369674f776e61626c653a2063616c6c6572206973206e6f74207460408201526c3432903932b0b61037bbb732b960991b606082015260800190565b604051601f8201601f1916810167ffffffffffffffff811182821017156126125761261261273e565b604052919050565b6000821982111561262d5761262d612712565b500190565b60008261264157612641612728565b500490565b600081600019048311821515161561266057612660612712565b500290565b60008282101561267757612677612712565b500390565b60005b8381101561269757818101518382015260200161267f565b83811115610f075750506000910152565b600181811c908216806126bc57607f821691505b602082108114156126dd57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156126f7576126f7612712565b5060010190565b60008261270d5761270d612728565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461083a57600080fd5b6001600160e01b03198116811461083a57600080fd5b67ffffffffffffffff8116811461083a57600080fdfea26469706673582212209c22604f7f8c9cb219980e9eb0d5444a1d78cd4b265c417fa9533491e58066e064736f6c63430008040033000000000000000000000000ed5af388653567af2f388e6224dc7c4b3241c5440000000000000000000000000000000000000000000000000000000000004e20000000000000000000000000271682deb8c4e0901d1a1550ad2e64d568e69909000000000000000000000000514910771af9ca656af840dff83e8264ecf986ca00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000009536f6d657468696e6700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004534d544800000000000000000000000000000000000000000000000000000000