[ { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" }, { "internalType": "address", "name": "_wrappingContract", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AlreadyExists", "type": "error" }, { "inputs": [], "name": "InvalidOwner", "type": "error" }, { "inputs": [], "name": "InvalidRecipient", "type": "error" }, { "inputs": [], "name": "InvalidSender", "type": "error" }, { "inputs": [], "name": "NotFound", "type": "error" }, { "inputs": [], "name": "Unauthorized", "type": "error" }, { "inputs": [], "name": "UnsafeRecipient", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "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": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "ERC20Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "ERC721Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "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": "id", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "accountNFTBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "addAvailableIds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "amountImported", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amountOrId", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "availableIds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "availableImports", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseTokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "contractNFTBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "contractTokenBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "enoughTokenBalance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "importTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "listAvailableIds", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxImportable", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "minted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "nftExists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC721Received", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "revokeOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "royaltyAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "_salePrice", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "royaltyReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "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": "id", "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": "string", "name": "_baseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_royaltyAmount", "type": "uint256" } ], "name": "setRoyaltyAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_royaltyReceiver", "type": "address" } ], "name": "setRoyaltyReceiver", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" }, { "internalType": "bool", "name": "state", "type": "bool" } ], "name": "setWhitelist", "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": "id", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalAvailableIds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalNativeSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "unwrap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "unwrapSet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "whitelist", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "wrap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "wrapSet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "wrappedNFTSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "wrappingContract", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
60e06040523480156200001157600080fd5b506040516200624438038062006244833981810160405281019062000037919062000356565b6040518060400160405280600a81526020017f4b494e47534849542058000000000000000000000000000000000000000000008152506040518060400160405280600a81526020017f4b494e47534849542e780000000000000000000000000000000000000000000081525060126108ae848680600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000112576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600180819055508560049081620001c6919062000617565b508460059081620001d8919062000617565b508360ff1660808160ff16815250508260c0818152505081600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550608051600a6200024191906200088e565b836200024e9190620008df565b60a0818152505050505050505060405180608001604052806043815260200162006201604391396011908162000285919062000617565b5073728b158cefede30973123c8034bbdbf29d2e23df601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101f460128190555050506200092a565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200031e82620002f1565b9050919050565b620003308162000311565b81146200033c57600080fd5b50565b600081519050620003508162000325565b92915050565b6000806040838503121562000370576200036f620002ec565b5b600062000380858286016200033f565b925050602062000393858286016200033f565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200041f57607f821691505b602082108103620004355762000434620003d7565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200049f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000460565b620004ab868362000460565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004f8620004f2620004ec84620004c3565b620004cd565b620004c3565b9050919050565b6000819050919050565b6200051483620004d7565b6200052c6200052382620004ff565b8484546200046d565b825550505050565b600090565b6200054362000534565b6200055081848462000509565b505050565b5b8181101562000578576200056c60008262000539565b60018101905062000556565b5050565b601f821115620005c75762000591816200043b565b6200059c8462000450565b81016020851015620005ac578190505b620005c4620005bb8562000450565b83018262000555565b50505b505050565b600082821c905092915050565b6000620005ec60001984600802620005cc565b1980831691505092915050565b6000620006078383620005d9565b9150826002028217905092915050565b62000622826200039d565b67ffffffffffffffff8111156200063e576200063d620003a8565b5b6200064a825462000406565b620006578282856200057c565b600060209050601f8311600181146200068f57600084156200067a578287015190505b620006868582620005f9565b865550620006f6565b601f1984166200069f866200043b565b60005b82811015620006c957848901518255600182019150602085019450602081019050620006a2565b86831015620006e95784890151620006e5601f891682620005d9565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200078c57808604811115620007645762000763620006fe565b5b6001851615620007745780820291505b808102905062000784856200072d565b945062000744565b94509492505050565b600082620007a757600190506200087a565b81620007b757600090506200087a565b8160018114620007d05760028114620007db5762000811565b60019150506200087a565b60ff841115620007f057620007ef620006fe565b5b8360020a9150848211156200080a5762000809620006fe565b5b506200087a565b5060208310610133831016604e8410600b84101617156200084b5782820a905083811115620008455762000844620006fe565b5b6200087a565b6200085a84848460016200073a565b92509050818404811115620008745762000873620006fe565b5b81810290505b9392505050565b600060ff82169050919050565b60006200089b82620004c3565b9150620008a88362000881565b9250620008d77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000795565b905092915050565b6000620008ec82620004c3565b9150620008f983620004c3565b92508282026200090981620004c3565b91508282048414831517620009235762000922620006fe565b5b5092915050565b60805160a05160c0516158a062000961600039600061179d01526000610f260152600081816112b20152612eee01526158a06000f3fe608060405234801561001057600080fd5b50600436106102f15760003560e01c806381456f481161019d578063b9f9af80116100e9578063dd62ed3e116100a2578063ea598cb01161007c578063ea598cb014610993578063ef1f3ebb146109af578063f2fde38b146109df578063fc12fa2f146109fb576102f1565b8063dd62ed3e14610917578063de0e9a3e14610947578063e985e9c514610963576102f1565b8063b9f9af8014610831578063c87b56dd1461084d578063ca5994db1461087d578063cb6205e414610899578063d528d118146108c9578063d547cfb7146108f9576102f1565b80639715165711610156578063a22cb46511610130578063a22cb465146107ab578063a9059cbb146107c7578063b0faefdd146107f7578063b88d4fde14610815576102f1565b806397151657146107415780639b19251a1461075d5780639fbc87131461078d576102f1565b806381456f481461068f578063850c23dc146106ad57806386ca1618146106cb5780638da5cb5b146106e95780638dc251e31461070757806395d89b4114610723576102f1565b80632b9689581161025c578063522624c4116102155780636352211e116101ef5780636352211e146105e157806366e3e5e41461061157806370a08231146106415780637c6e551d14610671576102f1565b8063522624c41461058b57806353d6fd59146105a957806355f804b3146105c5576102f1565b80632b968958146104ef578063313ce567146104f957806342842e0e146105175780634a15c3ac146105335780634f02c420146105515780634f07de091461056f576102f1565b806318160ddd116102ae57806318160ddd146103f25780631ae2436614610410578063201f35171461044057806323b872dd146104705780632a180d44146104a05780632a55205a146104be576102f1565b806301ffc9a7146102f657806304bdc76b1461032657806306fdde0314610344578063081812fc14610362578063095ea7b314610392578063150b7a02146103c2575b600080fd5b610310600480360381019061030b9190614195565b610a17565b60405161031d91906141dd565b60405180910390f35b61032e610b48565b60405161033b9190614211565b60405180910390f35b61034c610b55565b60405161035991906142bc565b60405180910390f35b61037c6004803603810190610377919061430a565b610be3565b6040516103899190614378565b60405180910390f35b6103ac60048036038101906103a791906143bf565b610c16565b6040516103b991906141dd565b60405180910390f35b6103dc60048036038101906103d79190614464565b610f0f565b6040516103e991906144fb565b60405180910390f35b6103fa610f24565b6040516104079190614211565b60405180910390f35b61042a600480360381019061042591906143bf565b610f48565b60405161043791906141dd565b60405180910390f35b61045a60048036038101906104559190614516565b610f5e565b6040516104679190614211565b60405180910390f35b61048a60048036038101906104859190614543565b610faa565b60405161049791906141dd565b60405180910390f35b6104a861113b565b6040516104b59190614211565b60405180910390f35b6104d860048036038101906104d39190614596565b611141565b6040516104e69291906145d6565b60405180910390f35b6104f761118d565b005b6105016112b0565b60405161050e919061461b565b60405180910390f35b610531600480360381019061052c9190614543565b6112d4565b005b61053b611408565b6040516105489190614211565b60405180910390f35b61055961141f565b6040516105669190614211565b60405180910390f35b6105896004803603810190610584919061430a565b611425565b005b6105936114b4565b6040516105a09190614211565b60405180910390f35b6105c360048036038101906105be9190614662565b6114ba565b005b6105df60048036038101906105da91906147d2565b61159a565b005b6105fb60048036038101906105f6919061430a565b611632565b6040516106089190614378565b60405180910390f35b61062b60048036038101906106269190614516565b6116d5565b6040516106389190614211565b60405180910390f35b61065b60048036038101906106569190614516565b61177d565b6040516106689190614211565b60405180910390f35b610679611795565b6040516106869190614211565b60405180910390f35b61069761179b565b6040516106a49190614211565b60405180910390f35b6106b56117bf565b6040516106c29190614211565b60405180910390f35b6106d36117c5565b6040516106e091906148d9565b60405180910390f35b6106f161181d565b6040516106fe9190614378565b60405180910390f35b610721600480360381019061071c9190614516565b611841565b005b61072b61190a565b60405161073891906142bc565b60405180910390f35b61075b600480360381019061075691906149be565b611998565b005b61077760048036038101906107729190614516565b6119ee565b60405161078491906141dd565b60405180910390f35b610795611a0e565b6040516107a29190614378565b60405180910390f35b6107c560048036038101906107c09190614662565b611a34565b005b6107e160048036038101906107dc91906143bf565b611b31565b6040516107ee91906141dd565b60405180910390f35b6107ff611b46565b60405161080c9190614378565b60405180910390f35b61082f600480360381019061082a9190614464565b611b6c565b005b61084b6004803603810190610846919061430a565b611ca6565b005b6108676004803603810190610862919061430a565b61204b565b60405161087491906142bc565b60405180910390f35b610897600480360381019061089291906149be565b61207f565b005b6108b360048036038101906108ae919061430a565b6120d5565b6040516108c091906141dd565b60405180910390f35b6108e360048036038101906108de919061430a565b612141565b6040516108f09190614211565b60405180910390f35b610901612165565b60405161090e91906142bc565b60405180910390f35b610931600480360381019061092c9190614a07565b6121f3565b60405161093e9190614211565b60405180910390f35b610961600480360381019061095c919061430a565b612218565b005b61097d60048036038101906109789190614a07565b612234565b60405161098a91906141dd565b60405180910390f35b6109ad60048036038101906109a8919061430a565b612263565b005b6109c960048036038101906109c49190614516565b61227f565b6040516109d69190614211565b60405180910390f35b6109f960048036038101906109f49190614516565b6122cb565b005b610a156004803603810190610a1091906149be565b612453565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610ae257507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610b315750632a55205a60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610b415750610b40826126de565b5b9050919050565b6000601080549050905090565b60048054610b6290614a76565b80601f0160208091040260200160405190810160405280929190818152602001828054610b8e90614a76565b8015610bdb5780601f10610bb057610100808354040283529160200191610bdb565b820191906000526020600020905b815481529060010190602001808311610bbe57829003601f168201915b505050505081565b60096020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006006548211158015610c2a5750600082115b15610e1e576000600b600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610d2a5750600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15610d61576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b836009600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92585604051610e109190614211565b60405180910390a350610f05565b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610efc9190614211565b60405180910390a35b6001905092915050565b600063150b7a0260e01b905095945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600081610f54846116d5565b1015905092915050565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b600080600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561106f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106690614af3565b60405180910390fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146111235782816110a29190614b42565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b61112e858585612748565b5060019150509392505050565b60155481565b600080601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612710601254856111789190614b76565b6111829190614be7565b915091509250929050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611212576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3565b7f000000000000000000000000000000000000000000000000000000000000000081565b6112e033848484612ae0565b60008273ffffffffffffffffffffffffffffffffffffffff163b141580156113cc575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168273ffffffffffffffffffffffffffffffffffffffff1663150b7a023386856040518463ffffffff1660e01b815260040161136793929190614c4f565b6020604051808303816000875af1158015611386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113aa9190614cae565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611403576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b600060155460145461141a9190614b42565b905090565b60065481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114aa576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060128190555050565b60145481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461153f576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461161f576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806011908161162e9190614e87565b5050565b6000600b600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036116d0576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60006116df612eea565b600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061172c9190614b76565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117769190614b42565b9050919050565b60076020528060005260406000206000915090505481565b60125481565b7f000000000000000000000000000000000000000000000000000000000000000081565b60035481565b6060601080548060200260200160405190810160405280929190818152602001828054801561181357602002820191906000526020600020905b8154815260200190600101908083116117ff575b5050505050905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118c6576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6005805461191790614a76565b80601f016020809104026020016040519081016040528092919081815260200182805461194390614a76565b80156119905780601f1061196557610100808354040283529160200191611990565b820191906000526020600020905b81548152906001019060200180831161197357829003601f168201915b505050505081565b6119a0612f1e565b60005b81518110156119e2576119cf8282815181106119c2576119c1614f59565b5b6020026020010151612f6d565b80806119da90614f88565b9150506119a3565b506119eb613279565b50565b600f6020528060005260406000206000915054906101000a900460ff1681565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b80600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611b2591906141dd565b60405180910390a35050565b6000611b3e338484612748565b905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611b7833868686612ae0565b60008473ffffffffffffffffffffffffffffffffffffffff163b14158015611c68575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1663150b7a0233888787876040518663ffffffff1660e01b8152600401611c03959493929190614ffd565b6020604051808303816000875af1158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190614cae565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611c9f576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b611cae612f1e565b60145481601554611cbf919061504b565b1115611d00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cf7906150cb565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050611d2f612eea565b6001611d3b9190614b76565b8173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401611d749190614378565b602060405180830381865afa158015611d91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611db59190615100565b10611df5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dec9061519f565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401611e32939291906151bf565b6020604051808303816000875af1158015611e51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e75919061520b565b5060003390506000611e85612eea565b90506000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508460156000828254611edd919061504b565b9250508190555084600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f33919061504b565b92505081905550611f4383613282565b611fd65760008282611f559190614be7565b83600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa09190614be7565b611faa9190614b42565b905060005b81811015611fd357611fc0856132e8565b8080611fcb90614f88565b915050611faf565b50505b8273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e031487876040516120349190614211565b60405180910390a350505050612048613279565b50565b60606011612058836134ad565b6040516020016120699291906152f7565b6040516020818303038152906040529050919050565b612087612f1e565b60005b81518110156120c9576120b68282815181106120a9576120a8614f59565b5b602002602001015161357b565b80806120c190614f88565b91505061208a565b506120d2613279565b50565b60008073ffffffffffffffffffffffffffffffffffffffff16600b600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6010818154811061215157600080fd5b906000526020600020016000915090505481565b6011805461217290614a76565b80601f016020809104026020016040519081016040528092919081815260200182805461219e90614a76565b80156121eb5780601f106121c0576101008083540402835291602001916121eb565b820191906000526020600020905b8154815290600101906020018083116121ce57829003601f168201915b505050505081565b6008602052816000526040600020602052806000526040600020600091509150505481565b612220612f1e565b6122298161357b565b612231613279565b50565b600a6020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b61226b612f1e565b61227481612f6d565b61227c613279565b50565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612350576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123b6576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124d8576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81518110156126da57600073ffffffffffffffffffffffffffffffffffffffff16600b600084848151811061251357612512614f59565b5b6020026020010151815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146125a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259790615367565b60405180910390fd5b60005b60108054905081101561263d578282815181106125c3576125c2614f59565b5b6020026020010151601082815481106125df576125de614f59565b5b90600052602060002001540361262a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161262190615367565b60405180910390fd5b808061263590614f88565b9150506125a3565b50601082828151811061265357612652614f59565b5b60200260200101519080600181540180825580915050600190039060005260206000200160009091909190915055612689612eea565b60016126959190614b76565b601460008282546126a6919061504b565b925050819055506001600360008282546126c0919061504b565b9250508190555080806126d290614f88565b9150506124db565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60006127558484846137bb565b61275e846137c0565b156127af578161276d856116d5565b10156127ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a5906153d3565b60405180910390fd5b5b60006127b9612eea565b90506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546128929190614b42565b9250508190555084600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506128ef87613282565b158061293d57506000600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050115b156129d157600083600760008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461298f9190614be7565b848461299b9190614be7565b6129a59190614b42565b905060005b818110156129ce576129bb896137cb565b80806129c690614f88565b9150506129aa565b50505b6129da86613282565b612a6d57600083826129ec9190614be7565b84600760008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a379190614be7565b612a419190614b42565b905060005b81811015612a6a57612a57886132e8565b8080612a6290614f88565b915050612a46565b50505b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e03148787604051612aca9190614211565b60405180910390a3600193505050509392505050565b600b600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612b81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b789061543f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612bf0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612be7906154ab565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612cb05750600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80612d1957506009600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b612d58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d4f90615517565b60405180910390fd5b612d60612eea565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612dae9190614b42565b92505081905550612dbd612eea565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550612e138382613a50565b612e1d8282613dd4565b808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e031487612ecf612eea565b604051612edc9190614211565b60405180910390a350505050565b60007f0000000000000000000000000000000000000000000000000000000000000000600a612f19919061566a565b905090565b600260015403612f63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5a90615701565b60405180910390fd5b6002600181905550565b600073ffffffffffffffffffffffffffffffffffffffff16600b600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461300f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130069061576d565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16636352211e846040518263ffffffff1660e01b81526004016130869190614211565b602060405180830381865afa1580156130a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130c791906157a2565b73ffffffffffffffffffffffffffffffffffffffff161461311d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131149061581b565b60405180910390fd5b613125612eea565b60016131319190614b76565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461317f919061504b565b92505081905550600160036000828254613199919061504b565b925050819055506131aa3383613dd4565b8073ffffffffffffffffffffffffffffffffffffffff166342842e0e3330856040518463ffffffff1660e01b81526004016131e7939291906151bf565b600060405180830381600087803b15801561320157600080fd5b505af1158015613215573d6000803e3d6000fd5b50505050813373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b60018081905550565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806132e157506132e0826137c0565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361334e576040517f9c8d2cd200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000601060016010805490506133649190614b42565b8154811061337557613374614f59565b5b9060005260206000200154905060108054806133945761339361583b565b5b60019003818190600052602060002001600090559055600073ffffffffffffffffffffffffffffffffffffffff16600b600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614613443576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61344d8282613dd4565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b6060600060016134bc84613fd6565b01905060008167ffffffffffffffff8111156134db576134da6146a7565b5b6040519080825280601f01601f19166020018201604052801561350d5781602001600182028036833780820191505090505b509050600082602001820190505b600115613570578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161356457613563614bb8565b5b0494506000850361351b575b819350505050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661359b82611632565b73ffffffffffffffffffffffffffffffffffffffff16146135f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135e89061581b565b60405180910390fd5b6135f9612eea565b60016136059190614b76565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546136539190614b42565b9250508190555060016003600082825461366d9190614b42565b9250508190555061367e3382613a50565b600e600082815260200190815260200160002060009055600b600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166342842e0e3033846040518463ffffffff1660e01b815260040161372a939291906151bf565b600060405180830381600087803b15801561374457600080fd5b505af1158015613758573d6000803e3d6000fd5b5050505080600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a450565b505050565b6000813b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603613831576040517fddb5de5e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490506138c19190614b42565b815481106138d2576138d1614f59565b5b90600052602060002001549050600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548061392e5761392d61583b565b5b60019003818190600052602060002001600090559055600e600082815260200190815260200160002060009055600b600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556009600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055601081908060018154018082558091505060019003906000526020600020016000909190919091505580600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b6000613a5b836137c0565b15613be957600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050613aee9190614b42565b81548110613aff57613afe614f59565b5b9060005260206000200154905080600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e60008581526020019081526020016000205481548110613b7157613b70614f59565b5b9060005260206000200181905550600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480613bce57613bcd61583b565b5b60019003818190600052602060002001600090559055613d6e565b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050613c779190614b42565b81548110613c8857613c87614f59565b5b9060005260206000200154905080600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e60008581526020019081526020016000205481548110613cfa57613cf9614f59565b5b9060005260206000200181905550600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480613d5757613d5661583b565b5b600190038181906000526020600020016000905590555b600e600083815260200190815260200160002054600e6000838152602001908152602001600020819055506009600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055505050565b81600b600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550613e2f826137c0565b15613f0557600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150556001600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050613ee99190614b42565b600e600083815260200190815260200160002081905550613fd2565b600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150556001600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050613fba9190614b42565b600e6000838152602001908152602001600020819055505b5050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310614034577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161402a57614029614bb8565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310614071576d04ee2d6d415b85acef8100000000838161406757614066614bb8565b5b0492506020810190505b662386f26fc1000083106140a057662386f26fc10000838161409657614095614bb8565b5b0492506010810190505b6305f5e10083106140c9576305f5e10083816140bf576140be614bb8565b5b0492506008810190505b61271083106140ee5761271083816140e4576140e3614bb8565b5b0492506004810190505b60648310614111576064838161410757614106614bb8565b5b0492506002810190505b600a8310614120576001810190505b80915050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6141728161413d565b811461417d57600080fd5b50565b60008135905061418f81614169565b92915050565b6000602082840312156141ab576141aa614133565b5b60006141b984828501614180565b91505092915050565b60008115159050919050565b6141d7816141c2565b82525050565b60006020820190506141f260008301846141ce565b92915050565b6000819050919050565b61420b816141f8565b82525050565b60006020820190506142266000830184614202565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561426657808201518184015260208101905061424b565b60008484015250505050565b6000601f19601f8301169050919050565b600061428e8261422c565b6142988185614237565b93506142a8818560208601614248565b6142b181614272565b840191505092915050565b600060208201905081810360008301526142d68184614283565b905092915050565b6142e7816141f8565b81146142f257600080fd5b50565b600081359050614304816142de565b92915050565b6000602082840312156143205761431f614133565b5b600061432e848285016142f5565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061436282614337565b9050919050565b61437281614357565b82525050565b600060208201905061438d6000830184614369565b92915050565b61439c81614357565b81146143a757600080fd5b50565b6000813590506143b981614393565b92915050565b600080604083850312156143d6576143d5614133565b5b60006143e4858286016143aa565b92505060206143f5858286016142f5565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f840112614424576144236143ff565b5b8235905067ffffffffffffffff81111561444157614440614404565b5b60208301915083600182028301111561445d5761445c614409565b5b9250929050565b6000806000806000608086880312156144805761447f614133565b5b600061448e888289016143aa565b955050602061449f888289016143aa565b94505060406144b0888289016142f5565b935050606086013567ffffffffffffffff8111156144d1576144d0614138565b5b6144dd8882890161440e565b92509250509295509295909350565b6144f58161413d565b82525050565b600060208201905061451060008301846144ec565b92915050565b60006020828403121561452c5761452b614133565b5b600061453a848285016143aa565b91505092915050565b60008060006060848603121561455c5761455b614133565b5b600061456a868287016143aa565b935050602061457b868287016143aa565b925050604061458c868287016142f5565b9150509250925092565b600080604083850312156145ad576145ac614133565b5b60006145bb858286016142f5565b92505060206145cc858286016142f5565b9150509250929050565b60006040820190506145eb6000830185614369565b6145f86020830184614202565b9392505050565b600060ff82169050919050565b614615816145ff565b82525050565b6000602082019050614630600083018461460c565b92915050565b61463f816141c2565b811461464a57600080fd5b50565b60008135905061465c81614636565b92915050565b6000806040838503121561467957614678614133565b5b6000614687858286016143aa565b92505060206146988582860161464d565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6146df82614272565b810181811067ffffffffffffffff821117156146fe576146fd6146a7565b5b80604052505050565b6000614711614129565b905061471d82826146d6565b919050565b600067ffffffffffffffff82111561473d5761473c6146a7565b5b61474682614272565b9050602081019050919050565b82818337600083830152505050565b600061477561477084614722565b614707565b905082815260208101848484011115614791576147906146a2565b5b61479c848285614753565b509392505050565b600082601f8301126147b9576147b86143ff565b5b81356147c9848260208601614762565b91505092915050565b6000602082840312156147e8576147e7614133565b5b600082013567ffffffffffffffff81111561480657614805614138565b5b614812848285016147a4565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b614850816141f8565b82525050565b60006148628383614847565b60208301905092915050565b6000602082019050919050565b60006148868261481b565b6148908185614826565b935061489b83614837565b8060005b838110156148cc5781516148b38882614856565b97506148be8361486e565b92505060018101905061489f565b5085935050505092915050565b600060208201905081810360008301526148f3818461487b565b905092915050565b600067ffffffffffffffff821115614916576149156146a7565b5b602082029050602081019050919050565b600061493a614935846148fb565b614707565b9050808382526020820190506020840283018581111561495d5761495c614409565b5b835b81811015614986578061497288826142f5565b84526020840193505060208101905061495f565b5050509392505050565b600082601f8301126149a5576149a46143ff565b5b81356149b5848260208601614927565b91505092915050565b6000602082840312156149d4576149d3614133565b5b600082013567ffffffffffffffff8111156149f2576149f1614138565b5b6149fe84828501614990565b91505092915050565b60008060408385031215614a1e57614a1d614133565b5b6000614a2c858286016143aa565b9250506020614a3d858286016143aa565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614a8e57607f821691505b602082108103614aa157614aa0614a47565b5b50919050565b7f4e6f7420656e6f75676820616c6c6f77616e63652e0000000000000000000000600082015250565b6000614add601583614237565b9150614ae882614aa7565b602082019050919050565b60006020820190508181036000830152614b0c81614ad0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614b4d826141f8565b9150614b58836141f8565b9250828203905081811115614b7057614b6f614b13565b5b92915050565b6000614b81826141f8565b9150614b8c836141f8565b9250828202614b9a816141f8565b91508282048414831517614bb157614bb0614b13565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614bf2826141f8565b9150614bfd836141f8565b925082614c0d57614c0c614bb8565b5b828204905092915050565b600082825260208201905092915050565b50565b6000614c39600083614c18565b9150614c4482614c29565b600082019050919050565b6000608082019050614c646000830186614369565b614c716020830185614369565b614c7e6040830184614202565b8181036060830152614c8f81614c2c565b9050949350505050565b600081519050614ca881614169565b92915050565b600060208284031215614cc457614cc3614133565b5b6000614cd284828501614c99565b91505092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614d3d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614d00565b614d478683614d00565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614d84614d7f614d7a846141f8565b614d5f565b6141f8565b9050919050565b6000819050919050565b614d9e83614d69565b614db2614daa82614d8b565b848454614d0d565b825550505050565b600090565b614dc7614dba565b614dd2818484614d95565b505050565b5b81811015614df657614deb600082614dbf565b600181019050614dd8565b5050565b601f821115614e3b57614e0c81614cdb565b614e1584614cf0565b81016020851015614e24578190505b614e38614e3085614cf0565b830182614dd7565b50505b505050565b600082821c905092915050565b6000614e5e60001984600802614e40565b1980831691505092915050565b6000614e778383614e4d565b9150826002028217905092915050565b614e908261422c565b67ffffffffffffffff811115614ea957614ea86146a7565b5b614eb38254614a76565b614ebe828285614dfa565b600060209050601f831160018114614ef15760008415614edf578287015190505b614ee98582614e6b565b865550614f51565b601f198416614eff86614cdb565b60005b82811015614f2757848901518255600182019150602085019450602081019050614f02565b86831015614f445784890151614f40601f891682614e4d565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614f93826141f8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614fc557614fc4614b13565b5b600182019050919050565b6000614fdc8385614c18565b9350614fe9838584614753565b614ff283614272565b840190509392505050565b60006080820190506150126000830188614369565b61501f6020830187614369565b61502c6040830186614202565b818103606083015261503f818486614fd0565b90509695505050505050565b6000615056826141f8565b9150615061836141f8565b925082820190508082111561507957615078614b13565b5b92915050565b7f4d617820696d706f72742065786365656465642e000000000000000000000000600082015250565b60006150b5601483614237565b91506150c08261507f565b602082019050919050565b600060208201905081810360008301526150e4816150a8565b9050919050565b6000815190506150fa816142de565b92915050565b60006020828403121561511657615115614133565b5b6000615124848285016150eb565b91505092915050565b7f42616c616e636520746f6f20686967682e20557365207772617020696e73746560008201527f61642e0000000000000000000000000000000000000000000000000000000000602082015250565b6000615189602383614237565b91506151948261512d565b604082019050919050565b600060208201905081810360008301526151b88161517c565b9050919050565b60006060820190506151d46000830186614369565b6151e16020830185614369565b6151ee6040830184614202565b949350505050565b60008151905061520581614636565b92915050565b60006020828403121561522157615220614133565b5b600061522f848285016151f6565b91505092915050565b600081905092915050565b6000815461525081614a76565b61525a8186615238565b94506001821660008114615275576001811461528a576152bd565b60ff19831686528115158202860193506152bd565b61529385614cdb565b60005b838110156152b557815481890152600182019150602081019050615296565b838801955050505b50505092915050565b60006152d18261422c565b6152db8185615238565b93506152eb818560208601614248565b80840191505092915050565b60006153038285615243565b915061530f82846152c6565b91508190509392505050565b7f43616e6e6f7420616464206578697374696e672049442e000000000000000000600082015250565b6000615351601783614237565b915061535c8261531b565b602082019050919050565b6000602082019050818103600083015261538081615344565b9050919050565b7f4e6f7420656e6f75676820746f6b656e2062616c616e63652e00000000000000600082015250565b60006153bd601983614237565b91506153c882615387565b602082019050919050565b600060208201905081810360008301526153ec816153b0565b9050919050565b7f4e6f74206f776e6572206f66204e46542e000000000000000000000000000000600082015250565b6000615429601183614237565b9150615434826153f3565b602082019050919050565b600060208201905081810360008301526154588161541c565b9050919050565b7f43616e6e6f742073656e6420746f206e756c6c20616464726573732e00000000600082015250565b6000615495601c83614237565b91506154a08261545f565b602082019050919050565b600060208201905081810360008301526154c481615488565b9050919050565b7f4f70657261746f72206973206e6f7420617070726f7665642e00000000000000600082015250565b6000615501601983614237565b915061550c826154cb565b602082019050919050565b60006020820190508181036000830152615530816154f4565b9050919050565b60008160011c9050919050565b6000808291508390505b600185111561558e5780860481111561556a57615569614b13565b5b60018516156155795780820291505b808102905061558785615537565b945061554e565b94509492505050565b6000826155a75760019050615663565b816155b55760009050615663565b81600181146155cb57600281146155d557615604565b6001915050615663565b60ff8411156155e7576155e6614b13565b5b8360020a9150848211156155fe576155fd614b13565b5b50615663565b5060208310610133831016604e8410600b84101617156156395782820a90508381111561563457615633614b13565b5b615663565b6156468484846001615544565b9250905081840481111561565d5761565c614b13565b5b81810290505b9392505050565b6000615675826141f8565b9150615680836145ff565b92506156ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484615597565b905092915050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b60006156eb601f83614237565b91506156f6826156b5565b602082019050919050565b6000602082019050818103600083015261571a816156de565b9050919050565b7f43616e6e6f742077726170206578697374696e6720746f6b656e2e0000000000600082015250565b6000615757601b83614237565b915061576282615721565b602082019050919050565b600060208201905081810360008301526157868161574a565b9050919050565b60008151905061579c81614393565b92915050565b6000602082840312156157b8576157b7614133565b5b60006157c68482850161578d565b91505092915050565b7f596f7520646f206e6f74206f776e207468617420746f6b656e2e000000000000600082015250565b6000615805601a83614237565b9150615810826157cf565b602082019050919050565b60006020820190508181036000830152615834816157f8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212204ebbf4f0008fb493cb95db51fb8981e03d41952b540bcd069037f49f5ffc2d2d64736f6c63430008110033697066733a2f2f62616679626569657377616d7836626a363773783333326433737366326a6177696e36346a6c66723636777a677169696a617175736b74766d73752f00000000000000000000000066d5e886e53f43e05efc331f068db7ddb6b5fc5a0000000000000000000000000cd741f007b417088ca7f4392e8d6b49b4f7a975
0xa26469706673582212204ebbf4f0008fb493cb95db51fb8981e03d41952b540bcd069037f49f5ffc2d2d64736f6c63430008110033697066733a2f2f62616679626569657377616d7836626a363773783333326433737366326a6177696e36346a6c66723636777a677169696a617175736b74766d73752f00000000000000000000000066d5e886e53f43e05efc331f068db7ddb6b5fc5a0000000000000000000000000cd741f007b417088ca7f4392e8d6b49b4f7a975
----Decoded View------------Arg [0] : _owner (address): 0xF4F0008fb493cb95dB51fB8981e03D41952B540bArg [1] : _wrappingContract (address): 0x6f6C63430008110033697066733a2F2F62616679
----Encoded View------------Arg [0] : 0x000000000000000000000000f4f0008fb493cb95db51fb8981e03d41952b540bArg [1] : 0x0000000000000000000000006f6c63430008110033697066733a2f2f62616679