[ { "inputs": [ { "internalType": "address", "name": "_treasury", "type": "address" }, { "internalType": "string", "name": "_base", "type": "string" }, { "internalType": "address", "name": "_v1", "type": "address" }, { "internalType": "address", "name": "_v2", "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": "string", "name": "baseURI", "type": "string" } ], "name": "BaseURIUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Reflection", "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": [ { "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": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "claimRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "currentReflection", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "bool", "name": "flag", "type": "bool" } ], "name": "excludes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "flipPause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "fulfillReflection", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "getRewards", "outputs": [ { "internalType": "uint256", "name": "rewards", "type": "uint256" } ], "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": "uint256", "name": "", "type": "uint256" } ], "name": "lastReflections", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "migrates", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "migratesV1", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "mintFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "raiseReflection", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "recharge", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "_data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "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": "_mintFee", "type": "uint256" } ], "name": "setMintFee", "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": "index", "type": "uint256" } ], "name": "tokenByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenOfOwnerByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalCoins", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalReflection", "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": "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": [], "name": "treasury", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
6080604052671bc16d674ec80000600f553480156200001d57600080fd5b5060405162005adb38038062005adb8339818101604052810190620000439190620005be565b6040518060400160405280600b81526020017f41766178436f696e2056330000000000000000000000000000000000000000008152506040518060400160405280600981526020017f41564158434f494e3300000000000000000000000000000000000000000000008152508160009080519060200190620000c792919062000462565b508060019080519060200190620000e092919062000462565b50505062000103620000f76200035c60201b60201c565b6200036460201b60201c565b83600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600c90805190602001906200015c92919062000462565b5081601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001fc61076f600b6200042a60201b620021621790919060201c565b5050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166345571de56040518163ffffffff1660e01b815260040160206040518083038186803b1580156200026757600080fd5b505afa1580156200027c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a291906200064f565b601081905550601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663228497206040518163ffffffff1660e01b815260040160206040518083038186803b1580156200031157600080fd5b505afa15801562000326573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034c91906200064f565b6011819055505050505062000903565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060018460000154620004409190620006e0565b9150828460000160008282540192505081905550836000015490509250929050565b8280546200047090620007b1565b90600052602060002090601f016020900481019282620004945760008555620004e0565b82601f10620004af57805160ff1916838001178555620004e0565b82800160010185558215620004e0579182015b82811115620004df578251825591602001919060010190620004c2565b5b509050620004ef9190620004f3565b5090565b5b808211156200050e576000816000905550600101620004f4565b5090565b6000620005296200052384620006aa565b62000681565b905082815260208101848484011115620005485762000547620008af565b5b620005558482856200077b565b509392505050565b6000815190506200056e81620008cf565b92915050565b600082601f8301126200058c576200058b620008aa565b5b81516200059e84826020860162000512565b91505092915050565b600081519050620005b881620008e9565b92915050565b60008060008060808587031215620005db57620005da620008b9565b5b6000620005eb878288016200055d565b945050602085015167ffffffffffffffff8111156200060f576200060e620008b4565b5b6200061d8782880162000574565b935050604062000630878288016200055d565b925050606062000643878288016200055d565b91505092959194509250565b600060208284031215620006685762000667620008b9565b5b60006200067884828501620005a7565b91505092915050565b60006200068d620006a0565b90506200069b8282620007e7565b919050565b6000604051905090565b600067ffffffffffffffff821115620006c857620006c76200087b565b5b620006d382620008be565b9050602081019050919050565b6000620006ed8262000771565b9150620006fa8362000771565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200073257620007316200081d565b5b828201905092915050565b60006200074a8262000751565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156200079b5780820151818401526020810190506200077e565b83811115620007ab576000848401525b50505050565b60006002820490506001821680620007ca57607f821691505b60208210811415620007e157620007e06200084c565b5b50919050565b620007f282620008be565b810181811067ffffffffffffffff821117156200081457620008136200087b565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b620008da816200073d565b8114620008e657600080fd5b50565b620008f48162000771565b81146200090057600080fd5b50565b6151c880620009136000396000f3fe6080604052600436106102305760003560e01c80635c975abb1161012e578063a0712d68116100ab578063c87b56dd1161006f578063c87b56dd146107f1578063e985e9c51461082e578063eddd0d9c1461086b578063f2fde38b14610894578063f4901772146108bd57610230565b8063a0712d6814610727578063a22cb46514610758578063b88d4fde14610781578063b9360637146107aa578063bac93203146107b457610230565b806370a08231116100f257806370a0823114610652578063715018a61461068f57806389dda3b9146106a65780638da5cb5b146106d157806395d89b41146106fc57610230565b80635c975abb1461056b5780635eac62391461059657806361d027b3146105bf5780636352211e146105ea5780636c0360eb1461062757610230565b806322849720116101bc57806342842e0e1161018057806342842e0e146104a757806345571de5146104d05780634cddae28146104fb5780634f6ccce71461050557806355f804b31461054257610230565b806322849720146103d457806323b872dd146103ff5780632f745c591461042857806332454dbb14610465578063385df6491461049057610230565b8063095ea7b311610203578063095ea7b314610303578063099b83fe1461032c57806313966db51461035557806318160ddd146103805780631bf8a889146103ab57610230565b806301ffc9a71461023557806304c831221461027257806306fdde031461029b578063081812fc146102c6575b600080fd5b34801561024157600080fd5b5061025c60048036038101906102579190613aaf565b6108fa565b6040516102699190614221565b60405180910390f35b34801561027e57600080fd5b5061029960048036038101906102949190613a66565b610974565b005b3480156102a757600080fd5b506102b0610b7a565b6040516102bd919061423c565b60405180910390f35b3480156102d257600080fd5b506102ed60048036038101906102e89190613b52565b610c0c565b6040516102fa9190614161565b60405180910390f35b34801561030f57600080fd5b5061032a600480360381019061032591906139ca565b610c91565b005b34801561033857600080fd5b50610353600480360381019061034e9190613a0a565b610da9565b005b34801561036157600080fd5b5061036a610eba565b604051610377919061457e565b60405180910390f35b34801561038c57600080fd5b50610395610ec0565b6040516103a2919061457e565b60405180910390f35b3480156103b757600080fd5b506103d260048036038101906103cd9190613a66565b610ecd565b005b3480156103e057600080fd5b506103e96110d3565b6040516103f6919061457e565b60405180910390f35b34801561040b57600080fd5b50610426600480360381019061042191906138b4565b6110d9565b005b34801561043457600080fd5b5061044f600480360381019061044a91906139ca565b611139565b60405161045c919061457e565b60405180910390f35b34801561047157600080fd5b5061047a6111de565b604051610487919061457e565b60405180910390f35b34801561049c57600080fd5b506104a56111ef565b005b3480156104b357600080fd5b506104ce60048036038101906104c991906138b4565b611294565b005b3480156104dc57600080fd5b506104e56112b4565b6040516104f2919061457e565b60405180910390f35b6105036112ba565b005b34801561051157600080fd5b5061052c60048036038101906105279190613b52565b611360565b604051610539919061457e565b60405180910390f35b34801561054e57600080fd5b5061056960048036038101906105649190613b09565b6113d1565b005b34801561057757600080fd5b5061058061149e565b60405161058d9190614221565b60405180910390f35b3480156105a257600080fd5b506105bd60048036038101906105b89190613a66565b6114af565b005b3480156105cb57600080fd5b506105d4611682565b6040516105e19190614161565b60405180910390f35b3480156105f657600080fd5b50610611600480360381019061060c9190613b52565b6116a8565b60405161061e9190614161565b60405180910390f35b34801561063357600080fd5b5061063c61175a565b604051610649919061423c565b60405180910390f35b34801561065e57600080fd5b506106796004803603810190610674919061381a565b61180a565b604051610686919061457e565b60405180910390f35b34801561069b57600080fd5b506106a46118c2565b005b3480156106b257600080fd5b506106bb61194a565b6040516106c8919061457e565b60405180910390f35b3480156106dd57600080fd5b506106e6611950565b6040516106f39190614161565b60405180910390f35b34801561070857600080fd5b5061071161197a565b60405161071e919061423c565b60405180910390f35b610741600480360381019061073c9190613b52565b611a0c565b60405161074f929190614599565b60405180910390f35b34801561076457600080fd5b5061077f600480360381019061077a919061398a565b611cd6565b005b34801561078d57600080fd5b506107a860048036038101906107a39190613907565b611cec565b005b6107b2611d4e565b005b3480156107c057600080fd5b506107db60048036038101906107d69190613b52565b611d59565b6040516107e8919061457e565b60405180910390f35b3480156107fd57600080fd5b5061081860048036038101906108139190613b52565b611d71565b604051610825919061423c565b60405180910390f35b34801561083a57600080fd5b5061085560048036038101906108509190613874565b611e77565b6040516108629190614221565b60405180910390f35b34801561087757600080fd5b50610892600480360381019061088d9190613b52565b611f0b565b005b3480156108a057600080fd5b506108bb60048036038101906108b6919061381a565b611ff8565b005b3480156108c957600080fd5b506108e460048036038101906108df9190613a66565b6120f0565b6040516108f1919061457e565b60405180910390f35b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061096d575061096c82612198565b5b9050919050565b60005b8151811015610ab357601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e8383815181106109d1576109d0614a96565b5b60200260200101516040518263ffffffff1660e01b81526004016109f5919061457e565b60206040518083038186803b158015610a0d57600080fd5b505afa158015610a21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a459190613847565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a7c57600080fd5b610aa033838381518110610a9357610a92614a96565b5b602002602001015161227a565b8080610aab90614960565b915050610977565b50601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f4901772826040518263ffffffff1660e01b8152600401610b0f91906141ff565b60206040518083038186803b158015610b2757600080fd5b505afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190613b7f565b60136000828254610b709190614732565b9250508190555050565b606060008054610b89906148fd565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb5906148fd565b8015610c025780601f10610bd757610100808354040283529160200191610c02565b820191906000526020600020905b815481529060010190602001808311610be557829003601f168201915b5050505050905090565b6000610c17826123e9565b610c56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4d9061443e565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610c9c826116a8565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d04906144de565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610d2c612455565b73ffffffffffffffffffffffffffffffffffffffff161480610d5b5750610d5a81610d55612455565b611e77565b5b610d9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d919061439e565b60405180910390fd5b610da4838361245d565b505050565b610db1612455565b73ffffffffffffffffffffffffffffffffffffffff16610dcf611950565b73ffffffffffffffffffffffffffffffffffffffff1614610e25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1c9061447e565b60405180910390fd5b60005b8251811015610eb5578160166000858481518110610e4957610e48614a96565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ead90614960565b915050610e28565b505050565b600f5481565b6000600880549050905090565b60005b815181101561100c57601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e838381518110610f2a57610f29614a96565b5b60200260200101516040518263ffffffff1660e01b8152600401610f4e919061457e565b60206040518083038186803b158015610f6657600080fd5b505afa158015610f7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f9e9190613847565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fd557600080fd5b610ff933838381518110610fec57610feb614a96565b5b602002602001015161227a565b808061100490614960565b915050610ed0565b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f4901772826040518263ffffffff1660e01b815260040161106891906141ff565b60206040518083038186803b15801561108057600080fd5b505afa158015611094573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b89190613b7f565b601360008282546110c99190614732565b9250508190555050565b60115481565b6110ea6110e4612455565b82612516565b611129576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611120906144fe565b60405180910390fd5b6111348383836125f4565b505050565b60006111448361180a565b8210611185576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117c9061425e565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60006111ea600b612850565b905090565b6111f7612455565b73ffffffffffffffffffffffffffffffffffffffff16611215611950565b73ffffffffffffffffffffffffffffffffffffffff161461126b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112629061447e565b60405180910390fd5b60158054906101000a900460ff16156015806101000a81548160ff021916908315150217905550565b6112af83838360405180602001604052806000815250611cec565b505050565b60105481565b6112c2612455565b73ffffffffffffffffffffffffffffffffffffffff166112e0611950565b73ffffffffffffffffffffffffffffffffffffffff1614611336576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132d9061447e565b60405180910390fd5b60135434111561134557600080fd5b34601360008282546113579190614813565b92505081905550565b600061136a610ec0565b82106113ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a29061451e565b60405180910390fd5b600882815481106113bf576113be614a96565b5b90600052602060002001549050919050565b6113d9612455565b73ffffffffffffffffffffffffffffffffffffffff166113f7611950565b73ffffffffffffffffffffffffffffffffffffffff161461144d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114449061447e565b60405180910390fd5b80600d90805190602001906114639291906134c8565b507f6741b2fc379fad678116fe3d4d4b9a1a184ab53ba36b86ad0fa66340b1ab41ad81604051611493919061423c565b60405180910390a150565b60158054906101000a900460ff1681565b601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561150657600080fd5b600080600090505b8251811015611636573373ffffffffffffffffffffffffffffffffffffffff1661155184838151811061154457611543614a96565b5b60200260200101516116a8565b73ffffffffffffffffffffffffffffffffffffffff16146115a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159e9061455e565b60405180910390fd5b601260008483815181106115be576115bd614a96565b5b60200260200101518152602001908152602001600020546010546115e29190614813565b826115ed9190614732565b91506010546012600085848151811061160957611608614a96565b5b6020026020010151815260200190815260200160002081905550808061162e90614960565b91505061150e565b503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561167d573d6000803e3d6000fd5b505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611751576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611748906143de565b60405180910390fd5b80915050919050565b60606000600d805461176b906148fd565b90501161177957600c61177c565b600d5b8054611787906148fd565b80601f01602080910402602001604051908101604052809291908181526020018280546117b3906148fd565b80156118005780601f106117d557610100808354040283529160200191611800565b820191906000526020600020905b8154815290600101906020018083116117e357829003601f168201915b5050505050905090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561187b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611872906143be565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6118ca612455565b73ffffffffffffffffffffffffffffffffffffffff166118e8611950565b73ffffffffffffffffffffffffffffffffffffffff161461193e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119359061447e565b60405180910390fd5b611948600061285e565b565b60135481565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054611989906148fd565b80601f01602080910402602001604051908101604052809291908181526020018280546119b5906148fd565b8015611a025780601f106119d757610100808354040283529160200191611a02565b820191906000526020600020905b8154815290600101906020018083116119e557829003601f168201915b5050505050905090565b60008060158054906101000a900460ff1615611a5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a54906144be565b60405180910390fd5b601560149054906101000a900460ff1615611aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa49061445e565b60405180910390fd5b6001601560146101000a81548160ff021916908315150217905550610af083611ad46111de565b611ade9190614732565b1115611b1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b169061453e565b60405180910390fd5b6014831115611b63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5a906142fe565b60405180910390fd5b82600f54611b7191906147b9565b341015611bb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611baa906143fe565b60405180910390fd5b600080611bca85600b61216290919063ffffffff16565b9150915060008290505b818111611c1257611be53382612924565b60105460126000838152602001908152602001600020819055508080611c0a90614960565b915050611bd4565b5060006064600534611c2491906147b9565b611c2e9190614788565b9050611c3981612af2565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8234611c819190614813565b9081150290604051600060405180830381858888f19350505050158015611cac573d6000803e3d6000fd5b506000601560146101000a81548160ff021916908315150217905550828294509450505050915091565b611ce8611ce1612455565b8383612b6b565b5050565b611cfd611cf7612455565b83612516565b611d3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d33906144fe565b60405180910390fd5b611d4884848484612cd8565b50505050565b611d5734612af2565b565b60126020528060005260406000206000915090505481565b6060611d7c826123e9565b611dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db29061435e565b60405180910390fd5b61076f821115611dfe576101f482611dd39190614732565b9150610af0821115611dfd5761076f610af083611df09190614813565b611dfa9190614732565b91505b5b6000600d8054611e0d906148fd565b905011611e4457600c611e1f83612d34565b604051602001611e3092919061410e565b604051602081830303815290604052611e70565b600d611e4f83612d34565b604051602001611e60929190614132565b6040516020818303038152906040525b9050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611f13612455565b73ffffffffffffffffffffffffffffffffffffffff16611f31611950565b73ffffffffffffffffffffffffffffffffffffffff1614611f87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7e9061447e565b60405180910390fd5b60158054906101000a900460ff16611fd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fcb906142de565b60405180910390fd5b80600f8190555060006015806101000a81548160ff02191690831515021790555050565b612000612455565b73ffffffffffffffffffffffffffffffffffffffff1661201e611950565b73ffffffffffffffffffffffffffffffffffffffff1614612074576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161206b9061447e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120db9061429e565b60405180910390fd5b6120ed8161285e565b50565b600080600090505b825181101561215c576012600084838151811061211857612117614a96565b5b602002602001015181526020019081526020016000205460105461213c9190614813565b826121479190614732565b9150808061215490614960565b9150506120f8565b50919050565b600080600184600001546121769190614732565b9150828460000160008282540192505081905550836000015490509250929050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061226357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612273575061227282612e95565b5b9050919050565b610770811061228857600080fd5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8330846040518463ffffffff1660e01b81526004016122e79392919061417c565b600060405180830381600087803b15801561230157600080fd5b505af1158015612315573d6000803e3d6000fd5b505050506123238282612924565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bac93203826040518263ffffffff1660e01b815260040161237e919061457e565b60206040518083038186803b15801561239657600080fd5b505afa1580156123aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123ce9190613b7f565b60126000838152602001908152602001600020819055505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166124d0836116a8565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000612521826123e9565b612560576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125579061437e565b60405180910390fd5b600061256b836116a8565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806125da57508373ffffffffffffffffffffffffffffffffffffffff166125c284610c0c565b73ffffffffffffffffffffffffffffffffffffffff16145b806125eb57506125ea8185611e77565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16612614826116a8565b73ffffffffffffffffffffffffffffffffffffffff161461266a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126619061449e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156126da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126d19061431e565b60405180910390fd5b6126e5838383612eff565b6126f060008261245d565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127409190614813565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127979190614732565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b600081600001549050919050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161298b9061441e565b60405180910390fd5b61299d816123e9565b156129dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129d4906142be565b60405180910390fd5b6129e960008383612eff565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612a399190614732565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b80601154612b009190614732565b601181905550612b0e6111de565b81612b199190614788565b60106000828254612b2a9190614732565b925050819055507fbadc96f0b899bb720d18a25ea9fae343d6095c7f760d4a54ee0d65fe1c66ccd181604051612b60919061457e565b60405180910390a150565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612bda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bd19061433e565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612ccb9190614221565b60405180910390a3505050565b612ce38484846125f4565b612cef84848484613013565b612d2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d259061427e565b60405180910390fd5b50505050565b60606000821415612d7c576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612e90565b600082905060005b60008214612dae578080612d9790614960565b915050600a82612da79190614788565b9150612d84565b60008167ffffffffffffffff811115612dca57612dc9614ac5565b5b6040519080825280601f01601f191660200182016040528015612dfc5781602001600182028036833780820191505090505b5090505b60008514612e8957600182612e159190614813565b9150600a85612e2491906149a9565b6030612e309190614732565b60f81b818381518110612e4657612e45614a96565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612e829190614788565b9450612e00565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612f0a8383836131aa565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612f4d57612f48816131af565b612f8c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612f8b57612f8a83826131f8565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612fcf57612fca81613365565b61300e565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461300d5761300c8282613436565b5b5b505050565b60006130348473ffffffffffffffffffffffffffffffffffffffff166134b5565b1561319d578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261305d612455565b8786866040518563ffffffff1660e01b815260040161307f94939291906141b3565b602060405180830381600087803b15801561309957600080fd5b505af19250505080156130ca57506040513d601f19601f820116820180604052508101906130c79190613adc565b60015b61314d573d80600081146130fa576040519150601f19603f3d011682016040523d82523d6000602084013e6130ff565b606091505b50600081511415613145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161313c9061427e565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506131a2565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b600060016132058461180a565b61320f9190614813565b90506000600760008481526020019081526020016000205490508181146132f4576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506133799190614813565b90506000600960008481526020019081526020016000205490506000600883815481106133a9576133a8614a96565b5b9060005260206000200154905080600883815481106133cb576133ca614a96565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061341a57613419614a67565b5b6001900381819060005260206000200160009055905550505050565b60006134418361180a565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600080823b905060008111915050919050565b8280546134d4906148fd565b90600052602060002090601f0160209004810192826134f6576000855561353d565b82601f1061350f57805160ff191683800117855561353d565b8280016001018555821561353d579182015b8281111561353c578251825591602001919060010190613521565b5b50905061354a919061354e565b5090565b5b8082111561356757600081600090555060010161354f565b5090565b600061357e613579846145e7565b6145c2565b905080838252602082019050828560208602820111156135a1576135a0614af9565b5b60005b858110156135d157816135b788826136cf565b8452602084019350602083019250506001810190506135a4565b5050509392505050565b60006135ee6135e984614613565b6145c2565b9050808382526020820190508285602086028201111561361157613610614af9565b5b60005b85811015613641578161362788826137f0565b845260208401935060208301925050600181019050613614565b5050509392505050565b600061365e6136598461463f565b6145c2565b90508281526020810184848401111561367a57613679614afe565b5b6136858482856148bb565b509392505050565b60006136a061369b84614670565b6145c2565b9050828152602081018484840111156136bc576136bb614afe565b5b6136c78482856148bb565b509392505050565b6000813590506136de81615136565b92915050565b6000815190506136f381615136565b92915050565b600082601f83011261370e5761370d614af4565b5b813561371e84826020860161356b565b91505092915050565b600082601f83011261373c5761373b614af4565b5b813561374c8482602086016135db565b91505092915050565b6000813590506137648161514d565b92915050565b60008135905061377981615164565b92915050565b60008151905061378e81615164565b92915050565b600082601f8301126137a9576137a8614af4565b5b81356137b984826020860161364b565b91505092915050565b600082601f8301126137d7576137d6614af4565b5b81356137e784826020860161368d565b91505092915050565b6000813590506137ff8161517b565b92915050565b6000815190506138148161517b565b92915050565b6000602082840312156138305761382f614b08565b5b600061383e848285016136cf565b91505092915050565b60006020828403121561385d5761385c614b08565b5b600061386b848285016136e4565b91505092915050565b6000806040838503121561388b5761388a614b08565b5b6000613899858286016136cf565b92505060206138aa858286016136cf565b9150509250929050565b6000806000606084860312156138cd576138cc614b08565b5b60006138db868287016136cf565b93505060206138ec868287016136cf565b92505060406138fd868287016137f0565b9150509250925092565b6000806000806080858703121561392157613920614b08565b5b600061392f878288016136cf565b9450506020613940878288016136cf565b9350506040613951878288016137f0565b925050606085013567ffffffffffffffff81111561397257613971614b03565b5b61397e87828801613794565b91505092959194509250565b600080604083850312156139a1576139a0614b08565b5b60006139af858286016136cf565b92505060206139c085828601613755565b9150509250929050565b600080604083850312156139e1576139e0614b08565b5b60006139ef858286016136cf565b9250506020613a00858286016137f0565b9150509250929050565b60008060408385031215613a2157613a20614b08565b5b600083013567ffffffffffffffff811115613a3f57613a3e614b03565b5b613a4b858286016136f9565b9250506020613a5c85828601613755565b9150509250929050565b600060208284031215613a7c57613a7b614b08565b5b600082013567ffffffffffffffff811115613a9a57613a99614b03565b5b613aa684828501613727565b91505092915050565b600060208284031215613ac557613ac4614b08565b5b6000613ad38482850161376a565b91505092915050565b600060208284031215613af257613af1614b08565b5b6000613b008482850161377f565b91505092915050565b600060208284031215613b1f57613b1e614b08565b5b600082013567ffffffffffffffff811115613b3d57613b3c614b03565b5b613b49848285016137c2565b91505092915050565b600060208284031215613b6857613b67614b08565b5b6000613b76848285016137f0565b91505092915050565b600060208284031215613b9557613b94614b08565b5b6000613ba384828501613805565b91505092915050565b6000613bb883836140f0565b60208301905092915050565b613bcd81614847565b82525050565b6000613bde826146c6565b613be881856146f4565b9350613bf3836146a1565b8060005b83811015613c24578151613c0b8882613bac565b9750613c16836146e7565b925050600181019050613bf7565b5085935050505092915050565b613c3a81614859565b82525050565b6000613c4b826146d1565b613c558185614705565b9350613c658185602086016148ca565b613c6e81614b0d565b840191505092915050565b6000613c84826146dc565b613c8e8185614716565b9350613c9e8185602086016148ca565b613ca781614b0d565b840191505092915050565b6000613cbd826146dc565b613cc78185614727565b9350613cd78185602086016148ca565b80840191505092915050565b60008154613cf0816148fd565b613cfa8186614727565b94506001821660008114613d155760018114613d2657613d59565b60ff19831686528186019350613d59565b613d2f856146b1565b60005b83811015613d5157815481890152600182019150602081019050613d32565b838801955050505b50505092915050565b6000613d6f602b83614716565b9150613d7a82614b1e565b604082019050919050565b6000613d92603283614716565b9150613d9d82614b6d565b604082019050919050565b6000613db5602683614716565b9150613dc082614bbc565b604082019050919050565b6000613dd8601c83614716565b9150613de382614c0b565b602082019050919050565b6000613dfb600a83614716565b9150613e0682614c34565b602082019050919050565b6000613e1e600e83614716565b9150613e2982614c5d565b602082019050919050565b6000613e41602483614716565b9150613e4c82614c86565b604082019050919050565b6000613e64601983614716565b9150613e6f82614cd5565b602082019050919050565b6000613e87600d83614716565b9150613e9282614cfe565b602082019050919050565b6000613eaa602c83614716565b9150613eb582614d27565b604082019050919050565b6000613ecd603883614716565b9150613ed882614d76565b604082019050919050565b6000613ef0602a83614716565b9150613efb82614dc5565b604082019050919050565b6000613f13602983614716565b9150613f1e82614e14565b604082019050919050565b6000613f36601083614716565b9150613f4182614e63565b602082019050919050565b6000613f59602083614716565b9150613f6482614e8c565b602082019050919050565b6000613f7c602c83614716565b9150613f8782614eb5565b604082019050919050565b6000613f9f600583614727565b9150613faa82614f04565b600582019050919050565b6000613fc2601383614716565b9150613fcd82614f2d565b602082019050919050565b6000613fe5602083614716565b9150613ff082614f56565b602082019050919050565b6000614008602983614716565b915061401382614f7f565b604082019050919050565b600061402b600e83614716565b915061403682614fce565b602082019050919050565b600061404e602183614716565b915061405982614ff7565b604082019050919050565b6000614071603183614716565b915061407c82615046565b604082019050919050565b6000614094602c83614716565b915061409f82615095565b604082019050919050565b60006140b7601283614716565b91506140c2826150e4565b602082019050919050565b60006140da600d83614716565b91506140e58261510d565b602082019050919050565b6140f9816148b1565b82525050565b614108816148b1565b82525050565b600061411a8285613ce3565b91506141268284613cb2565b91508190509392505050565b600061413e8285613ce3565b915061414a8284613cb2565b915061415582613f92565b91508190509392505050565b60006020820190506141766000830184613bc4565b92915050565b60006060820190506141916000830186613bc4565b61419e6020830185613bc4565b6141ab60408301846140ff565b949350505050565b60006080820190506141c86000830187613bc4565b6141d56020830186613bc4565b6141e260408301856140ff565b81810360608301526141f48184613c40565b905095945050505050565b600060208201905081810360008301526142198184613bd3565b905092915050565b60006020820190506142366000830184613c31565b92915050565b600060208201905081810360008301526142568184613c79565b905092915050565b6000602082019050818103600083015261427781613d62565b9050919050565b6000602082019050818103600083015261429781613d85565b9050919050565b600060208201905081810360008301526142b781613da8565b9050919050565b600060208201905081810360008301526142d781613dcb565b9050919050565b600060208201905081810360008301526142f781613dee565b9050919050565b6000602082019050818103600083015261431781613e11565b9050919050565b6000602082019050818103600083015261433781613e34565b9050919050565b6000602082019050818103600083015261435781613e57565b9050919050565b6000602082019050818103600083015261437781613e7a565b9050919050565b6000602082019050818103600083015261439781613e9d565b9050919050565b600060208201905081810360008301526143b781613ec0565b9050919050565b600060208201905081810360008301526143d781613ee3565b9050919050565b600060208201905081810360008301526143f781613f06565b9050919050565b6000602082019050818103600083015261441781613f29565b9050919050565b6000602082019050818103600083015261443781613f4c565b9050919050565b6000602082019050818103600083015261445781613f6f565b9050919050565b6000602082019050818103600083015261447781613fb5565b9050919050565b6000602082019050818103600083015261449781613fd8565b9050919050565b600060208201905081810360008301526144b781613ffb565b9050919050565b600060208201905081810360008301526144d78161401e565b9050919050565b600060208201905081810360008301526144f781614041565b9050919050565b6000602082019050818103600083015261451781614064565b9050919050565b6000602082019050818103600083015261453781614087565b9050919050565b60006020820190508181036000830152614557816140aa565b9050919050565b60006020820190508181036000830152614577816140cd565b9050919050565b600060208201905061459360008301846140ff565b92915050565b60006040820190506145ae60008301856140ff565b6145bb60208301846140ff565b9392505050565b60006145cc6145dd565b90506145d8828261492f565b919050565b6000604051905090565b600067ffffffffffffffff82111561460257614601614ac5565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561462e5761462d614ac5565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561465a57614659614ac5565b5b61466382614b0d565b9050602081019050919050565b600067ffffffffffffffff82111561468b5761468a614ac5565b5b61469482614b0d565b9050602081019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600061473d826148b1565b9150614748836148b1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561477d5761477c6149da565b5b828201905092915050565b6000614793826148b1565b915061479e836148b1565b9250826147ae576147ad614a09565b5b828204905092915050565b60006147c4826148b1565b91506147cf836148b1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614808576148076149da565b5b828202905092915050565b600061481e826148b1565b9150614829836148b1565b92508282101561483c5761483b6149da565b5b828203905092915050565b600061485282614891565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b838110156148e85780820151818401526020810190506148cd565b838111156148f7576000848401525b50505050565b6000600282049050600182168061491557607f821691505b6020821081141561492957614928614a38565b5b50919050565b61493882614b0d565b810181811067ffffffffffffffff8211171561495757614956614ac5565b5b80604052505050565b600061496b826148b1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561499e5761499d6149da565b5b600182019050919050565b60006149b4826148b1565b91506149bf836148b1565b9250826149cf576149ce614a09565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f4e6f742050617573656400000000000000000000000000000000000000000000600082015250565b7f416d6f756e7420496e76616c6964000000000000000000000000000000000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f546f6b656e20496e76616c696400000000000000000000000000000000000000600082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f46656520496e73756666696369656e7400000000000000000000000000000000600082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000600082015250565b7f4d696e74696e6720496e2d50726f677265737300000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960008201527f73206e6f74206f776e0000000000000000000000000000000000000000000000602082015250565b7f4d696e74696e6720506175736564000000000000000000000000000000000000600082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f4d617820537570706c7920526561636865640000000000000000000000000000600082015250565b7f4f776e657220496e76616c696400000000000000000000000000000000000000600082015250565b61513f81614847565b811461514a57600080fd5b50565b61515681614859565b811461516157600080fd5b50565b61516d81614865565b811461517857600080fd5b50565b615184816148b1565b811461518f57600080fd5b5056fea264697066735822122007db669c313209cbfbf7dc873dd64d988d9f83976d46a8faf88a5147c2bddc3064736f6c634300080700330000000000000000000000004924241e8a310c591c0ec2b6d2fe8dcf03f48b790000000000000000000000000000000000000000000000000000000000000080000000000000000000000000db350245d143a8b575d909b1fa93df99844264b0000000000000000000000000f86847f75c74dd83cb44bc7bd2da87fc55ca5909000000000000000000000000000000000000000000000000000000000000002368747470733a2f2f61766178636f696e732e636f6d2f6170692f61766178636f696e2f0000000000000000000000000000000000000000000000000000000000