[ { "inputs": [ { "internalType": "address", "name": "minter", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_symbol", "type": "string" }, { "internalType": "string", "name": "_url", "type": "string" }, { "internalType": "uint256", "name": "_supply", "type": "uint256" }, { "internalType": "uint256", "name": "_mintPrice", "type": "uint256" }, { "internalType": "uint256", "name": "_mintLimit", "type": "uint256" }, { "internalType": "address", "name": "_treasury", "type": "address" }, { "internalType": "address", "name": "_komet", "type": "address" }, { "internalType": "address", "name": "_CollectionWallet", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AccessControlBadConfirmation", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bytes32", "name": "neededRole", "type": "bytes32" } ], "name": "AccessControlUnauthorizedAccount", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC721IncorrectOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC721InsufficientApproval", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC721InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "name": "ERC721InvalidOperator", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC721InvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC721InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC721InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC721NonexistentToken", "type": "error" }, { "inputs": [], "name": "EnforcedPause", "type": "error" }, { "inputs": [], "name": "ExpectedPause", "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": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "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": false, "internalType": "uint256", "name": "_fromTokenId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "_toTokenId", "type": "uint256" } ], "name": "BatchMetadataUpdate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "MetadataUpdate", "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": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_user", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "UserPaid", "type": "event" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "KOMET_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MINTER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "OG_user_addresses", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "OgMint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "Og_minted_address", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PAUSER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "WL_user_addresses", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "amount_paid", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "base_url", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "collectionWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "recipient1", "type": "address" }, { "internalType": "address payable", "name": "recipient2", "type": "address" } ], "name": "distributeFunds", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "feePercent", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "has_paid", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "kometWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mint_Limit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mint_price", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "noOfEntry", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "percentDecimal", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "internalType": "struct Komet.automint[]", "name": "_users", "type": "tuple[]" } ], "name": "presaleMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "presale_users", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "publicMint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "public_minted_address", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "callerConfirmation", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "sequence", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_uri", "type": "string" } ], "name": "setBaseUrl", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_wallet", "type": "address" } ], "name": "setCollectionWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_limit", "type": "uint256" } ], "name": "setMintSupply", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_price", "type": "uint256" }, { "internalType": "uint256", "name": "_perWalletLimit", "type": "uint256" }, { "internalType": "bool", "name": "_og", "type": "bool" }, { "internalType": "bool", "name": "_wl", "type": "bool" }, { "internalType": "bool", "name": "_public", "type": "bool" } ], "name": "setMintType", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "_accounts", "type": "address[]" } ], "name": "setOgWhiteList", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_percent", "type": "uint256" }, { "internalType": "uint256", "name": "_decimal", "type": "uint256" } ], "name": "setPlatFormFeeCharges", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "_sequence", "type": "uint256[]" } ], "name": "setSequence", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" } ], "name": "setTreasuryWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "_accounts", "type": "address[]" } ], "name": "setWLWhiteList", "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": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "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": "tokenId", "type": "uint256" } ], "name": "transferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "treasury", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "treasuryMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "withdrawAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "wlMint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "wl_minted_address", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
6080604052600060145560006015556005601655600a60175560405180602001604052806000815250601a90816200003891906200084e565b503480156200004657600080fd5b50604051620068a3380380620068a383398181016040528101906200006c919062000b2f565b33898981600090816200008091906200084e565b5080600190816200009291906200084e565b5050506000600760006101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620001255760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200011c919062000c93565b60405180910390fd5b62000136816200039760201b60201c565b506200014c6000801b336200045d60201b60201c565b506200017f7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a336200045d60201b60201c565b50620001b27f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6336200045d60201b60201c565b50620001e57fc5abefe4aed277fb344652e626c3c4fe5cdab1313b8ac46cdd6da9bbe98161cb8b6200045d60201b60201c565b50620001fb6000801b8b6200045d60201b60201c565b506200022e7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8b6200045d60201b60201c565b50620002617f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68b6200045d60201b60201c565b50620002947fc5abefe4aed277fb344652e626c3c4fe5cdab1313b8ac46cdd6da9bbe98161cb8b6200045d60201b60201c565b50600060198190555086601a9081620002ae91906200084e565b5085601481905550846009819055508360188190555082600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050505050505062000cb0565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006200047183836200056160201b60201c565b620005565760016008600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620004f2620005cc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4600190506200055b565b600090505b92915050565b60006008600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200065657607f821691505b6020821081036200066c576200066b6200060e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006d67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000697565b620006e2868362000697565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200072f620007296200072384620006fa565b62000704565b620006fa565b9050919050565b6000819050919050565b6200074b836200070e565b620007636200075a8262000736565b848454620006a4565b825550505050565b600090565b6200077a6200076b565b6200078781848462000740565b505050565b5b81811015620007af57620007a360008262000770565b6001810190506200078d565b5050565b601f821115620007fe57620007c88162000672565b620007d38462000687565b81016020851015620007e3578190505b620007fb620007f28562000687565b8301826200078c565b50505b505050565b600082821c905092915050565b6000620008236000198460080262000803565b1980831691505092915050565b60006200083e838362000810565b9150826002028217905092915050565b6200085982620005d4565b67ffffffffffffffff811115620008755762000874620005df565b5b6200088182546200063d565b6200088e828285620007b3565b600060209050601f831160018114620008c65760008415620008b1578287015190505b620008bd858262000830565b8655506200092d565b601f198416620008d68662000672565b60005b828110156200090057848901518255600182019150602085019450602081019050620008d9565b868310156200092057848901516200091c601f89168262000810565b8355505b6001600288020188555050505b505050505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620009768262000949565b9050919050565b620009888162000969565b81146200099457600080fd5b50565b600081519050620009a8816200097d565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b620009d482620009b8565b810181811067ffffffffffffffff82111715620009f657620009f5620005df565b5b80604052505050565b600062000a0b62000935565b905062000a198282620009c9565b919050565b600067ffffffffffffffff82111562000a3c5762000a3b620005df565b5b62000a4782620009b8565b9050602081019050919050565b60005b8381101562000a7457808201518184015260208101905062000a57565b60008484015250505050565b600062000a9762000a918462000a1e565b620009ff565b90508281526020810184848401111562000ab65762000ab5620009b3565b5b62000ac384828562000a54565b509392505050565b600082601f83011262000ae35762000ae2620009ae565b5b815162000af584826020860162000a80565b91505092915050565b62000b0981620006fa565b811462000b1557600080fd5b50565b60008151905062000b298162000afe565b92915050565b6000806000806000806000806000806101408b8d03121562000b565762000b556200093f565b5b600062000b668d828e0162000997565b9a505060208b015167ffffffffffffffff81111562000b8a5762000b8962000944565b5b62000b988d828e0162000acb565b99505060408b015167ffffffffffffffff81111562000bbc5762000bbb62000944565b5b62000bca8d828e0162000acb565b98505060608b015167ffffffffffffffff81111562000bee5762000bed62000944565b5b62000bfc8d828e0162000acb565b975050608062000c0f8d828e0162000b18565b96505060a062000c228d828e0162000b18565b95505060c062000c358d828e0162000b18565b94505060e062000c488d828e0162000997565b93505061010062000c5c8d828e0162000997565b92505061012062000c708d828e0162000997565b9150509295989b9194979a5092959850565b62000c8d8162000969565b82525050565b600060208201905062000caa600083018462000c82565b92915050565b615be38062000cc06000396000f3fe6080604052600436106103b15760003560e01c806391d14854116101e7578063c87b56dd1161010d578063e63ab1e9116100a0578063efdc77881161006f578063efdc778814610ef3578063f2fde38b14610f1c578063fccd405914610f45578063fdd46f6014610f6e57610498565b8063e63ab1e914610e25578063e985e9c514610e50578063eda1d5e914610e8d578063ee78b83314610eca57610498565b8063d547741f116100dc578063d547741f14610d8c578063d94f44f114610db5578063e175bd2014610dd1578063e62f49c914610dfc57610498565b8063c87b56dd14610ccb578063d3fc8cdf14610d08578063d4de8d5714610d45578063d539139314610d6157610498565b8063a50dcc6211610185578063b88d4fde11610154578063b88d4fde14610c25578063ba1a681f14610c4e578063be14b0b714610c79578063c7c3268b14610ca257610498565b8063a50dcc6214610b59578063a8602fea14610b96578063abe853e314610bbf578063ac568e8414610bfc57610498565b80639f34c87a116101c15780639f34c87a14610a8b578063a10de02214610ac8578063a217fddf14610b05578063a22cb46514610b3057610498565b806391d14854146109fa57806393e0cdf214610a3757806395d89b4114610a6057610498565b806336568abe116102d75780636aabb9471161026a57806376ed77101161023957806376ed77101461095057806378b9f1a9146109795780637fd6f15c146109a45780638da5cb5b146109cf57610498565b80636aabb947146108a357806370a08231146108bf578063711e3215146108fc578063715018a61461093957610498565b80635c975abb116102a65780635c975abb146107e757806361d027b3146108125780636352211e1461083d578063637dd2fc1461087a57610498565b806336568abe1461074157806337ad286a1461076a5780633ccfd60b146107a757806342842e0e146107be57610498565b80631a4231a41161034f5780632e129dbb1161031e5780632e129dbb146106855780632f2ff15d146106b057806333190f70146106d957806333a1bb261461071657610498565b80631a4231a4146105d857806323b872dd14610603578063248a9ca31461062c5780632db115441461066957610498565b8063081812fc1161038b578063081812fc1461051c578063095ea7b314610559578063144bee421461058257806318160ddd146105ad57610498565b806301ffc9a71461049d57806304c76af0146104da57806306fdde03146104f157610498565b36610498576001601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555034601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550343373ffffffffffffffffffffffffffffffffffffffff167f188c4d19b4fadd1889d9bd9bf0ab7c97e0719434751e6c05feac6339c1c001ec60405160405180910390a3005b600080fd5b3480156104a957600080fd5b506104c460048036038101906104bf91906140d3565b610f99565b6040516104d1919061411b565b60405180910390f35b3480156104e657600080fd5b506104ef610fab565b005b3480156104fd57600080fd5b50610506611035565b60405161051391906141c6565b60405180910390f35b34801561052857600080fd5b50610543600480360381019061053e919061421e565b6110c7565b604051610550919061428c565b60405180910390f35b34801561056557600080fd5b50610580600480360381019061057b91906142d3565b6110e3565b005b34801561058e57600080fd5b506105976110f9565b6040516105a49190614322565b60405180910390f35b3480156105b957600080fd5b506105c26110ff565b6040516105cf9190614322565b60405180910390f35b3480156105e457600080fd5b506105ed611105565b6040516105fa9190614322565b60405180910390f35b34801561060f57600080fd5b5061062a6004803603810190610625919061433d565b61110b565b005b34801561063857600080fd5b50610653600480360381019061064e91906143c6565b61120d565b6040516106609190614402565b60405180910390f35b610683600480360381019061067e919061421e565b61122d565b005b34801561069157600080fd5b5061069a611549565b6040516106a7919061428c565b60405180910390f35b3480156106bc57600080fd5b506106d760048036038101906106d2919061441d565b61156f565b005b3480156106e557600080fd5b5061070060048036038101906106fb919061445d565b611591565b60405161070d9190614322565b60405180910390f35b34801561072257600080fd5b5061072b6115a9565b60405161073891906141c6565b60405180910390f35b34801561074d57600080fd5b506107686004803603810190610763919061441d565b611637565b005b34801561077657600080fd5b50610791600480360381019061078c919061445d565b6116b2565b60405161079e919061411b565b60405180910390f35b3480156107b357600080fd5b506107bc6116d2565b005b3480156107ca57600080fd5b506107e560048036038101906107e0919061433d565b6118b6565b005b3480156107f357600080fd5b506107fc6118d6565b604051610809919061411b565b60405180910390f35b34801561081e57600080fd5b506108276118ed565b604051610834919061428c565b60405180910390f35b34801561084957600080fd5b50610864600480360381019061085f919061421e565b611913565b604051610871919061428c565b60405180910390f35b34801561088657600080fd5b506108a1600480360381019061089c91906145d2565b611925565b005b6108bd60048036038101906108b8919061421e565b6119c8565b005b3480156108cb57600080fd5b506108e660048036038101906108e1919061445d565b611d72565b6040516108f39190614322565b60405180910390f35b34801561090857600080fd5b50610923600480360381019061091e919061421e565b611e2c565b6040516109309190614322565b60405180910390f35b34801561094557600080fd5b5061094e611e44565b005b34801561095c57600080fd5b5061097760048036038101906109729190614647565b611e58565b005b34801561098557600080fd5b5061098e611ec9565b60405161099b919061428c565b60405180910390f35b3480156109b057600080fd5b506109b9611eef565b6040516109c69190614322565b60405180910390f35b3480156109db57600080fd5b506109e4611ef5565b6040516109f1919061428c565b60405180910390f35b348015610a0657600080fd5b50610a216004803603810190610a1c919061441d565b611f1f565b604051610a2e919061411b565b60405180910390f35b348015610a4357600080fd5b50610a5e6004803603810190610a5991906145d2565b611f8a565b005b348015610a6c57600080fd5b50610a7561202d565b604051610a8291906141c6565b60405180910390f35b348015610a9757600080fd5b50610ab26004803603810190610aad919061445d565b6120bf565b604051610abf919061411b565b60405180910390f35b348015610ad457600080fd5b50610aef6004803603810190610aea919061445d565b6120df565b604051610afc9190614322565b60405180910390f35b348015610b1157600080fd5b50610b1a6120f7565b604051610b279190614402565b60405180910390f35b348015610b3c57600080fd5b50610b576004803603810190610b5291906146c2565b6120fe565b005b348015610b6557600080fd5b50610b806004803603810190610b7b919061445d565b612114565b604051610b8d919061411b565b60405180910390f35b348015610ba257600080fd5b50610bbd6004803603810190610bb8919061445d565b612134565b005b348015610bcb57600080fd5b50610be66004803603810190610be1919061445d565b612186565b604051610bf39190614322565b60405180910390f35b348015610c0857600080fd5b50610c236004803603810190610c1e919061421e565b61219e565b005b348015610c3157600080fd5b50610c4c6004803603810190610c4791906147b7565b6121b6565b005b348015610c5a57600080fd5b50610c636121d3565b604051610c709190614322565b60405180910390f35b348015610c8557600080fd5b50610ca06004803603810190610c9b9190614952565b6121d9565b005b348015610cae57600080fd5b50610cc96004803603810190610cc49190614a3c565b6123ed565b005b348015610cd757600080fd5b50610cf26004803603810190610ced919061421e565b61240e565b604051610cff91906141c6565b60405180910390f35b348015610d1457600080fd5b50610d2f6004803603810190610d2a919061445d565b612420565b604051610d3c919061411b565b60405180910390f35b610d5f6004803603810190610d5a919061421e565b612440565b005b348015610d6d57600080fd5b50610d766127ea565b604051610d839190614402565b60405180910390f35b348015610d9857600080fd5b50610db36004803603810190610dae919061441d565b61280e565b005b610dcf6004803603810190610dca9190614ac3565b612830565b005b348015610ddd57600080fd5b50610de6612a2c565b604051610df39190614322565b60405180910390f35b348015610e0857600080fd5b50610e236004803603810190610e1e9190614bc6565b612a32565b005b348015610e3157600080fd5b50610e3a612ab1565b604051610e479190614402565b60405180910390f35b348015610e5c57600080fd5b50610e776004803603810190610e729190614c0f565b612ad5565b604051610e84919061411b565b60405180910390f35b348015610e9957600080fd5b50610eb46004803603810190610eaf919061445d565b612b69565b604051610ec19190614322565b60405180910390f35b348015610ed657600080fd5b50610ef16004803603810190610eec919061445d565b612b81565b005b348015610eff57600080fd5b50610f1a6004803603810190610f15919061421e565b612bd3565b005b348015610f2857600080fd5b50610f436004803603810190610f3e919061445d565b612cc8565b005b348015610f5157600080fd5b50610f6c6004803603810190610f679190614c4f565b612cf8565b005b348015610f7a57600080fd5b50610f83612d35565b604051610f909190614402565b60405180910390f35b6000610fa482612d59565b9050919050565b6000801b610fb881612dd3565b60003373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050905080611031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102890614cdb565b60405180910390fd5b5050565b60606000805461104490614d2a565b80601f016020809104026020016040519081016040528092919081815260200182805461107090614d2a565b80156110bd5780601f10611092576101008083540402835291602001916110bd565b820191906000526020600020905b8154815290600101906020018083116110a057829003601f168201915b5050505050905090565b60006110d282612de7565b506110dc82612e6f565b9050919050565b6110f582826110f0612eac565b612eb4565b5050565b60155481565b60195481565b60095481565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361117d5760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611174919061428c565b60405180910390fd5b6000611191838361118c612eac565b612ec6565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611207578382826040517f64283d7b0000000000000000000000000000000000000000000000000000000081526004016111fe93929190614d5b565b60405180910390fd5b50505050565b600060086000838152602001908152602001600020600101549050919050565b601360029054906101000a900460ff1661127c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127390614dde565b60405180910390fd5b6014548160195461128d9190614e2d565b11156112ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c590614ead565b60405180910390fd5b34600954826112dd9190614ecd565b111561131e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131590614f5b565b60405180910390fd5b601854601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156113a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139990614fc7565b60405180910390fd5b60185481601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f09190614e2d565b1115611431576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142890614fc7565b60405180910390fd5b60005b818110156114f75760006012600060195481526020019081526020016000205490506001601960008282546114699190614e2d565b925050819055506001601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114c09190614e2d565b925050819055506114d133826130e0565b6114e3816114de836131d9565b61320d565b5080806114ef90614fe7565b915050611434565b50611546600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612830565b50565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6115788261120d565b61158181612dd3565b61158b8383613269565b50505050565b601d6020528060005260406000206000915090505481565b601a80546115b690614d2a565b80601f01602080910402602001604051908101604052809291908181526020018280546115e290614d2a565b801561162f5780601f106116045761010080835404028352916020019161162f565b820191906000526020600020905b81548152906001019060200180831161161257829003601f168201915b505050505081565b61163f612eac565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116a3576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6116ad828261335b565b505050565b600e6020528060005260406000206000915054906101000a900460ff1681565b601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661175e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117559061507b565b60405180910390fd5b6000601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060003373ffffffffffffffffffffffffffffffffffffffff166108fc601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549081150290604051600060405180830381858888f193505050509050806118b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118aa90614cdb565b60405180910390fd5b50565b6118d1838383604051806020016040528060008152506121b6565b505050565b6000600760009054906101000a900460ff16905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061191e82612de7565b9050919050565b6000801b61193281612dd3565b60005b82518110156119c3576001600d60008584815181106119575761195661509b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806119bb90614fe7565b915050611935565b505050565b80601360019054906101000a900460ff16611a18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0f90615116565b60405180910390fd5b60145481601954611a299190614e2d565b1115611a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6190614ead565b60405180910390fd5b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611af6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aed906151a8565b60405180910390fd5b601854601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115611b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7190615214565b60405180910390fd5b60185481601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bc89190614e2d565b1115611c09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0090615280565b60405180910390fd5b3460095482611c189190614ecd565b1115611c59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5090614f5b565b60405180910390fd5b60005b82811015611d1f576000601260006019548152602001908152602001600020549050600160196000828254611c919190614e2d565b925050819055506001601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ce89190614e2d565b92505081905550611cf933826130e0565b611d0b81611d06836131d9565b61320d565b508080611d1790614fe7565b915050611c5c565b50611d6e600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612830565b5050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611de55760006040517f89c62b64000000000000000000000000000000000000000000000000000000008152600401611ddc919061428c565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60126020528060005260406000206000915090505481565b611e4c61344e565b611e5660006134d5565b565b6000801b611e6581612dd3565b856009819055508460188190555083601360006101000a81548160ff02191690831515021790555082601360016101000a81548160ff02191690831515021790555081601360026101000a81548160ff021916908315150217905550505050505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60165481565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006008600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b611f9781612dd3565b60005b8251811015612028576001600e6000858481518110611fbc57611fbb61509b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061202090614fe7565b915050611f9a565b505050565b60606001805461203c90614d2a565b80601f016020809104026020016040519081016040528092919081815260200182805461206890614d2a565b80156120b55780601f1061208a576101008083540402835291602001916120b5565b820191906000526020600020905b81548152906001019060200180831161209857829003601f168201915b5050505050905090565b601b6020528060005260406000206000915054906101000a900460ff1681565b600f6020528060005260406000206000915090505481565b6000801b81565b612110612109612eac565b838361359b565b5050565b600d6020528060005260406000206000915054906101000a900460ff1681565b6000801b61214181612dd3565b81600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60106020528060005260406000206000915090505481565b6000801b6121ab81612dd3565b816014819055505050565b6121c184848461110b565b6121cd8484848461370a565b50505050565b60175481565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661220381612dd3565b60005b82518110156123e85760005b8382815181106122255761222461509b565b5b6020026020010151602001518110156123d45760145484838151811061224e5761224d61509b565b5b6020026020010151602001516019546122679190614e2d565b11156122a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161229f906152ec565b60405180910390fd5b601b60008584815181106122bf576122be61509b565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612352576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123499061537e565b60405180910390fd5b600060126000601954815260200190815260200160002054905060016019600082825461237f9190614e2d565b925050819055506123ae85848151811061239c5761239b61509b565b5b602002602001015160000151826130e0565b6123c0816123bb836131d9565b61320d565b5080806123cc90614fe7565b915050612212565b5080806123e090614fe7565b915050612206565b505050565b6000801b6123fa81612dd3565b81601a9081612409919061554a565b505050565b6060612419826131d9565b9050919050565b601c6020528060005260406000206000915054906101000a900460ff1681565b80601360009054906101000a900460ff16612490576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248790615668565b60405180910390fd5b601454816019546124a19190614e2d565b11156124e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124d990614ead565b60405180910390fd5b600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661256e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612565906156fa565b60405180910390fd5b601854600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156125f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e990615766565b60405180910390fd5b60185481600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126409190614e2d565b1115612681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161267890615280565b60405180910390fd5b34600954826126909190614ecd565b11156126d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126c890614f5b565b60405180910390fd5b60005b828110156127975760006012600060195481526020019081526020016000205490506001601960008282546127099190614e2d565b925050819055506001600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127609190614e2d565b9250508190555061277133826130e0565b6127838161277e836131d9565b61320d565b50808061278f90614fe7565b9150506126d4565b506127e6600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612830565b5050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6128178261120d565b61282081612dd3565b61282a838361335b565b50505050565b6000600954111561299757600034905060006017546064601654846128559190614ecd565b61285f91906157b5565b61286991906157b5565b90506000818361287991906157e6565b9050804710156128be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128b59061588c565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612904573d6000803e3d6000fd5b5081471015612948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161293f9061591e565b60405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801561298e573d6000803e3d6000fd5b50505050612a28565b6000349050804710156129df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129d69061591e565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612a25573d6000803e3d6000fd5b50505b5050565b60185481565b6000801b612a3f81612dd3565b60005b8251811015612aac57828181518110612a5e57612a5d61509b565b5b602002602001015160126000601554815260200190815260200160002081905550600160156000828254612a929190614e2d565b925050819055508080612aa490614fe7565b915050612a42565b505050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60116020528060005260406000206000915090505481565b6000801b612b8e81612dd3565b81600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000801b612be081612dd3565b60145482601954612bf19190614e2d565b1115612c32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c29906152ec565b60405180910390fd5b60005b82811015612cc3576000601260006019548152602001908152602001600020549050600160196000828254612c6a9190614e2d565b92505081905550612c9d600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826130e0565b612caf81612caa836131d9565b61320d565b508080612cbb90614fe7565b915050612c35565b505050565b612cd061344e565b612cdd6000801b3361335b565b50612ceb6000801b82613269565b50612cf5816134d5565b50565b7fc5abefe4aed277fb344652e626c3c4fe5cdab1313b8ac46cdd6da9bbe98161cb612d2281612dd3565b8260168190555081601781905550505050565b7fc5abefe4aed277fb344652e626c3c4fe5cdab1313b8ac46cdd6da9bbe98161cb81565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612dcc5750612dcb826138c1565b5b9050919050565b612de481612ddf612eac565b613922565b50565b600080612df383613973565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612e6657826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401612e5d9190614322565b60405180910390fd5b80915050919050565b60006004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033905090565b612ec183838360016139b0565b505050565b600080612ed284613973565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612f1457612f13818486613b75565b5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612fa557612f566000856000806139b0565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614613028576001600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b846002600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036131525760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401613149919061428c565b60405180910390fd5b600061316083836000612ec6565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146131d45760006040517f73c6ac6e0000000000000000000000000000000000000000000000000000000081526004016131cb919061428c565b60405180910390fd5b505050565b6060601a6131e683613c39565b6040516020016131f7929190615a49565b6040516020818303038152906040529050919050565b8060066000848152602001908152602001600020908161322d919061554a565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161325d9190614322565b60405180910390a15050565b60006132758383611f1f565b6133505760016008600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506132ed612eac565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050613355565b600090505b92915050565b60006133678383611f1f565b156134435760006008600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506133e0612eac565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a460019050613448565b600090505b92915050565b613456612eac565b73ffffffffffffffffffffffffffffffffffffffff16613474611ef5565b73ffffffffffffffffffffffffffffffffffffffff16146134d357613497612eac565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016134ca919061428c565b60405180910390fd5b565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361360c57816040517f5b08ba18000000000000000000000000000000000000000000000000000000008152600401613603919061428c565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516136fd919061411b565b60405180910390a3505050565b60008373ffffffffffffffffffffffffffffffffffffffff163b11156138bb578273ffffffffffffffffffffffffffffffffffffffff1663150b7a0261374e612eac565b8685856040518563ffffffff1660e01b81526004016137709493929190615acd565b6020604051808303816000875af19250505080156137ac57506040513d601f19601f820116820180604052508101906137a99190615b2e565b60015b613830573d80600081146137dc576040519150601f19603f3d011682016040523d82523d6000602084013e6137e1565b606091505b50600081510361382857836040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161381f919061428c565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146138b957836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016138b0919061428c565b60405180910390fd5b505b50505050565b6000634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061391b575061391a82613d07565b5b9050919050565b61392c8282611f1f565b61396f5780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401613966929190615b5b565b60405180910390fd5b5050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b80806139e95750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15613b1d5760006139f984612de7565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015613a6457508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015613a775750613a758184612ad5565b155b15613ab957826040517fa9fbf51f000000000000000000000000000000000000000000000000000000008152600401613ab0919061428c565b60405180910390fd5b8115613b1b57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b836004600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b613b80838383613de9565b613c3457600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613bf557806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401613bec9190614322565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401613c2b929190615b84565b60405180910390fd5b505050565b606060006001613c4884613eaa565b01905060008167ffffffffffffffff811115613c6757613c6661448f565b5b6040519080825280601f01601f191660200182016040528015613c995781602001600182028036833780820191505090505b509050600082602001820190505b600115613cfc578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581613cf057613cef615786565b5b04945060008503613ca7575b819350505050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480613dd257507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80613de25750613de182613ffd565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015613ea157508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480613e625750613e618484612ad5565b5b80613ea057508273ffffffffffffffffffffffffffffffffffffffff16613e8883612e6f565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613f08577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381613efe57613efd615786565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310613f45576d04ee2d6d415b85acef81000000008381613f3b57613f3a615786565b5b0492506020810190505b662386f26fc100008310613f7457662386f26fc100008381613f6a57613f69615786565b5b0492506010810190505b6305f5e1008310613f9d576305f5e1008381613f9357613f92615786565b5b0492506008810190505b6127108310613fc2576127108381613fb857613fb7615786565b5b0492506004810190505b60648310613fe55760648381613fdb57613fda615786565b5b0492506002810190505b600a8310613ff4576001810190505b80915050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6140b08161407b565b81146140bb57600080fd5b50565b6000813590506140cd816140a7565b92915050565b6000602082840312156140e9576140e8614071565b5b60006140f7848285016140be565b91505092915050565b60008115159050919050565b61411581614100565b82525050565b6000602082019050614130600083018461410c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015614170578082015181840152602081019050614155565b60008484015250505050565b6000601f19601f8301169050919050565b600061419882614136565b6141a28185614141565b93506141b2818560208601614152565b6141bb8161417c565b840191505092915050565b600060208201905081810360008301526141e0818461418d565b905092915050565b6000819050919050565b6141fb816141e8565b811461420657600080fd5b50565b600081359050614218816141f2565b92915050565b60006020828403121561423457614233614071565b5b600061424284828501614209565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006142768261424b565b9050919050565b6142868161426b565b82525050565b60006020820190506142a1600083018461427d565b92915050565b6142b08161426b565b81146142bb57600080fd5b50565b6000813590506142cd816142a7565b92915050565b600080604083850312156142ea576142e9614071565b5b60006142f8858286016142be565b925050602061430985828601614209565b9150509250929050565b61431c816141e8565b82525050565b60006020820190506143376000830184614313565b92915050565b60008060006060848603121561435657614355614071565b5b6000614364868287016142be565b9350506020614375868287016142be565b925050604061438686828701614209565b9150509250925092565b6000819050919050565b6143a381614390565b81146143ae57600080fd5b50565b6000813590506143c08161439a565b92915050565b6000602082840312156143dc576143db614071565b5b60006143ea848285016143b1565b91505092915050565b6143fc81614390565b82525050565b600060208201905061441760008301846143f3565b92915050565b6000806040838503121561443457614433614071565b5b6000614442858286016143b1565b9250506020614453858286016142be565b9150509250929050565b60006020828403121561447357614472614071565b5b6000614481848285016142be565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6144c78261417c565b810181811067ffffffffffffffff821117156144e6576144e561448f565b5b80604052505050565b60006144f9614067565b905061450582826144be565b919050565b600067ffffffffffffffff8211156145255761452461448f565b5b602082029050602081019050919050565b600080fd5b600061454e6145498461450a565b6144ef565b9050808382526020820190506020840283018581111561457157614570614536565b5b835b8181101561459a578061458688826142be565b845260208401935050602081019050614573565b5050509392505050565b600082601f8301126145b9576145b861448a565b5b81356145c984826020860161453b565b91505092915050565b6000602082840312156145e8576145e7614071565b5b600082013567ffffffffffffffff81111561460657614605614076565b5b614612848285016145a4565b91505092915050565b61462481614100565b811461462f57600080fd5b50565b6000813590506146418161461b565b92915050565b600080600080600060a0868803121561466357614662614071565b5b600061467188828901614209565b955050602061468288828901614209565b945050604061469388828901614632565b93505060606146a488828901614632565b92505060806146b588828901614632565b9150509295509295909350565b600080604083850312156146d9576146d8614071565b5b60006146e7858286016142be565b92505060206146f885828601614632565b9150509250929050565b600080fd5b600067ffffffffffffffff8211156147225761472161448f565b5b61472b8261417c565b9050602081019050919050565b82818337600083830152505050565b600061475a61475584614707565b6144ef565b90508281526020810184848401111561477657614775614702565b5b614781848285614738565b509392505050565b600082601f83011261479e5761479d61448a565b5b81356147ae848260208601614747565b91505092915050565b600080600080608085870312156147d1576147d0614071565b5b60006147df878288016142be565b94505060206147f0878288016142be565b935050604061480187828801614209565b925050606085013567ffffffffffffffff81111561482257614821614076565b5b61482e87828801614789565b91505092959194509250565b600067ffffffffffffffff8211156148555761485461448f565b5b602082029050602081019050919050565b600080fd5b60006040828403121561488157614880614866565b5b61488b60406144ef565b9050600061489b848285016142be565b60008301525060206148af84828501614209565b60208301525092915050565b60006148ce6148c98461483a565b6144ef565b905080838252602082019050604084028301858111156148f1576148f0614536565b5b835b8181101561491a5780614906888261486b565b8452602084019350506040810190506148f3565b5050509392505050565b600082601f8301126149395761493861448a565b5b81356149498482602086016148bb565b91505092915050565b60006020828403121561496857614967614071565b5b600082013567ffffffffffffffff81111561498657614985614076565b5b61499284828501614924565b91505092915050565b600067ffffffffffffffff8211156149b6576149b561448f565b5b6149bf8261417c565b9050602081019050919050565b60006149df6149da8461499b565b6144ef565b9050828152602081018484840111156149fb576149fa614702565b5b614a06848285614738565b509392505050565b600082601f830112614a2357614a2261448a565b5b8135614a338482602086016149cc565b91505092915050565b600060208284031215614a5257614a51614071565b5b600082013567ffffffffffffffff811115614a7057614a6f614076565b5b614a7c84828501614a0e565b91505092915050565b6000614a908261424b565b9050919050565b614aa081614a85565b8114614aab57600080fd5b50565b600081359050614abd81614a97565b92915050565b60008060408385031215614ada57614ad9614071565b5b6000614ae885828601614aae565b9250506020614af985828601614aae565b9150509250929050565b600067ffffffffffffffff821115614b1e57614b1d61448f565b5b602082029050602081019050919050565b6000614b42614b3d84614b03565b6144ef565b90508083825260208201905060208402830185811115614b6557614b64614536565b5b835b81811015614b8e5780614b7a8882614209565b845260208401935050602081019050614b67565b5050509392505050565b600082601f830112614bad57614bac61448a565b5b8135614bbd848260208601614b2f565b91505092915050565b600060208284031215614bdc57614bdb614071565b5b600082013567ffffffffffffffff811115614bfa57614bf9614076565b5b614c0684828501614b98565b91505092915050565b60008060408385031215614c2657614c25614071565b5b6000614c34858286016142be565b9250506020614c45858286016142be565b9150509250929050565b60008060408385031215614c6657614c65614071565b5b6000614c7485828601614209565b9250506020614c8585828601614209565b9150509250929050565b7f4574686572207472616e73666572206661696c65642e00000000000000000000600082015250565b6000614cc5601683614141565b9150614cd082614c8f565b602082019050919050565b60006020820190508181036000830152614cf481614cb8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614d4257607f821691505b602082108103614d5557614d54614cfb565b5b50919050565b6000606082019050614d70600083018661427d565b614d7d6020830185614313565b614d8a604083018461427d565b949350505050565b7f5075626c6963206d696e74206973206e6f74206f70656e000000000000000000600082015250565b6000614dc8601783614141565b9150614dd382614d92565b602082019050919050565b60006020820190508181036000830152614df781614dbb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614e38826141e8565b9150614e43836141e8565b9250828201905080821115614e5b57614e5a614dfe565b5b92915050565b7f746f6b656e206973206c65737300000000000000000000000000000000000000600082015250565b6000614e97600d83614141565b9150614ea282614e61565b602082019050919050565b60006020820190508181036000830152614ec681614e8a565b9050919050565b6000614ed8826141e8565b9150614ee3836141e8565b9250828202614ef1816141e8565b91508282048414831517614f0857614f07614dfe565b5b5092915050565b7f757365722070617373206c6f77657220616d6f756e7400000000000000000000600082015250565b6000614f45601683614141565b9150614f5082614f0f565b602082019050919050565b60006020820190508181036000830152614f7481614f38565b9050919050565b7f7573657220657863656564206d696e74206c696d697400000000000000000000600082015250565b6000614fb1601683614141565b9150614fbc82614f7b565b602082019050919050565b60006020820190508181036000830152614fe081614fa4565b9050919050565b6000614ff2826141e8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361502457615023614dfe565b5b600182019050919050565b7f5573657220686173206e6f742079657420706169640000000000000000000000600082015250565b6000615065601583614141565b91506150708261502f565b602082019050919050565b6000602082019050818103600083015261509481615058565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f574c206d696e74206973206e6f74206f70656e00000000000000000000000000600082015250565b6000615100601383614141565b915061510b826150ca565b602082019050919050565b6000602082019050818103600083015261512f816150f3565b9050919050565b7f75736572206973206e6f742077686974656c697374656420666f72207768697460008201527f656c6973746564206d696e740000000000000000000000000000000000000000602082015250565b6000615192602c83614141565b915061519d82615136565b604082019050919050565b600060208201905081810360008301526151c181615185565b9050919050565b7f75736572206d696e742074686572652033206e66747300000000000000000000600082015250565b60006151fe601683614141565b9150615209826151c8565b602082019050919050565b6000602082019050818103600083015261522d816151f1565b9050919050565b7f657865636564206d696e74206c696d6974000000000000000000000000000000600082015250565b600061526a601183614141565b915061527582615234565b602082019050919050565b600060208201905081810360008301526152998161525d565b9050919050565b7f737570706c792065786365656400000000000000000000000000000000000000600082015250565b60006152d6600d83614141565b91506152e1826152a0565b602082019050919050565b60006020820190508181036000830152615305816152c9565b9050919050565b7f557365722068617320616c7265616479206d696e74656420746f6b656e20696e60008201527f2077686974656c6973746564206d696e74000000000000000000000000000000602082015250565b6000615368603183614141565b91506153738261530c565b604082019050919050565b600060208201905081810360008301526153978161535b565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026154007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826153c3565b61540a86836153c3565b95508019841693508086168417925050509392505050565b6000819050919050565b600061544761544261543d846141e8565b615422565b6141e8565b9050919050565b6000819050919050565b6154618361542c565b61547561546d8261544e565b8484546153d0565b825550505050565b600090565b61548a61547d565b615495818484615458565b505050565b5b818110156154b9576154ae600082615482565b60018101905061549b565b5050565b601f8211156154fe576154cf8161539e565b6154d8846153b3565b810160208510156154e7578190505b6154fb6154f3856153b3565b83018261549a565b50505b505050565b600082821c905092915050565b600061552160001984600802615503565b1980831691505092915050565b600061553a8383615510565b9150826002028217905092915050565b61555382614136565b67ffffffffffffffff81111561556c5761556b61448f565b5b6155768254614d2a565b6155818282856154bd565b600060209050601f8311600181146155b457600084156155a2578287015190505b6155ac858261552e565b865550615614565b601f1984166155c28661539e565b60005b828110156155ea578489015182556001820191506020850194506020810190506155c5565b868310156156075784890151615603601f891682615510565b8355505b6001600288020188555050505b505050505050565b7f4f47206d696e74206973206e6f74206f70656e00000000000000000000000000600082015250565b6000615652601383614141565b915061565d8261561c565b602082019050919050565b6000602082019050818103600083015261568181615645565b9050919050565b7f75736572206973206e6f742077686974656c697374656420666f72206f67206d60008201527f696e740000000000000000000000000000000000000000000000000000000000602082015250565b60006156e4602383614141565b91506156ef82615688565b604082019050919050565b60006020820190508181036000830152615713816156d7565b9050919050565b7f75736572206d696e742074686572652035206e66747300000000000000000000600082015250565b6000615750601683614141565b915061575b8261571a565b602082019050919050565b6000602082019050818103600083015261577f81615743565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006157c0826141e8565b91506157cb836141e8565b9250826157db576157da615786565b5b828204905092915050565b60006157f1826141e8565b91506157fc836141e8565b925082820390508181111561581457615813614dfe565b5b92915050565b7f496e73756666696369656e742062616c616e636520746f2073656e642074686560008201527f206669727374207472616e73616374696f6e0000000000000000000000000000602082015250565b6000615876603283614141565b91506158818261581a565b604082019050919050565b600060208201905081810360008301526158a581615869565b9050919050565b7f496e73756666696369656e742062616c616e636520746f2073656e642074686560008201527f207365636f6e64207472616e73616374696f6e00000000000000000000000000602082015250565b6000615908603383614141565b9150615913826158ac565b604082019050919050565b60006020820190508181036000830152615937816158fb565b9050919050565b600081905092915050565b6000815461595681614d2a565b615960818661593e565b9450600182166000811461597b5760018114615990576159c3565b60ff19831686528115158202860193506159c3565b6159998561539e565b60005b838110156159bb5781548189015260018201915060208101905061599c565b838801955050505b50505092915050565b60006159d782614136565b6159e1818561593e565b93506159f1818560208601614152565b80840191505092915050565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000600082015250565b6000615a3360058361593e565b9150615a3e826159fd565b600582019050919050565b6000615a558285615949565b9150615a6182846159cc565b9150615a6c82615a26565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b6000615a9f82615a78565b615aa98185615a83565b9350615ab9818560208601614152565b615ac28161417c565b840191505092915050565b6000608082019050615ae2600083018761427d565b615aef602083018661427d565b615afc6040830185614313565b8181036060830152615b0e8184615a94565b905095945050505050565b600081519050615b28816140a7565b92915050565b600060208284031215615b4457615b43614071565b5b6000615b5284828501615b19565b91505092915050565b6000604082019050615b70600083018561427d565b615b7d60208301846143f3565b9392505050565b6000604082019050615b99600083018561427d565b615ba66020830184614313565b939250505056fea264697066735822122089eb7326809e10317b5454b7bc5ea1c83a1eb2a8727e702a9505c748da9517fb64736f6c63430008140033000000000000000000000000192c3baa95235b84b46e76ea3fbff51b092dc0ed0000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000001388000000000000000000000000000000000000000000000000051ef38b821e8000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000001fefd994f4703ba7b19cbbcc1e081dbabd82d191000000000000000000000000ef6070be0954ea67985120eef153802180ec77d80000000000000000000000003eccfc9cfd08f7715a77f5084a3eafe5a247d4a2000000000000000000000000000000000000000000000000000000000000000a4c696c20446567656e730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024c44000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005c68747470733a2f2f697066732e696f2f697066732f62616679626569677a77617173767a657535616f6775336b776a7236333675736a6e6a767163623377677364777a687363743461766b747a6b32342f7072655f72657665616c2f00000000