[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC1155InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC1155InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "idsLength", "type": "uint256" }, { "internalType": "uint256", "name": "valuesLength", "type": "uint256" } ], "name": "ERC1155InvalidArrayLength", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "name": "ERC1155InvalidOperator", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC1155InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC1155InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC1155MissingApprovalForAll", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "indexed": false, "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "TransferBatch", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "TransferSingle", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "value", "type": "string" }, { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "URI", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "TOKEN_ID_AYE_AYE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_ID_AYE_AYELIEN", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_ID_HOODIE_AYE_AYE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_ID_MOGGED", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_ID_NFT_RELIC", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_ID_ONE_COIN_FOR_YOU", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "balanceOfBatch", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "exists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "hasMinted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "maxSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "mintHonorary", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "nextHonoraryTokenId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "requiredBalances", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeBatchTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "setTokenURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "uri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "waacToken", "outputs": [ { "internalType": "contract IERC20", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
60806040526007805534801561001457600080fd5b50604080516020810190915260008152339061002f81610464565b506001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b61006781610474565b50600680546001600160a01b031916732e1f179ce28c02ba40a0f55617f2ea9183de3aad1781557fad67d757c34507f157cacfa2e3153e9f260a2244f30428821be7be64587ac55f819055603c7f6add646517a5b0f6793cd5891b7937d28a5b2981a5d88ebc7cd776088fea90415560647f625b35f5e76f098dd7c3a05b10e2e5e78a4a01228d60c3b143426cdf36d26455556102587f9321edea6e3be4df59a344b401fab4f888b556fda1f954244cff9204bad624b8556103e87f91238f30f286c9a1c6e901c4eda3b214c381c846e3dbe48df95c21488e8e1fdb556107df7f13acf3fc7bed94759963f076d5d3443d88732026bffc8253bdf4a6e65f21ecc5556009602090815269152d02c7e14af68000007f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a365569021e19e0c9bab24000007f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c355683635c9adc5dea000007fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e75568056bc75e2d631000007f8dc18c4ccfd75f5c815b63770fa542fd953e8fef7e0e44bbdd4913470ce7e9cb556803bd913e6c1df400007f74b05292d1d4b2b48b65261b07099d24244bcb069f138d9a6bfdcf776becac4c55600091909152678ac7230489e800007fbb6daa0c283751197dfdc76590680f9005e97d6f23870deb1164ab60b28b9f5f55604080516060810190915260358082529091612226908301396001600052600a6020527fbbc70db1b6c7afd11e79c0fb0051300458f1a3acb8ee9789d9b6b26c61ad9bc7906102ce9082610565565b50604051806060016040528060358152602001612290603591396002600052600a6020527fbff4442b8ed600beeb8e26b1279a0f0d14c6edfaec26d968ee13c86f7d4c2ba89061031e9082610565565b506040518060600160405280603581526020016122fa603591396003600052600a6020527fa856840544dc26124927add067d799967eac11be13e14d82cc281ea46fa397599061036e9082610565565b5060405180606001604052806035815260200161232f603591396004600052600a6020527fe1eb2b2161a492c07c5a334e48012567cba93ec021043f53c1955516a3c5a841906103be9082610565565b506040518060600160405280603581526020016122c5603591396005600052600a6020527ff35035bc2b01d44bd35a1dcdc552315cffb73da35cfd60570b7b777f98036f9f9061040e9082610565565b5060405180606001604052806035815260200161225b603591396006600052600a6020527f10d9dd018e4cae503383c9f804c1c1603ada5856ee7894375d9b97cd8c8b27db9061045e9082610565565b50610623565b60026104708282610565565b5050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806104f057607f821691505b60208210810361051057634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561056057806000526020600020601f840160051c8101602085101561053d5750805b601f840160051c820191505b8181101561055d5760008155600101610549565b50505b505050565b81516001600160401b0381111561057e5761057e6104c6565b6105928161058c84546104dc565b84610516565b6020601f8211600181146105c657600083156105ae5750848201515b600019600385901b1c1916600184901b17845561055d565b600084815260208120601f198516915b828110156105f657878501518255602094850194600190920191016105d6565b50848210156106145786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b611bf4806106326000396000f3fe60806040526004361061019b5760003560e01c8063869f7594116100ec578063bd85b0391161008a578063eb19fdfd11610064578063eb19fdfd14610515578063f242432a1461052a578063f2fde38b1461054a578063f833f1ca1461056a5761019b565b8063bd85b039146104b2578063bd9705e6146104df578063e985e9c5146104f55761019b565b8063a22cb465116100c6578063a22cb46514610448578063b4b4e7f814610468578063b5ba362e14610488578063b6d122c71461049d5761019b565b8063869f7594146103d45780638da5cb5b14610401578063937ae1ea146104335761019b565b806328084999116101595780634e1273f4116101335780634e1273f4146103365780634f558e7914610363578063715018a6146103925780637e98bc64146103a75761019b565b806328084999146102d15780632eb2c2d6146102e657806338e21cce146103065761019b565b8062fdd58e146101ec57806301ffc9a71461021f5780630e89341c1461024f578063162094c41461027c57806318160ddd1461029c57806318484ed4146102b1575b34156101e15760405162461bcd60e51b815260206004820152601060248201526f115512081b9bdd081858d8d95c1d195960821b60448201526064015b60405180910390fd5b6101ea3361057f565b005b3480156101f857600080fd5b5061020c6102073660046113bc565b6107b4565b6040519081526020015b60405180910390f35b34801561022b57600080fd5b5061023f61023a3660046113fc565b6107dc565b6040519015158152602001610216565b34801561025b57600080fd5b5061026f61026a366004611420565b61082c565b604051610216919061147f565b34801561028857600080fd5b506101ea61029736600461154e565b6108fe565b3480156102a857600080fd5b5060045461020c565b3480156102bd57600080fd5b506101ea6102cc366004611594565b61095b565b3480156102dd57600080fd5b5061020c600181565b3480156102f257600080fd5b506101ea61030136600461167a565b6109ae565b34801561031257600080fd5b5061023f61032136600461172d565b600b6020526000908152604090205460ff1681565b34801561034257600080fd5b50610356610351366004611748565b610a15565b6040516102169190611841565b34801561036f57600080fd5b5061023f61037e366004611420565b600090815260036020526040902054151590565b34801561039e57600080fd5b506101ea610ae1565b3480156103b357600080fd5b5061020c6103c2366004611420565b60096020526000908152604090205481565b3480156103e057600080fd5b5061020c6103ef366004611420565b60086020526000908152604090205481565b34801561040d57600080fd5b506005546001600160a01b03165b6040516001600160a01b039091168152602001610216565b34801561043f57600080fd5b5061020c600381565b34801561045457600080fd5b506101ea610463366004611854565b610af5565b34801561047457600080fd5b5060065461041b906001600160a01b031681565b34801561049457600080fd5b5061020c600581565b3480156104a957600080fd5b5061020c600681565b3480156104be57600080fd5b5061020c6104cd366004611420565b60009081526003602052604090205490565b3480156104eb57600080fd5b5061020c60075481565b34801561050157600080fd5b5061023f610510366004611890565b610b04565b34801561052157600080fd5b5061020c600481565b34801561053657600080fd5b506101ea6105453660046118c3565b610b32565b34801561055657600080fd5b506101ea61056536600461172d565b610b91565b34801561057657600080fd5b5061020c600281565b6001600160a01b0381166000908152600b602052604090205460ff16156105d95760405162461bcd60e51b815260206004820152600e60248201526d105b1c9958591e481b5a5b9d195960921b60448201526064016101d8565b6006546040516370a0823160e01b81526001600160a01b03838116600483015260009216906370a0823190602401602060405180830381865afa158015610624573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610648919061191b565b90506000806040518060c0016040528060018152602001600281526020016003815260200160048152602001600581526020016006815250905060005b60068110156107435760008282600681106106a2576106a2611934565b602002015190506009600082815260200190815260200160002054851061073a576000818152600860209081526040808320546003909252909120546106e9906001611960565b1161073a576001600160a01b0386166000908152600b60209081526040808320805460ff19166001908117909155815192830190915291815290945061073490879083908790610bcf565b50610743565b50600101610685565b50816107ae5760405162461bcd60e51b815260206004820152603460248201527f496e73756666696369656e74205741414320746f6b656e2062616c616e6365206044820152731bdc881d1bdad95b9cc81b5a5b9d1959081bdd5d60621b60648201526084016101d8565b50505050565b6000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061080d57506001600160e01b031982166303a24d0760e21b145b806107d657506301ffc9a760e01b6001600160e01b03198316146107d6565b6000818152600a602052604081208054606092919061084a90611973565b905011156108f0576000828152600a60205260409020805461086b90611973565b80601f016020809104026020016040519081016040528092919081815260200182805461089790611973565b80156108e45780601f106108b9576101008083540402835291602001916108e4565b820191906000526020600020905b8154815290600101906020018083116108c757829003601f168201915b50505050509050919050565b6107d682610c2c565b919050565b610906610c3b565b6000828152600a6020526040902061091e82826119f9565b50817f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b8260405161094f919061147f565b60405180910390a25050565b610963610c3b565b60078054908190600061097583611ab7565b90915550506000818152600a6020526040902061099283826119f9565b506107ae84828560405180602001604052806000815250610bcf565b336001600160a01b03861681148015906109cf57506109cd8682610b04565b155b15610a005760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044016101d8565b610a0d8686868686610c68565b505050505050565b60608151835114610a465781518351604051635b05999160e01b8152600481019290925260248201526044016101d8565b600083516001600160401b03811115610a6157610a61611492565b604051908082528060200260200182016040528015610a8a578160200160208202803683370190505b50905060005b8451811015610ad957602080820286010151610ab4906020808402870101516107b4565b828281518110610ac657610ac6611934565b6020908102919091010152600101610a90565b509392505050565b610ae9610c3b565b610af36000610ccf565b565b610b00338383610d21565b5050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b336001600160a01b0386168114801590610b535750610b518682610b04565b155b15610b845760405163711bec9160e11b81526001600160a01b038083166004830152871660248201526044016101d8565b610a0d8686868686610db7565b610b99610c3b565b6001600160a01b038116610bc357604051631e4fbdf760e01b8152600060048201526024016101d8565b610bcc81610ccf565b50565b6001600160a01b038416610bf957604051632bfa23e760e11b8152600060048201526024016101d8565b60408051600180825260208201869052818301908152606082018590526080820190925290610a0d600087848487610e45565b60606002805461086b90611973565b6005546001600160a01b03163314610af35760405163118cdaa760e01b81523360048201526024016101d8565b6001600160a01b038416610c9257604051632bfa23e760e11b8152600060048201526024016101d8565b6001600160a01b038516610cbb57604051626a0d4560e21b8152600060048201526024016101d8565b610cc88585858585610e45565b5050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216610d4a5760405162ced3e160e81b8152600060048201526024016101d8565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b038416610de157604051632bfa23e760e11b8152600060048201526024016101d8565b6001600160a01b038516610e0a57604051626a0d4560e21b8152600060048201526024016101d8565b60408051600180825260208201869052818301908152606082018590526080820190925290610e3c8787848487610e45565b50505050505050565b610e5185858585610e98565b6001600160a01b03841615610cc85782513390600103610e8a5760208481015190840151610e83838989858589610f84565b5050610a0d565b610a0d8187878787876110a8565b610ea484848484611191565b6001600160a01b038416610f24576000805b8351811015610f0a5760208181028481018201519086018201516000908152600390925260408220805491928392610eef908490611960565b90915550610eff90508184611960565b925050600101610eb6565b508060046000828254610f1d9190611960565b9091555050505b6001600160a01b0383166107ae576000805b8351811015610f73576020818102848101820151908601820151600090815260039092526040909120805482900390559190910190600101610f36565b506004805491909103905550505050565b6001600160a01b0384163b15610a0d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610fc89089908990889088908890600401611ad0565b6020604051808303816000875af1925050508015611003575060408051601f3d908101601f1916820190925261100091810190611b15565b60015b61106c573d808015611031576040519150601f19603f3d011682016040523d82523d6000602084013e611036565b606091505b50805160000361106457604051632bfa23e760e11b81526001600160a01b03861660048201526024016101d8565b805181602001fd5b6001600160e01b0319811663f23a6e6160e01b14610e3c57604051632bfa23e760e11b81526001600160a01b03861660048201526024016101d8565b6001600160a01b0384163b15610a0d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906110ec9089908990889088908890600401611b32565b6020604051808303816000875af1925050508015611127575060408051601f3d908101601f1916820190925261112491810190611b15565b60015b611155573d808015611031576040519150601f19603f3d011682016040523d82523d6000602084013e611036565b6001600160e01b0319811663bc197c8160e01b14610e3c57604051632bfa23e760e11b81526001600160a01b03861660048201526024016101d8565b80518251146111c05781518151604051635b05999160e01b8152600481019290925260248201526044016101d8565b3360005b83518110156112c6576020818102858101820151908501909101516001600160a01b03881615611277576000828152602081815260408083206001600160a01b038c16845290915290205481811015611250576040516303dee4c560e01b81526001600160a01b038a1660048201526024810182905260448101839052606481018490526084016101d8565b6000838152602081815260408083206001600160a01b038d16845290915290209082900390555b6001600160a01b038716156112bc576000828152602081815260408083206001600160a01b038b168452909152812080548392906112b6908490611960565b90915550505b50506001016111c4565b5082516001036113475760208301516000906020840151909150856001600160a01b0316876001600160a01b0316846001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051611338929190918252602082015260400190565b60405180910390a45050610cc8565b836001600160a01b0316856001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611396929190611b90565b60405180910390a45050505050565b80356001600160a01b03811681146108f957600080fd5b600080604083850312156113cf57600080fd5b6113d8836113a5565b946020939093013593505050565b6001600160e01b031981168114610bcc57600080fd5b60006020828403121561140e57600080fd5b8135611419816113e6565b9392505050565b60006020828403121561143257600080fd5b5035919050565b6000815180845260005b8181101561145f57602081850181015186830182015201611443565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006114196020830184611439565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156114d0576114d0611492565b604052919050565b600082601f8301126114e957600080fd5b8135602083016000806001600160401b0384111561150957611509611492565b50601f8301601f191660200161151e816114a8565b91505082815285838301111561153357600080fd5b82826020830137600092810160200192909252509392505050565b6000806040838503121561156157600080fd5b8235915060208301356001600160401b0381111561157e57600080fd5b61158a858286016114d8565b9150509250929050565b6000806000606084860312156115a957600080fd5b6115b2846113a5565b92506020840135915060408401356001600160401b038111156115d457600080fd5b6115e0868287016114d8565b9150509250925092565b60006001600160401b0382111561160357611603611492565b5060051b60200190565b600082601f83011261161e57600080fd5b813561163161162c826115ea565b6114a8565b8082825260208201915060208360051b86010192508583111561165357600080fd5b602085015b83811015611670578035835260209283019201611658565b5095945050505050565b600080600080600060a0868803121561169257600080fd5b61169b866113a5565b94506116a9602087016113a5565b935060408601356001600160401b038111156116c457600080fd5b6116d08882890161160d565b93505060608601356001600160401b038111156116ec57600080fd5b6116f88882890161160d565b92505060808601356001600160401b0381111561171457600080fd5b611720888289016114d8565b9150509295509295909350565b60006020828403121561173f57600080fd5b611419826113a5565b6000806040838503121561175b57600080fd5b82356001600160401b0381111561177157600080fd5b8301601f8101851361178257600080fd5b803561179061162c826115ea565b8082825260208201915060208360051b8501019250878311156117b257600080fd5b6020840193505b828410156117db576117ca846113a5565b8252602093840193909101906117b9565b945050505060208301356001600160401b038111156117f957600080fd5b61158a8582860161160d565b600081518084526020840193506020830160005b82811015611837578151865260209586019590910190600101611819565b5093949350505050565b6020815260006114196020830184611805565b6000806040838503121561186757600080fd5b611870836113a5565b91506020830135801515811461188557600080fd5b809150509250929050565b600080604083850312156118a357600080fd5b6118ac836113a5565b91506118ba602084016113a5565b90509250929050565b600080600080600060a086880312156118db57600080fd5b6118e4866113a5565b94506118f2602087016113a5565b9350604086013592506060860135915060808601356001600160401b0381111561171457600080fd5b60006020828403121561192d57600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156107d6576107d661194a565b600181811c9082168061198757607f821691505b6020821081036119a757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156119f457806000526020600020601f840160051c810160208510156119d45750805b601f840160051c820191505b81811015610cc857600081556001016119e0565b505050565b81516001600160401b03811115611a1257611a12611492565b611a2681611a208454611973565b846119ad565b6020601f821160018114611a5a5760008315611a425750848201515b600019600385901b1c1916600184901b178455610cc8565b600084815260208120601f198516915b82811015611a8a5787850151825560209485019460019092019101611a6a565b5084821015611aa85786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b600060018201611ac957611ac961194a565b5060010190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090611b0a90830184611439565b979650505050505050565b600060208284031215611b2757600080fd5b8151611419816113e6565b6001600160a01b0386811682528516602082015260a060408201819052600090611b5e90830186611805565b8281036060840152611b708186611805565b90508281036080840152611b848185611439565b98975050505050505050565b604081526000611ba36040830185611805565b8281036020840152611bb58185611805565b9594505050505056fea2646970667358221220462e7b5cb49beb2d6ad017e9bffda6a16b59ee3e234571f02c25a7026a55e91c64736f6c634300081c0033697066733a2f2f516d657072344c32467957667a75337558586233757433326f75483551584e6661594a764e78345577544d526e43697066733a2f2f516d617a3752586943684b73514276764236344832436e68394e4b427765426e5453444a61383170794e486e6d6f697066733a2f2f516d633773774a384e703838634e4b4835354a5232737a3572394a7261516a4d746a7747747a6762755534384538697066733a2f2f516d5a74426b6f62375a5450465a577144797368515344796a79724a46516a355a7936793868675872654c6f4845697066733a2f2f516d50395255736f6b6a4d7a537668334678483731683467336f5041674c766439396f7065724a694e6963636845697066733a2f2f516d56356159646478544a74764338347652745a33585851776a6272336568577a756a416a46534e6738427a4d55