[ { "inputs": [ { "internalType": "string", "name": "baseURI_", "type": "string" }, { "internalType": "address", "name": "_layerZeroEndpoint", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": "uint16", "name": "_srcChainId", "type": "uint16" }, { "indexed": false, "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "indexed": false, "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "indexed": false, "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "MessageFailed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "_owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "donate", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "", "type": "uint16" }, { "internalType": "bytes", "name": "", "type": "bytes" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "failedMessages", "outputs": [ { "internalType": "uint256", "name": "payloadLength", "type": "uint256" }, { "internalType": "bytes32", "name": "payloadHash", "type": "bytes32" } ], "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": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "lzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8", "name": "numTokens", "type": "uint8" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "onLzReceive", "outputs": [], "stateMutability": "nonpayable", "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": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "retryMessage", "outputs": [], "stateMutability": "payable", "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": "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": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newVal", "type": "uint256" } ], "name": "setGasForDestinationLzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "bytes", "name": "_trustedRemote", "type": "bytes" } ], "name": "setTrustedRemote", "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": [ { "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": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "traverseChains", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "name": "trustedRemoteLookup", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amt", "type": "uint256" } ], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040526107d0600c556109c4600d5562055730600e553480156200002457600080fd5b50604051620053473803806200534783398181016040528101906200004a9190620003be565b6040518060400160405280600e81526020017f4c616242756e6e696573436c75620000000000000000000000000000000000008152506040518060400160405280600381526020017f4c42430000000000000000000000000000000000000000000000000000000000815250620000d6620000ca620001ad60201b60201c565b620001b560201b60201c565b8160019080519060200190620000ee92919062000279565b5080600290805190602001906200010792919062000279565b50505033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600b9080519060200190620001a492919062000279565b505050620005f6565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200028790620004ed565b90600052602060002090601f016020900481019282620002ab5760008555620002f7565b82601f10620002c657805160ff1916838001178555620002f7565b82800160010185558215620002f7579182015b82811115620002f6578251825591602001919060010190620002d9565b5b5090506200030691906200030a565b5090565b5b80821115620003255760008160009055506001016200030b565b5090565b6000620003406200033a846200044d565b62000424565b9050828152602081018484840111156200035f576200035e620005bc565b5b6200036c848285620004b7565b509392505050565b6000815190506200038581620005dc565b92915050565b600082601f830112620003a357620003a2620005b7565b5b8151620003b584826020860162000329565b91505092915050565b60008060408385031215620003d857620003d7620005c6565b5b600083015167ffffffffffffffff811115620003f957620003f8620005c1565b5b62000407858286016200038b565b92505060206200041a8582860162000374565b9150509250929050565b60006200043062000443565b90506200043e828262000523565b919050565b6000604051905090565b600067ffffffffffffffff8211156200046b576200046a62000588565b5b6200047682620005cb565b9050602081019050919050565b6000620004908262000497565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60005b83811015620004d7578082015181840152602081019050620004ba565b83811115620004e7576000848401525b50505050565b600060028204905060018216806200050657607f821691505b602082108114156200051d576200051c62000559565b5b50919050565b6200052e82620005cb565b810181811067ffffffffffffffff8211171562000550576200054f62000588565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b620005e78162000483565b8114620005f357600080fd5b50565b614d4180620006066000396000f3fe6080604052600436106101c15760003560e01c80637533d788116100f7578063b88d4fde11610095578063e985e9c511610064578063e985e9c514610623578063eb8d72b714610660578063ed88c68e14610689578063f2fde38b14610693576101c1565b8063b88d4fde14610585578063c87b56dd146105ae578063cf89fa03146105eb578063d1deba1f14610607576101c1565b8063943fb872116100d1578063943fb872146104dd57806395d89b4114610506578063a22cb46514610531578063b2bdfa7b1461055a576101c1565b80637533d788146104375780638da5cb5b146104745780638ee749121461049f576101c1565b80632e1a7d4d116101645780636352211e1161013e5780636352211e1461038a5780636ecd2306146103c757806370a08231146103e3578063715018a614610420576101c1565b80632e1a7d4d1461030f57806342842e0e1461033857806355f804b314610361576101c1565b8063081812fc116101a0578063081812fc14610257578063095ea7b3146102945780631c37a822146102bd57806323b872dd146102e6576101c1565b80621d3567146101c657806301ffc9a7146101ef57806306fdde031461022c575b600080fd5b3480156101d257600080fd5b506101ed60048036038101906101e89190613276565b6106bc565b005b3480156101fb57600080fd5b5061021660048036038101906102119190613033565b6108fe565b6040516102239190613b75565b60405180910390f35b34801561023857600080fd5b506102416109e0565b60405161024e9190613bb2565b60405180910390f35b34801561026357600080fd5b5061027e60048036038101906102799190613355565b610a72565b60405161028b9190613ae5565b60405180910390f35b3480156102a057600080fd5b506102bb60048036038101906102b69190612ff3565b610af7565b005b3480156102c957600080fd5b506102e460048036038101906102df9190613276565b610c0f565b005b3480156102f257600080fd5b5061030d60048036038101906103089190612edd565b610c8f565b005b34801561031b57600080fd5b5061033660048036038101906103319190613355565b610cef565b005b34801561034457600080fd5b5061035f600480360381019061035a9190612edd565b610e3d565b005b34801561036d57600080fd5b506103886004803603810190610383919061308d565b610e5d565b005b34801561039657600080fd5b506103b160048036038101906103ac9190613355565b610ef3565b6040516103be9190613ae5565b60405180910390f35b6103e160048036038101906103dc91906133c2565b610fa5565b005b3480156103ef57600080fd5b5061040a60048036038101906104059190612e30565b61113c565b6040516104179190614073565b60405180910390f35b34801561042c57600080fd5b506104356111f4565b005b34801561044357600080fd5b5061045e600480360381019061045991906130d6565b61127c565b60405161046b9190613b90565b60405180910390f35b34801561048057600080fd5b5061048961131c565b6040516104969190613ae5565b60405180910390f35b3480156104ab57600080fd5b506104c660048036038101906104c19190613163565b611345565b6040516104d492919061408e565b60405180910390f35b3480156104e957600080fd5b5061050460048036038101906104ff9190613355565b611399565b005b34801561051257600080fd5b5061051b61141f565b6040516105289190613bb2565b60405180910390f35b34801561053d57600080fd5b5061055860048036038101906105539190612fb3565b6114b1565b005b34801561056657600080fd5b5061056f6114c7565b60405161057c9190613ae5565b60405180910390f35b34801561059157600080fd5b506105ac60048036038101906105a79190612f30565b6114ed565b005b3480156105ba57600080fd5b506105d560048036038101906105d09190613355565b61154f565b6040516105e29190613bb2565b60405180910390f35b61060560048036038101906106009190613315565b6115f6565b005b610621600480360381019061061c91906131d2565b6118e9565b005b34801561062f57600080fd5b5061064a60048036038101906106459190612e9d565b611a89565b6040516106579190613b75565b60405180910390f35b34801561066c57600080fd5b5061068760048036038101906106829190613103565b611b1d565b005b610691611bc9565b005b34801561069f57600080fd5b506106ba60048036038101906106b59190612e30565b611bcb565b005b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461071657600080fd5b600960008561ffff1661ffff168152602001908152602001600020805461073c9061435d565b905083511480156107825750600960008561ffff1661ffff1681526020019081526020016000206040516107709190613a69565b60405180910390208380519060200120145b6107c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b890613dd4565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff16631c37a822858585856040518563ffffffff1660e01b81526004016108009493929190613faa565b600060405180830381600087803b15801561081a57600080fd5b505af192505050801561082b575060015b6108f7576040518060400160405280825181526020018280519060200120815250600860008661ffff1661ffff168152602001908152602001600020846040516108759190613a52565b908152602001604051809103902060008467ffffffffffffffff16815260200190815260200160002060008201518160000155602082015181600101559050507fe6f254030bcb01ffd20558175c13fcaed6d1520be7becee4c961b65f79243b0d848484846040516108ea9493929190613faa565b60405180910390a16108f8565b5b50505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109c957507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806109d957506109d882611cc3565b5b9050919050565b6060600180546109ef9061435d565b80601f0160208091040260200160405190810160405280929190818152602001828054610a1b9061435d565b8015610a685780601f10610a3d57610100808354040283529160200191610a68565b820191906000526020600020905b815481529060010190602001808311610a4b57829003601f168201915b5050505050905090565b6000610a7d82611d2d565b610abc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab390613d94565b60405180910390fd5b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610b0282610ef3565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6a90613e74565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610b92611d99565b73ffffffffffffffffffffffffffffffffffffffff161480610bc15750610bc081610bbb611d99565b611a89565b5b610c00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf790613cd4565b60405180910390fd5b610c0a8383611da1565b505050565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7490613d34565b60405180910390fd5b610c8984848484611e5a565b50505050565b610ca0610c9a611d99565b82611e87565b610cdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd690613e94565b60405180910390fd5b610cea838383611f65565b505050565b610cf7611d99565b73ffffffffffffffffffffffffffffffffffffffff16610d1561131c565b73ffffffffffffffffffffffffffffffffffffffff1614610d6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6290613db4565b60405180910390fd5b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051610db390613aa4565b60006040518083038185875af1925050503d8060008114610df0576040519150601f19603f3d011682016040523d82523d6000602084013e610df5565b606091505b5050905080610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3090613d74565b60405180910390fd5b5050565b610e58838383604051806020016040528060008152506114ed565b505050565b610e65611d99565b73ffffffffffffffffffffffffffffffffffffffff16610e8361131c565b73ffffffffffffffffffffffffffffffffffffffff1614610ed9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed090613db4565b60405180910390fd5b80600b9080519060200190610eef929190612aff565b5050565b6000806003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610f9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9390613d14565b60405180910390fd5b80915050919050565b60058160ff1610610feb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe290613e34565b60405180910390fd5b600d548160ff16600c54610fff91906141a1565b1115611040576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103790613e54565b60405180910390fd5b61105e33600c60008154611053906143c0565b9190508190556121c1565b60028160ff1614156110895761108833600c6000815461107d906143c0565b9190508190556121c1565b5b60038160ff1614156110d2576110b333600c600081546110a8906143c0565b9190508190556121c1565b6110d133600c600081546110c6906143c0565b9190508190556121c1565b5b60048160ff161415611139576110fc33600c600081546110f1906143c0565b9190508190556121c1565b61111a33600c6000815461110f906143c0565b9190508190556121c1565b61113833600c6000815461112d906143c0565b9190508190556121c1565b5b50565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a490613cf4565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111fc611d99565b73ffffffffffffffffffffffffffffffffffffffff1661121a61131c565b73ffffffffffffffffffffffffffffffffffffffff1614611270576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126790613db4565b60405180910390fd5b61127a60006121df565b565b6009602052806000526040600020600091509050805461129b9061435d565b80601f01602080910402602001604051908101604052809291908181526020018280546112c79061435d565b80156113145780601f106112e957610100808354040283529160200191611314565b820191906000526020600020905b8154815290600101906020018083116112f757829003601f168201915b505050505081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60086020528260005260406000208280516020810182018051848252602083016020850120818352809550505050505060205280600052604060002060009250925050508060000154908060010154905082565b6113a1611d99565b73ffffffffffffffffffffffffffffffffffffffff166113bf61131c565b73ffffffffffffffffffffffffffffffffffffffff1614611415576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140c90613db4565b60405180910390fd5b80600e8190555050565b60606002805461142e9061435d565b80601f016020809104026020016040519081016040528092919081815260200182805461145a9061435d565b80156114a75780601f1061147c576101008083540402835291602001916114a7565b820191906000526020600020905b81548152906001019060200180831161148a57829003601f168201915b5050505050905090565b6114c36114bc611d99565b83836122a3565b5050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6114fe6114f8611d99565b83611e87565b61153d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153490613e94565b60405180910390fd5b61154984848484612410565b50505050565b606061155a82611d2d565b611599576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159090613e14565b60405180910390fd5b60006115a361246c565b905060008151116115c357604051806020016040528060008152506115ee565b806115cd846124fe565b6040516020016115de929190613a80565b6040516020818303038152906040525b915050919050565b6115ff81610ef3565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461166c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166390613c94565b60405180910390fd5b6000600960008461ffff1661ffff16815260200190815260200160002080546116949061435d565b9050116116d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cd90613c54565b60405180910390fd5b6116df8161265f565b600033826040516020016116f4929190613b4c565b6040516020818303038152906040529050600060019050600081600e54604051602001611722929190613ab9565b60405160208183030381529060405290506000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166340a7bb108730876000876040518663ffffffff1660e01b8152600401611799959493929190613ef4565b604080518083038186803b1580156117b057600080fd5b505afa1580156117c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e89190613382565b5090508034101561182e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182590613eb4565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c58031003488600960008b61ffff1661ffff16815260200190815260200160002088336000896040518863ffffffff1660e01b81526004016118af96959493929190613ffd565b6000604051808303818588803b1580156118c857600080fd5b505af11580156118dc573d6000803e3d6000fd5b5050505050505050505050565b6000600860008761ffff1661ffff168152602001908152602001600020856040516119149190613a52565b908152602001604051809103902060008567ffffffffffffffff16815260200190815260200160002090506000801b81600101541415611989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198090613ed4565b60405180910390fd5b8060000154838390501480156119b95750806001015483836040516119af929190613a39565b6040518091039020145b6119f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ef90613c74565b60405180910390fd5b600081600001819055506000801b81600101819055503073ffffffffffffffffffffffffffffffffffffffff16631c37a82287878787876040518663ffffffff1660e01b8152600401611a4f959493929190613f55565b600060405180830381600087803b158015611a6957600080fd5b505af1158015611a7d573d6000803e3d6000fd5b50505050505050505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611b25611d99565b73ffffffffffffffffffffffffffffffffffffffff16611b4361131c565b73ffffffffffffffffffffffffffffffffffffffff1614611b99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9090613db4565b60405180910390fd5b8181600960008661ffff1661ffff1681526020019081526020016000209190611bc3929190612b85565b50505050565b565b611bd3611d99565b73ffffffffffffffffffffffffffffffffffffffff16611bf161131c565b73ffffffffffffffffffffffffffffffffffffffff1614611c47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3e90613db4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611cb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cae90613bf4565b60405180910390fd5b611cc0816121df565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16611e1483610ef3565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008082806020019051810190611e719190612e5d565b91509150611e7f82826121c1565b505050505050565b6000611e9282611d2d565b611ed1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec890613cb4565b60405180910390fd5b6000611edc83610ef3565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611f4b57508373ffffffffffffffffffffffffffffffffffffffff16611f3384610a72565b73ffffffffffffffffffffffffffffffffffffffff16145b80611f5c5750611f5b8185611a89565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16611f8582610ef3565b73ffffffffffffffffffffffffffffffffffffffff1614611fdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd290613df4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561204b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204290613c14565b60405180910390fd5b612056838383612770565b612061600082611da1565b6001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120b19190614228565b925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461210891906141a1565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6121db828260405180602001604052806000815250612775565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612312576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161230990613c34565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516124039190613b75565b60405180910390a3505050565b61241b848484611f65565b612427848484846127d0565b612466576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161245d90613bd4565b60405180910390fd5b50505050565b6060600b805461247b9061435d565b80601f01602080910402602001604051908101604052809291908181526020018280546124a79061435d565b80156124f45780601f106124c9576101008083540402835291602001916124f4565b820191906000526020600020905b8154815290600101906020018083116124d757829003601f168201915b5050505050905090565b60606000821415612546576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061265a565b600082905060005b60008214612578578080612561906143c0565b915050600a8261257191906141f7565b915061254e565b60008167ffffffffffffffff81111561259457612593614512565b5b6040519080825280601f01601f1916602001820160405280156125c65781602001600182028036833780820191505090505b5090505b60008514612653576001826125df9190614228565b9150600a856125ee9190614425565b60306125fa91906141a1565b60f81b8183815181106126105761260f6144e3565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561264c91906141f7565b94506125ca565b8093505050505b919050565b600061266a82610ef3565b905061267881600084612770565b612683600083611da1565b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126d39190614228565b925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b505050565b61277f8383612967565b61278c60008484846127d0565b6127cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127c290613bd4565b60405180910390fd5b505050565b60006127f18473ffffffffffffffffffffffffffffffffffffffff16612aec565b1561295a578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261281a611d99565b8786866040518563ffffffff1660e01b815260040161283c9493929190613b00565b602060405180830381600087803b15801561285657600080fd5b505af192505050801561288757506040513d601f19601f820116820180604052508101906128849190613060565b60015b61290a573d80600081146128b7576040519150601f19603f3d011682016040523d82523d6000602084013e6128bc565b606091505b50600081511415612902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128f990613bd4565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061295f565b600190505b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156129d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129ce90613d54565b60405180910390fd5b6129e360008383612770565b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612a3391906141a1565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600080823b905060008111915050919050565b828054612b0b9061435d565b90600052602060002090601f016020900481019282612b2d5760008555612b74565b82601f10612b4657805160ff1916838001178555612b74565b82800160010185558215612b74579182015b82811115612b73578251825591602001919060010190612b58565b5b509050612b819190612c0b565b5090565b828054612b919061435d565b90600052602060002090601f016020900481019282612bb35760008555612bfa565b82601f10612bcc57803560ff1916838001178555612bfa565b82800160010185558215612bfa579182015b82811115612bf9578235825591602001919060010190612bde565b5b509050612c079190612c0b565b5090565b5b80821115612c24576000816000905550600101612c0c565b5090565b6000612c3b612c36846140dc565b6140b7565b905082815260208101848484011115612c5757612c56614550565b5b612c6284828561431b565b509392505050565b6000612c7d612c788461410d565b6140b7565b905082815260208101848484011115612c9957612c98614550565b5b612ca484828561431b565b509392505050565b600081359050612cbb81614c53565b92915050565b600081519050612cd081614c6a565b92915050565b600081359050612ce581614c81565b92915050565b600081359050612cfa81614c98565b92915050565b600081519050612d0f81614c98565b92915050565b60008083601f840112612d2b57612d2a614546565b5b8235905067ffffffffffffffff811115612d4857612d47614541565b5b602083019150836001820283011115612d6457612d6361454b565b5b9250929050565b600082601f830112612d8057612d7f614546565b5b8135612d90848260208601612c28565b91505092915050565b600082601f830112612dae57612dad614546565b5b8135612dbe848260208601612c6a565b91505092915050565b600081359050612dd681614caf565b92915050565b600081359050612deb81614cc6565b92915050565b600081519050612e0081614cc6565b92915050565b600081359050612e1581614cdd565b92915050565b600081359050612e2a81614cf4565b92915050565b600060208284031215612e4657612e4561455a565b5b6000612e5484828501612cac565b91505092915050565b60008060408385031215612e7457612e7361455a565b5b6000612e8285828601612cc1565b9250506020612e9385828601612df1565b9150509250929050565b60008060408385031215612eb457612eb361455a565b5b6000612ec285828601612cac565b9250506020612ed385828601612cac565b9150509250929050565b600080600060608486031215612ef657612ef561455a565b5b6000612f0486828701612cac565b9350506020612f1586828701612cac565b9250506040612f2686828701612ddc565b9150509250925092565b60008060008060808587031215612f4a57612f4961455a565b5b6000612f5887828801612cac565b9450506020612f6987828801612cac565b9350506040612f7a87828801612ddc565b925050606085013567ffffffffffffffff811115612f9b57612f9a614555565b5b612fa787828801612d6b565b91505092959194509250565b60008060408385031215612fca57612fc961455a565b5b6000612fd885828601612cac565b9250506020612fe985828601612cd6565b9150509250929050565b6000806040838503121561300a5761300961455a565b5b600061301885828601612cac565b925050602061302985828601612ddc565b9150509250929050565b6000602082840312156130495761304861455a565b5b600061305784828501612ceb565b91505092915050565b6000602082840312156130765761307561455a565b5b600061308484828501612d00565b91505092915050565b6000602082840312156130a3576130a261455a565b5b600082013567ffffffffffffffff8111156130c1576130c0614555565b5b6130cd84828501612d99565b91505092915050565b6000602082840312156130ec576130eb61455a565b5b60006130fa84828501612dc7565b91505092915050565b60008060006040848603121561311c5761311b61455a565b5b600061312a86828701612dc7565b935050602084013567ffffffffffffffff81111561314b5761314a614555565b5b61315786828701612d15565b92509250509250925092565b60008060006060848603121561317c5761317b61455a565b5b600061318a86828701612dc7565b935050602084013567ffffffffffffffff8111156131ab576131aa614555565b5b6131b786828701612d6b565b92505060406131c886828701612ddc565b9150509250925092565b6000806000806000608086880312156131ee576131ed61455a565b5b60006131fc88828901612dc7565b955050602086013567ffffffffffffffff81111561321d5761321c614555565b5b61322988828901612d6b565b945050604061323a88828901612e06565b935050606086013567ffffffffffffffff81111561325b5761325a614555565b5b61326788828901612d15565b92509250509295509295909350565b600080600080608085870312156132905761328f61455a565b5b600061329e87828801612dc7565b945050602085013567ffffffffffffffff8111156132bf576132be614555565b5b6132cb87828801612d6b565b93505060406132dc87828801612e06565b925050606085013567ffffffffffffffff8111156132fd576132fc614555565b5b61330987828801612d6b565b91505092959194509250565b6000806040838503121561332c5761332b61455a565b5b600061333a85828601612dc7565b925050602061334b85828601612ddc565b9150509250929050565b60006020828403121561336b5761336a61455a565b5b600061337984828501612ddc565b91505092915050565b600080604083850312156133995761339861455a565b5b60006133a785828601612df1565b92505060206133b885828601612df1565b9150509250929050565b6000602082840312156133d8576133d761455a565b5b60006133e684828501612e1b565b91505092915050565b6133f88161426e565b82525050565b6134078161425c565b82525050565b61341681614280565b82525050565b6134258161428c565b82525050565b60006134378385614169565b935061344483858461431b565b61344d8361455f565b840190509392505050565b6000613464838561417a565b935061347183858461431b565b82840190509392505050565b600061348882614153565b6134928185614169565b93506134a281856020860161432a565b6134ab8161455f565b840191505092915050565b60006134c182614153565b6134cb818561417a565b93506134db81856020860161432a565b80840191505092915050565b600081546134f48161435d565b6134fe8186614169565b94506001821660008114613519576001811461352b5761355e565b60ff198316865260208601935061355e565b6135348561413e565b60005b8381101561355657815481890152600182019150602081019050613537565b808801955050505b50505092915050565b600081546135748161435d565b61357e818661417a565b9450600182166000811461359957600181146135aa576135dd565b60ff198316865281860193506135dd565b6135b38561413e565b60005b838110156135d5578154818901526001820191506020810190506135b6565b838801955050505b50505092915050565b60006135f18261415e565b6135fb8185614185565b935061360b81856020860161432a565b6136148161455f565b840191505092915050565b600061362a8261415e565b6136348185614196565b935061364481856020860161432a565b80840191505092915050565b600061365d603283614185565b91506136688261457d565b604082019050919050565b6000613680602683614185565b915061368b826145cc565b604082019050919050565b60006136a3602483614185565b91506136ae8261461b565b604082019050919050565b60006136c6601983614185565b91506136d18261466a565b602082019050919050565b60006136e9602e83614185565b91506136f482614693565b604082019050919050565b600061370c601a83614185565b9150613717826146e2565b602082019050919050565b600061372f602283614185565b915061373a8261470b565b604082019050919050565b6000613752602c83614185565b915061375d8261475a565b604082019050919050565b6000613775603883614185565b9150613780826147a9565b604082019050919050565b6000613798602a83614185565b91506137a3826147f8565b604082019050919050565b60006137bb602983614185565b91506137c682614847565b604082019050919050565b60006137de602b83614185565b91506137e982614896565b604082019050919050565b6000613801602083614185565b915061380c826148e5565b602082019050919050565b6000613824601d83614185565b915061382f8261490e565b602082019050919050565b6000613847602c83614185565b915061385282614937565b604082019050919050565b600061386a602083614185565b915061387582614986565b602082019050919050565b600061388d603483614185565b9150613898826149af565b604082019050919050565b60006138b0602983614185565b91506138bb826149fe565b604082019050919050565b60006138d3602f83614185565b91506138de82614a4d565b604082019050919050565b60006138f6601f83614185565b915061390182614a9c565b602082019050919050565b6000613919601883614185565b915061392482614ac5565b602082019050919050565b600061393c602183614185565b915061394782614aee565b604082019050919050565b600061395f60008361417a565b915061396a82614b3d565b600082019050919050565b6000613982603183614185565b915061398d82614b40565b604082019050919050565b60006139a5604883614185565b91506139b082614b8f565b606082019050919050565b60006139c8602683614185565b91506139d382614c04565b604082019050919050565b6139e7816142c2565b82525050565b6139fe6139f9826142c2565b614409565b82525050565b613a0d816142f0565b82525050565b613a24613a1f826142f0565b61441b565b82525050565b613a33816142fa565b82525050565b6000613a46828486613458565b91508190509392505050565b6000613a5e82846134b6565b915081905092915050565b6000613a758284613567565b915081905092915050565b6000613a8c828561361f565b9150613a98828461361f565b91508190509392505050565b6000613aaf82613952565b9150819050919050565b6000613ac582856139ed565b600282019150613ad58284613a13565b6020820191508190509392505050565b6000602082019050613afa60008301846133fe565b92915050565b6000608082019050613b1560008301876133fe565b613b2260208301866133fe565b613b2f6040830185613a04565b8181036060830152613b41818461347d565b905095945050505050565b6000604082019050613b6160008301856133fe565b613b6e6020830184613a04565b9392505050565b6000602082019050613b8a600083018461340d565b92915050565b60006020820190508181036000830152613baa818461347d565b905092915050565b60006020820190508181036000830152613bcc81846135e6565b905092915050565b60006020820190508181036000830152613bed81613650565b9050919050565b60006020820190508181036000830152613c0d81613673565b9050919050565b60006020820190508181036000830152613c2d81613696565b9050919050565b60006020820190508181036000830152613c4d816136b9565b9050919050565b60006020820190508181036000830152613c6d816136dc565b9050919050565b60006020820190508181036000830152613c8d816136ff565b9050919050565b60006020820190508181036000830152613cad81613722565b9050919050565b60006020820190508181036000830152613ccd81613745565b9050919050565b60006020820190508181036000830152613ced81613768565b9050919050565b60006020820190508181036000830152613d0d8161378b565b9050919050565b60006020820190508181036000830152613d2d816137ae565b9050919050565b60006020820190508181036000830152613d4d816137d1565b9050919050565b60006020820190508181036000830152613d6d816137f4565b9050919050565b60006020820190508181036000830152613d8d81613817565b9050919050565b60006020820190508181036000830152613dad8161383a565b9050919050565b60006020820190508181036000830152613dcd8161385d565b9050919050565b60006020820190508181036000830152613ded81613880565b9050919050565b60006020820190508181036000830152613e0d816138a3565b9050919050565b60006020820190508181036000830152613e2d816138c6565b9050919050565b60006020820190508181036000830152613e4d816138e9565b9050919050565b60006020820190508181036000830152613e6d8161390c565b9050919050565b60006020820190508181036000830152613e8d8161392f565b9050919050565b60006020820190508181036000830152613ead81613975565b9050919050565b60006020820190508181036000830152613ecd81613998565b9050919050565b60006020820190508181036000830152613eed816139bb565b9050919050565b600060a082019050613f0960008301886139de565b613f1660208301876133fe565b8181036040830152613f28818661347d565b9050613f37606083018561340d565b8181036080830152613f49818461347d565b90509695505050505050565b6000608082019050613f6a60008301886139de565b8181036020830152613f7c818761347d565b9050613f8b6040830186613a2a565b8181036060830152613f9e81848661342b565b90509695505050505050565b6000608082019050613fbf60008301876139de565b8181036020830152613fd1818661347d565b9050613fe06040830185613a2a565b8181036060830152613ff2818461347d565b905095945050505050565b600060c08201905061401260008301896139de565b818103602083015261402481886134e7565b90508181036040830152614038818761347d565b905061404760608301866133ef565b61405460808301856133fe565b81810360a0830152614066818461347d565b9050979650505050505050565b60006020820190506140886000830184613a04565b92915050565b60006040820190506140a36000830185613a04565b6140b0602083018461341c565b9392505050565b60006140c16140d2565b90506140cd828261438f565b919050565b6000604051905090565b600067ffffffffffffffff8211156140f7576140f6614512565b5b6141008261455f565b9050602081019050919050565b600067ffffffffffffffff82111561412857614127614512565b5b6141318261455f565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b60006141ac826142f0565b91506141b7836142f0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156141ec576141eb614456565b5b828201905092915050565b6000614202826142f0565b915061420d836142f0565b92508261421d5761421c614485565b5b828204905092915050565b6000614233826142f0565b915061423e836142f0565b92508282101561425157614250614456565b5b828203905092915050565b6000614267826142d0565b9050919050565b6000614279826142d0565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600061ffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b8381101561434857808201518184015260208101905061432d565b83811115614357576000848401525b50505050565b6000600282049050600182168061437557607f821691505b60208210811415614389576143886144b4565b5b50919050565b6143988261455f565b810181811067ffffffffffffffff821117156143b7576143b6614512565b5b80604052505050565b60006143cb826142f0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156143fe576143fd614456565b5b600182019050919050565b600061441482614570565b9050919050565b6000819050919050565b6000614430826142f0565b915061443b836142f0565b92508261444b5761444a614485565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160f01b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f5468697320636861696e2069732063757272656e746c7920756e617661696c6160008201527f626c6520666f722074726176656c000000000000000000000000000000000000602082015250565b7f4c617965725a65726f3a20696e76616c6964207061796c6f6164000000000000600082015250565b7f596f75206d757374206f776e2074686520746f6b656e20746f2074726176657260008201527f7365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f4e6f6e626c6f636b696e6752656365697665723a2063616c6c6572206d75737460008201527f206265204272696467652e000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4c42433a204661696c656420746f207769746864726177204574686572000000600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4e6f6e626c6f636b696e6752656365697665723a20696e76616c696420736f7560008201527f7263652073656e64696e6720636f6e7472616374000000000000000000000000602082015250565b7f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960008201527f73206e6f74206f776e0000000000000000000000000000000000000000000000602082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4c42433a204d61782034204e46547320706572207472616e73616374696f6e00600082015250565b7f4c42433a204d696e74206578636565647320737570706c790000000000000000600082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f4c42433a206d73672e76616c7565206e6f7420656e6f75676820746f20636f7660008201527f6572206d6573736167654665652e2053656e642067617320666f72206d65737360208201527f6167652066656573000000000000000000000000000000000000000000000000604082015250565b7f4e6f6e626c6f636b696e6752656365697665723a206e6f2073746f726564206d60008201527f6573736167650000000000000000000000000000000000000000000000000000602082015250565b614c5c8161425c565b8114614c6757600080fd5b50565b614c738161426e565b8114614c7e57600080fd5b50565b614c8a81614280565b8114614c9557600080fd5b50565b614ca181614296565b8114614cac57600080fd5b50565b614cb8816142c2565b8114614cc357600080fd5b50565b614ccf816142f0565b8114614cda57600080fd5b50565b614ce6816142fa565b8114614cf157600080fd5b50565b614cfd8161430e565b8114614d0857600080fd5b5056fea2646970667358221220612004406262dc45f864f71b8a15d4a68965a82df86f70577115c1c8281b19f464736f6c6343000807003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000003c2269811836af69497e5f486a85d7316753cf620000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d61356e6b566f6154556f455a4a755457424d50757a4579734b6e4a4a696d6e38765a6342586257455970616e2f00000000000000000000