94.7k txs
94.8k calls
constructor
constructor(address multiSig)
functions
balanceOf
viewfunction balanceOf(address owner) view returns (uint256)
CORE_PRO_PRICE
viewfunction CORE_PRO_PRICE() view returns (uint256)
CORE_ULTRA_PRICE
viewfunction CORE_ULTRA_PRICE() view returns (uint256)
corePlusURI
viewfunction corePlusURI() view returns (string)
coreProURI
viewfunction coreProURI() view returns (string)
coreUltraURI
viewfunction coreUltraURI() view returns (string)
getApproved
viewfunction getApproved(uint256 tokenId) view returns (address)
getOwnedTierToken
viewfunction getOwnedTierToken(address user, uint8 tier) view returns (uint256)
getTokenTier
viewfunction getTokenTier(uint256 tokenId) view returns (uint8)
isApprovedForAll
viewfunction isApprovedForAll(address owner, address operator) view returns (bool)
MAX_CORE_PRO
viewfunction MAX_CORE_PRO() view returns (uint256)
MAX_CORE_ULTRA
viewfunction MAX_CORE_ULTRA() view returns (uint256)
mintedCount
viewfunction mintedCount(uint8) view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
ownerOf
viewfunction ownerOf(uint256 tokenId) view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
symbol
viewfunction symbol() view returns (string)
tokenURI
viewfunction tokenURI(uint256 tokenId) view returns (string)
approve
nonpayablefunction approve(address to, uint256 tokenId)
corePlusMint
nonpayablefunction corePlusMint() returns (uint256)
coreProMint
payablefunction coreProMint() payable returns (uint256)
coreUltraMint
payablefunction coreUltraMint() payable returns (uint256)
renounceOwnership
nonpayablefunction renounceOwnership()
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)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 tokenId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw()
events
AgentPassMinted
event AgentPassMinted(uint256 tokenId, uint8 tier, address indexed minter)
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)
Withdraw
event Withdraw(uint256 amount)
errors
ERC721IncorrectOwner
error ERC721IncorrectOwner(address sender, uint256 tokenId, address owner)
ERC721InsufficientApproval
error ERC721InsufficientApproval(address operator, uint256 tokenId)
ERC721InvalidApprover
error ERC721InvalidApprover(address approver)
ERC721InvalidOperator
error ERC721InvalidOperator(address operator)
ERC721InvalidOwner
error ERC721InvalidOwner(address owner)
ERC721InvalidReceiver
error ERC721InvalidReceiver(address receiver)
ERC721InvalidSender
error ERC721InvalidSender(address sender)
ERC721NonexistentToken
error ERC721NonexistentToken(uint256 tokenId)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
creation bytecode
0x60806040526001600955604051806080016040528060438152602001613e1660439139600a908161003091906104dc565b50604051806080016040528060438152602001613e5960439139600b908161005891906104dc565b50604051806080016040528060438152602001613dd360439139600c908161008091906104dc565b5034801561008d57600080fd5b50604051613e9c380380613e9c83398181016040528101906100af9190610611565b806040518060400160405280600a81526020017f4167656e742050617373000000000000000000000000000000000000000000008152506040518060400160405280600a81526020017f4147454e545f5041535300000000000000000000000000000000000000000000815250816000908161012b91906104dc565b50806001908161013b91906104dc565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101b05760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016101a7919061064d565b60405180910390fd5b6101bf816101c660201b60201c565b5050610668565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061030d57607f821691505b6020821081036103205761031f6102c6565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026103887fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261034b565b610392868361034b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006103d96103d46103cf846103aa565b6103b4565b6103aa565b9050919050565b6000819050919050565b6103f3836103be565b6104076103ff826103e0565b848454610358565b825550505050565b600090565b61041c61040f565b6104278184846103ea565b505050565b5b8181101561044b57610440600082610414565b60018101905061042d565b5050565b601f8211156104905761046181610326565b61046a8461033b565b81016020851015610479578190505b61048d6104858561033b565b83018261042c565b50505b505050565b600082821c905092915050565b60006104b360001984600802610495565b1980831691505092915050565b60006104cc83836104a2565b9150826002028217905092915050565b6104e58261028c565b67ffffffffffffffff8111156104fe576104fd610297565b5b61050882546102f5565b61051382828561044f565b600060209050601f8311600181146105465760008415610534578287015190505b61053e85826104c0565b8655506105a6565b601f19841661055486610326565b60005b8281101561057c57848901518255600182019150602085019450602081019050610557565b868310156105995784890151610595601f8916826104a2565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105de826105b3565b9050919050565b6105ee816105d3565b81146105f957600080fd5b50565b60008151905061060b816105e5565b92915050565b600060208284031215610627576106266105ae565b5b6000610635848285016105fc565b91505092915050565b610647816105d3565b82525050565b6000602082019050610662600083018461063e565b92915050565b61375c806106776000396000f3fe6080604052600436106101cd5760003560e01c806379a87cfe116100f7578063c6999acc11610095578063d406d45311610064578063d406d45314610662578063daa66c531461069f578063e985e9c5146106ca578063f2fde38b14610707576101cd565b8063c6999acc146105b1578063c87b56dd146105cf578063cd6804ef1461060c578063d1fbc19914610637576101cd565b806395d89b41116100d157806395d89b41146104f7578063a22cb46514610522578063b88d4fde1461054b578063c26b265f14610574576101cd565b806379a87cfe146104645780637d47d497146104a15780638da5cb5b146104cc576101cd565b8063376af98a1161016f578063444c1e7b1161013e578063444c1e7b146103a85780636352211e146103d357806370a0823114610410578063715018a61461044d576101cd565b8063376af98a1461031f57806338169bd91461033d5780633ccfd60b1461036857806342842e0e1461037f576101cd565b806308450e01116101ab57806308450e0114610277578063095ea7b3146102a25780631dd1cae7146102cb57806323b872dd146102f6576101cd565b806301ffc9a7146101d257806306fdde031461020f578063081812fc1461023a575b600080fd5b3480156101de57600080fd5b506101f960048036038101906101f49190612a59565b610730565b6040516102069190612aa1565b60405180910390f35b34801561021b57600080fd5b50610224610812565b6040516102319190612b4c565b60405180910390f35b34801561024657600080fd5b50610261600480360381019061025c9190612ba4565b6108a4565b60405161026e9190612c12565b60405180910390f35b34801561028357600080fd5b5061028c6108c0565b6040516102999190612b4c565b60405180910390f35b3480156102ae57600080fd5b506102c960048036038101906102c49190612c59565b61094e565b005b3480156102d757600080fd5b506102e0610964565b6040516102ed9190612b4c565b60405180910390f35b34801561030257600080fd5b5061031d60048036038101906103189190612c99565b6109f2565b005b610327610af4565b6040516103349190612cfb565b60405180910390f35b34801561034957600080fd5b50610352610df0565b60405161035f9190612b4c565b60405180910390f35b34801561037457600080fd5b5061037d610e7e565b005b34801561038b57600080fd5b506103a660048036038101906103a19190612c99565b610f0d565b005b3480156103b457600080fd5b506103bd610f2d565b6040516103ca9190612cfb565b60405180910390f35b3480156103df57600080fd5b506103fa60048036038101906103f59190612ba4565b610f39565b6040516104079190612c12565b60405180910390f35b34801561041c57600080fd5b5061043760048036038101906104329190612d16565b610f4b565b6040516104449190612cfb565b60405180910390f35b34801561045957600080fd5b50610462611005565b005b34801561047057600080fd5b5061048b60048036038101906104869190612d68565b611019565b6040516104989190612cfb565b60405180910390f35b3480156104ad57600080fd5b506104b6611098565b6040516104c39190612cfb565b60405180910390f35b3480156104d857600080fd5b506104e161109d565b6040516104ee9190612c12565b60405180910390f35b34801561050357600080fd5b5061050c6110c7565b6040516105199190612b4c565b60405180910390f35b34801561052e57600080fd5b5061054960048036038101906105449190612dd4565b611159565b005b34801561055757600080fd5b50610572600480360381019061056d9190612f49565b61116f565b005b34801561058057600080fd5b5061059b60048036038101906105969190612ba4565b611194565b6040516105a89190613043565b60405180910390f35b6105b9611206565b6040516105c69190612cfb565b60405180910390f35b3480156105db57600080fd5b506105f660048036038101906105f19190612ba4565b611507565b6040516106039190612b4c565b60405180910390f35b34801561061857600080fd5b506106216117cb565b60405161062e9190612cfb565b60405180910390f35b34801561064357600080fd5b5061064c6117d7565b6040516106599190612cfb565b60405180910390f35b34801561066e57600080fd5b506106896004803603810190610684919061305e565b6119c1565b6040516106969190612cfb565b60405180910390f35b3480156106ab57600080fd5b506106b46119d9565b6040516106c19190612cfb565b60405180910390f35b3480156106d657600080fd5b506106f160048036038101906106ec919061308b565b6119df565b6040516106fe9190612aa1565b60405180910390f35b34801561071357600080fd5b5061072e60048036038101906107299190612d16565b611a73565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107fb57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061080b575061080a82611af9565b5b9050919050565b606060008054610821906130fa565b80601f016020809104026020016040519081016040528092919081815260200182805461084d906130fa565b801561089a5780601f1061086f5761010080835404028352916020019161089a565b820191906000526020600020905b81548152906001019060200180831161087d57829003601f168201915b5050505050905090565b60006108af82611b63565b506108b982611beb565b9050919050565b600c80546108cd906130fa565b80601f01602080910402602001604051908101604052809291908181526020018280546108f9906130fa565b80156109465780601f1061091b57610100808354040283529160200191610946565b820191906000526020600020905b81548152906001019060200180831161092957829003601f168201915b505050505081565b610960828261095b611c28565b611c30565b5050565b600a8054610971906130fa565b80601f016020809104026020016040519081016040528092919081815260200182805461099d906130fa565b80156109ea5780601f106109bf576101008083540402835291602001916109ea565b820191906000526020600020905b8154815290600101906020018083116109cd57829003601f168201915b505050505081565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a645760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610a5b9190612c12565b60405180910390fd5b6000610a788383610a73611c28565b611c42565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aee578382826040517f64283d7b000000000000000000000000000000000000000000000000000000008152600401610ae59392919061312b565b60405180910390fd5b50505050565b6000600f600d6000600280811115610b0f57610b0e612fcc565b5b6002811115610b2157610b20612fcc565b5b81526020019081526020016000205410610b70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b67906131ae565b60405180910390fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600280811115610bc657610bc5612fcc565b5b6002811115610bd857610bd7612fcc565b5b81526020019081526020016000205414610c27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1e9061321a565b60405180910390fd5b670de0b6b3a76400003414610c71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c68906132ac565b60405180910390fd5b600d6000600280811115610c8857610c87612fcc565b5b6002811115610c9a57610c99612fcc565b5b81526020019081526020016000206000815480929190610cb9906132fb565b9190505550600060096000815480929190610cd3906132fb565b919050559050610ce33382611ea5565b60026007600083815260200190815260200160002060006101000a81548160ff02191690836002811115610d1a57610d19612fcc565b5b021790555080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600280811115610d7457610d73612fcc565b5b6002811115610d8657610d85612fcc565b5b8152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167f28be88e390e800b8354914949a84367c63084f6fce4eb78173f623d2ba789558826002604051610de1929190613343565b60405180910390a28091505090565b600b8054610dfd906130fa565b80601f0160208091040260200160405190810160405280929190818152602001828054610e29906130fa565b8015610e765780601f10610e4b57610100808354040283529160200191610e76565b820191906000526020600020905b815481529060010190602001808311610e5957829003601f168201915b505050505081565b610e86611f9e565b610e8e61109d565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610ed3573d6000803e3d6000fd5b507f5b6b431d4476a211bb7d41c20d1aab9ae2321deee0d20be3d9fc9b1093fa6e3d47604051610f039190612cfb565b60405180910390a1565b610f288383836040518060200160405280600081525061116f565b505050565b67016345785d8a000081565b6000610f4482611b63565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610fbe5760006040517f89c62b64000000000000000000000000000000000000000000000000000000008152600401610fb59190612c12565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61100d611f9e565b6110176000612025565b565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083600281111561106f5761106e612fcc565b5b600281111561108157611080612fcc565b5b815260200190815260200160002054905092915050565b600f81565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600180546110d6906130fa565b80601f0160208091040260200160405190810160405280929190818152602001828054611102906130fa565b801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905090565b61116b611164611c28565b83836120eb565b5050565b61117a8484846109f2565b61118e611185611c28565b8585858561225a565b50505050565b600061119f8261240b565b6111de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d5906133b8565b60405180910390fd5b6007600083815260200190815260200160002060009054906101000a900460ff169050919050565b60006103e8600d60006001600281111561122357611222612fcc565b5b600281111561123557611234612fcc565b5b81526020019081526020016000205410611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127b90613424565b60405180910390fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600160028111156112db576112da612fcc565b5b60028111156112ed576112ec612fcc565b5b8152602001908152602001600020541461133c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133390613490565b60405180910390fd5b67016345785d8a00003414611386576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137d90613522565b60405180910390fd5b600d60006001600281111561139e5761139d612fcc565b5b60028111156113b0576113af612fcc565b5b815260200190815260200160002060008154809291906113cf906132fb565b91905055506000600960008154809291906113e9906132fb565b9190505590506113f93382611ea5565b60016007600083815260200190815260200160002060006101000a81548160ff021916908360028111156114305761142f612fcc565b5b021790555080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001600281111561148b5761148a612fcc565b5b600281111561149d5761149c612fcc565b5b8152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167f28be88e390e800b8354914949a84367c63084f6fce4eb78173f623d2ba7895588260016040516114f8929190613343565b60405180910390a28091505090565b60606115128261240b565b611551576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611548906133b8565b60405180910390fd5b60006007600084815260200190815260200160002060009054906101000a900460ff1690506000600281111561158a57611589612fcc565b5b81600281111561159d5761159c612fcc565b5b0361163557600a80546115af906130fa565b80601f01602080910402602001604051908101604052809291908181526020018280546115db906130fa565b80156116285780601f106115fd57610100808354040283529160200191611628565b820191906000526020600020905b81548152906001019060200180831161160b57829003601f168201915b50505050509150506117c6565b6001600281111561164957611648612fcc565b5b81600281111561165c5761165b612fcc565b5b036116f457600b805461166e906130fa565b80601f016020809104026020016040519081016040528092919081815260200182805461169a906130fa565b80156116e75780601f106116bc576101008083540402835291602001916116e7565b820191906000526020600020905b8154815290600101906020018083116116ca57829003601f168201915b50505050509150506117c6565b60028081111561170757611706612fcc565b5b81600281111561171a57611719612fcc565b5b036117b257600c805461172c906130fa565b80601f0160208091040260200160405190810160405280929190818152602001828054611758906130fa565b80156117a55780601f1061177a576101008083540402835291602001916117a5565b820191906000526020600020905b81548152906001019060200180831161178857829003601f168201915b50505050509150506117c6565b604051806020016040528060008152509150505b919050565b670de0b6b3a764000081565b600080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080600281111561182e5761182d612fcc565b5b60028111156118405761183f612fcc565b5b8152602001908152602001600020541461188f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118869061358e565b60405180910390fd5b6000600960008154809291906118a4906132fb565b9190505590506118b43382611ea5565b60006007600083815260200190815260200160002060006101000a81548160ff021916908360028111156118eb576118ea612fcc565b5b021790555080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080600281111561194557611944612fcc565b5b600281111561195757611956612fcc565b5b8152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167f28be88e390e800b8354914949a84367c63084f6fce4eb78173f623d2ba7895588260006040516119b2929190613343565b60405180910390a28091505090565b600d6020528060005260406000206000915090505481565b6103e881565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611a7b611f9e565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611aed5760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401611ae49190612c12565b60405180910390fd5b611af681612025565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600080611b6f8361244c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611be257826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401611bd99190612cfb565b60405180910390fd5b80915050919050565b60006004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033905090565b611c3d8383836001612489565b505050565b600080611c4e8461244c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015611cba5750600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611e905760006007600086815260200190815260200160002060009054906101000a900460ff1690506000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836002811115611d3a57611d39612fcc565b5b6002811115611d4c57611d4b612fcc565b5b81526020019081526020016000205414611d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d92906135fa565b60405180910390fd5b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836002811115611df157611df0612fcc565b5b6002811115611e0357611e02612fcc565b5b81526020019081526020016000208190555084600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836002811115611e6a57611e69612fcc565b5b6002811115611e7c57611e7b612fcc565b5b815260200190815260200160002081905550505b611e9b85858561264e565b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f175760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611f0e9190612c12565b60405180910390fd5b6000611f2583836000611c42565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611f995760006040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401611f909190612c12565b60405180910390fd5b505050565b611fa6611c28565b73ffffffffffffffffffffffffffffffffffffffff16611fc461109d565b73ffffffffffffffffffffffffffffffffffffffff161461202357611fe7611c28565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040161201a9190612c12565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361215c57816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016121539190612c12565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161224d9190612aa1565b60405180910390a3505050565b60008373ffffffffffffffffffffffffffffffffffffffff163b1115612404578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02868685856040518563ffffffff1660e01b81526004016122b9949392919061366f565b6020604051808303816000875af19250505080156122f557506040513d601f19601f820116820180604052508101906122f291906136d0565b60015b612379573d8060008114612325576040519150601f19603f3d011682016040523d82523d6000602084013e61232a565b606091505b50600081510361237157836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016123689190612c12565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161461240257836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016123f99190612c12565b60405180910390fd5b505b5050505050565b60008073ffffffffffffffffffffffffffffffffffffffff1661242d8361244c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b80806124c25750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156125f65760006124d284611b63565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561253d57508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015612550575061254e81846119df565b155b1561259257826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016125899190612c12565b60405180910390fd5b81156125f457838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b836004600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60008061265a8461244c565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461269c5761269b818486612868565b5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461272d576126de600085600080612489565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146127b0576001600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b846002600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b61287383838361292c565b61292757600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036128e857806040517f7e2732890000000000000000000000000000000000000000000000000000000081526004016128df9190612cfb565b60405180910390fd5b81816040517f177e802f00000000000000000000000000000000000000000000000000000000815260040161291e9291906136fd565b60405180910390fd5b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156129e457508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806129a557506129a484846119df565b5b806129e357508273ffffffffffffffffffffffffffffffffffffffff166129cb83611beb565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612a3681612a01565b8114612a4157600080fd5b50565b600081359050612a5381612a2d565b92915050565b600060208284031215612a6f57612a6e6129f7565b5b6000612a7d84828501612a44565b91505092915050565b60008115159050919050565b612a9b81612a86565b82525050565b6000602082019050612ab66000830184612a92565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612af6578082015181840152602081019050612adb565b60008484015250505050565b6000601f19601f8301169050919050565b6000612b1e82612abc565b612b288185612ac7565b9350612b38818560208601612ad8565b612b4181612b02565b840191505092915050565b60006020820190508181036000830152612b668184612b13565b905092915050565b6000819050919050565b612b8181612b6e565b8114612b8c57600080fd5b50565b600081359050612b9e81612b78565b92915050565b600060208284031215612bba57612bb96129f7565b5b6000612bc884828501612b8f565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612bfc82612bd1565b9050919050565b612c0c81612bf1565b82525050565b6000602082019050612c276000830184612c03565b92915050565b612c3681612bf1565b8114612c4157600080fd5b50565b600081359050612c5381612c2d565b92915050565b60008060408385031215612c7057612c6f6129f7565b5b6000612c7e85828601612c44565b9250506020612c8f85828601612b8f565b9150509250929050565b600080600060608486031215612cb257612cb16129f7565b5b6000612cc086828701612c44565b9350506020612cd186828701612c44565b9250506040612ce286828701612b8f565b9150509250925092565b612cf581612b6e565b82525050565b6000602082019050612d106000830184612cec565b92915050565b600060208284031215612d2c57612d2b6129f7565b5b6000612d3a84828501612c44565b91505092915050565b60038110612d5057600080fd5b50565b600081359050612d6281612d43565b92915050565b60008060408385031215612d7f57612d7e6129f7565b5b6000612d8d85828601612c44565b9250506020612d9e85828601612d53565b9150509250929050565b612db181612a86565b8114612dbc57600080fd5b50565b600081359050612dce81612da8565b92915050565b60008060408385031215612deb57612dea6129f7565b5b6000612df985828601612c44565b9250506020612e0a85828601612dbf565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612e5682612b02565b810181811067ffffffffffffffff82111715612e7557612e74612e1e565b5b80604052505050565b6000612e886129ed565b9050612e948282612e4d565b919050565b600067ffffffffffffffff821115612eb457612eb3612e1e565b5b612ebd82612b02565b9050602081019050919050565b82818337600083830152505050565b6000612eec612ee784612e99565b612e7e565b905082815260208101848484011115612f0857612f07612e19565b5b612f13848285612eca565b509392505050565b600082601f830112612f3057612f2f612e14565b5b8135612f40848260208601612ed9565b91505092915050565b60008060008060808587031215612f6357612f626129f7565b5b6000612f7187828801612c44565b9450506020612f8287828801612c44565b9350506040612f9387828801612b8f565b925050606085013567ffffffffffffffff811115612fb457612fb36129fc565b5b612fc087828801612f1b565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6003811061300c5761300b612fcc565b5b50565b600081905061301d82612ffb565b919050565b600061302d8261300f565b9050919050565b61303d81613022565b82525050565b60006020820190506130586000830184613034565b92915050565b600060208284031215613074576130736129f7565b5b600061308284828501612d53565b91505092915050565b600080604083850312156130a2576130a16129f7565b5b60006130b085828601612c44565b92505060206130c185828601612c44565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061311257607f821691505b602082108103613125576131246130cb565b5b50919050565b60006060820190506131406000830186612c03565b61314d6020830185612cec565b61315a6040830184612c03565b949350505050565b7f436f726520556c74726120736f6c64206f757400000000000000000000000000600082015250565b6000613198601383612ac7565b91506131a382613162565b602082019050919050565b600060208201905081810360008301526131c78161318b565b9050919050565b7f416c7265616479206f776e7320436f726520556c747261207061737300000000600082015250565b6000613204601c83612ac7565b915061320f826131ce565b602082019050919050565b60006020820190508181036000830152613233816131f7565b9050919050565b7f496e73756666696369656e74207061796d656e7420666f7220436f726520556c60008201527f7472612074696572000000000000000000000000000000000000000000000000602082015250565b6000613296602883612ac7565b91506132a18261323a565b604082019050919050565b600060208201905081810360008301526132c581613289565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061330682612b6e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613338576133376132cc565b5b600182019050919050565b60006040820190506133586000830185612cec565b6133656020830184613034565b9392505050565b7f546f6b656e20646f6573206e6f74206578697374000000000000000000000000600082015250565b60006133a2601483612ac7565b91506133ad8261336c565b602082019050919050565b600060208201905081810360008301526133d181613395565b9050919050565b7f436f72652050726f20736f6c64206f7574000000000000000000000000000000600082015250565b600061340e601183612ac7565b9150613419826133d8565b602082019050919050565b6000602082019050818103600083015261343d81613401565b9050919050565b7f416c7265616479206f776e7320436f72652050726f2070617373000000000000600082015250565b600061347a601a83612ac7565b915061348582613444565b602082019050919050565b600060208201905081810360008301526134a98161346d565b9050919050565b7f496e73756666696369656e74207061796d656e7420666f7220436f726520507260008201527f6f20746965720000000000000000000000000000000000000000000000000000602082015250565b600061350c602683612ac7565b9150613517826134b0565b604082019050919050565b6000602082019050818103600083015261353b816134ff565b9050919050565b7f416c7265616479206f776e7320436f726520506c757320706173730000000000600082015250565b6000613578601b83612ac7565b915061358382613542565b602082019050919050565b600060208201905081810360008301526135a78161356b565b9050919050565b7f526563697069656e7420616c7265616479206f776e7320746869732074696572600082015250565b60006135e4602083612ac7565b91506135ef826135ae565b602082019050919050565b60006020820190508181036000830152613613816135d7565b9050919050565b600081519050919050565b600082825260208201905092915050565b60006136418261361a565b61364b8185613625565b935061365b818560208601612ad8565b61366481612b02565b840191505092915050565b60006080820190506136846000830187612c03565b6136916020830186612c03565b61369e6040830185612cec565b81810360608301526136b08184613636565b905095945050505050565b6000815190506136ca81612a2d565b92915050565b6000602082840312156136e6576136e56129f7565b5b60006136f4848285016136bb565b91505092915050565b60006040820190506137126000830185612c03565b61371f6020830184612cec565b939250505056fea264697066735822122091d6f5ae3411b95e8d2bed0b4398aa2187cab28bb99428f1c6f249e1fdc6698864736f6c634300081c003368747470733a2f2f697066732e696f2f697066732f516d5939367667704261676f47336267797a4b6a685379506d755662685a6d4448735564594a506659365a424e6f68747470733a2f2f697066732e696f2f697066732f516d55743441445553547651436931567356716a71534e44636d626f6938595872557457377a663257356d71586468747470733a2f2f697066732e696f2f697066732f516d516a56575a6e5632477678564368484836414a706448646643387736475743426e4c53384b743855556d564d0000000000000000000000002474c00aa85fbfd927750a7e4181550f612ad09f