[ { "inputs": [ { "internalType": "string", "name": "_initBaseURI", "type": "string" } ], "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": 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": [ { "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": "baseExtension", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getBalance", "outputs": [ { "internalType": "uint256", "name": "", "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": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_mintAmount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "minter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "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": "_newBaseExtension", "type": "string" } ], "name": "setBaseExtension", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_newBaseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_newMinter", "type": "address" } ], "name": "setMinter", "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": "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": [ { "internalType": "address", "name": "_owner", "type": "address" } ], "name": "walletOfOwner", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" } ]
60806040526040518060400160405280600581526020017f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600c90816200004a919062001177565b506000600d60006101000a81548160ff0219169083151502179055503480156200007357600080fd5b5060405162005a0938038062005a098339818101604052810190620000999190620013cc565b6040518060400160405280601081526020017f426c6f636b4c65616465722055736572000000000000000000000000000000008152506040518060400160405280600381526020017f424c550000000000000000000000000000000000000000000000000000000000815250816000908162000116919062001177565b50806001908162000128919062001177565b5050506200014b6200013f6200017660201b60201c565b6200017e60201b60201c565b6200015c816200024460201b60201c565b6200016f3360016200026960201b60201c565b5062001b12565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620002546200043960201b60201c565b80600b908162000265919062001177565b5050565b60006200027b620004ca60201b60201c565b9050600d60009054906101000a900460ff1615620002d0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c7906200147e565b60405180910390fd5b6000821162000316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200030d90620014f0565b60405180910390fd5b62000326620004d760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480620003ad5750600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b620003ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003e69062001562565b60405180910390fd5b6000600190505b82811162000433576200041d848284620004119190620015b3565b6200050160201b60201c565b80806200042a9062001610565b915050620003f6565b50505050565b620004496200017660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff166200046f620004d760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620004c8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004bf90620016ad565b60405180910390fd5b565b6000600880549050905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620005238282604051806020016040528060008152506200052760201b60201c565b5050565b6200053983836200059560201b60201c565b6200054e60008484846200078e60201b60201c565b62000590576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005879062001745565b60405180910390fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000607576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005fe90620017b7565b60405180910390fd5b62000618816200093760201b60201c565b156200065b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006529062001829565b60405180910390fd5b6200066f60008383620009a360201b60201c565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620006c19190620015b3565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46200078a6000838362000ae860201b60201c565b5050565b6000620007bc8473ffffffffffffffffffffffffffffffffffffffff1662000aed60201b620013d51760201c565b156200092a578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02620007ee6200017660201b60201c565b8786866040518563ffffffff1660e01b8152600401620008129493929190620018fe565b6020604051808303816000875af19250505080156200085157506040513d601f19601f820116820180604052508101906200084e9190620019af565b60015b620008d9573d806000811462000884576040519150601f19603f3d011682016040523d82523d6000602084013e62000889565b606091505b506000815103620008d1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008c89062001745565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506200092f565b600190505b949350505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b620009bb83838362000b1060201b620013f81760201c565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000a075762000a018162000b1560201b60201c565b62000a4f565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161462000a4e5762000a4d838262000b5e60201b60201c565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a9b5762000a958162000cdb60201b60201c565b62000ae3565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161462000ae25762000ae1828262000db760201b60201c565b5b5b505050565b505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600162000b788462000e4360201b62000f201760201c565b62000b849190620019e1565b905060006007600084815260200190815260200160002054905081811462000c6a576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b6000600160088054905062000cf19190620019e1565b905060006009600084815260200190815260200160002054905060006008838154811062000d245762000d2362001a1c565b5b90600052602060002001549050806008838154811062000d495762000d4862001a1c565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548062000d9b5762000d9a62001a4b565b5b6001900381819060005260206000200160009055905550505050565b600062000dcf8362000e4360201b62000f201760201c565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000eb6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ead9062001af0565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000f7f57607f821691505b60208210810362000f955762000f9462000f37565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000fff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000fc0565b6200100b868362000fc0565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062001058620010526200104c8462001023565b6200102d565b62001023565b9050919050565b6000819050919050565b620010748362001037565b6200108c62001083826200105f565b84845462000fcd565b825550505050565b600090565b620010a362001094565b620010b081848462001069565b505050565b5b81811015620010d857620010cc60008262001099565b600181019050620010b6565b5050565b601f8211156200112757620010f18162000f9b565b620010fc8462000fb0565b810160208510156200110c578190505b620011246200111b8562000fb0565b830182620010b5565b50505b505050565b600082821c905092915050565b60006200114c600019846008026200112c565b1980831691505092915050565b600062001167838362001139565b9150826002028217905092915050565b620011828262000efd565b67ffffffffffffffff8111156200119e576200119d62000f08565b5b620011aa825462000f66565b620011b7828285620010dc565b600060209050601f831160018114620011ef5760008415620011da578287015190505b620011e6858262001159565b86555062001256565b601f198416620011ff8662000f9b565b60005b82811015620012295784890151825560018201915060208501945060208101905062001202565b8683101562001249578489015162001245601f89168262001139565b8355505b6001600288020188555050505b505050505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b62001298826200127c565b810181811067ffffffffffffffff82111715620012ba57620012b962000f08565b5b80604052505050565b6000620012cf6200125e565b9050620012dd82826200128d565b919050565b600067ffffffffffffffff8211156200130057620012ff62000f08565b5b6200130b826200127c565b9050602081019050919050565b60005b83811015620013385780820151818401526020810190506200131b565b8381111562001348576000848401525b50505050565b6000620013656200135f84620012e2565b620012c3565b90508281526020810184848401111562001384576200138362001277565b5b6200139184828562001318565b509392505050565b600082601f830112620013b157620013b062001272565b5b8151620013c38482602086016200134e565b91505092915050565b600060208284031215620013e557620013e462001268565b5b600082015167ffffffffffffffff8111156200140657620014056200126d565b5b620014148482850162001399565b91505092915050565b600082825260208201905092915050565b7f4d696e742070726f636573732069732070617573656400000000000000000000600082015250565b6000620014666016836200141d565b915062001473826200142e565b602082019050919050565b60006020820190508181036000830152620014998162001457565b9050919050565b7f4d696e7420616d6f756e74206973203000000000000000000000000000000000600082015250565b6000620014d86010836200141d565b9150620014e582620014a0565b602082019050919050565b600060208201905081810360008301526200150b81620014c9565b9050919050565b7f4e6f2061636365737320746f206d696e74000000000000000000000000000000600082015250565b60006200154a6011836200141d565b9150620015578262001512565b602082019050919050565b600060208201905081810360008301526200157d816200153b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620015c08262001023565b9150620015cd8362001023565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562001605576200160462001584565b5b828201905092915050565b60006200161d8262001023565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362001652576200165162001584565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620016956020836200141d565b9150620016a2826200165d565b602082019050919050565b60006020820190508181036000830152620016c88162001686565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006200172d6032836200141d565b91506200173a82620016cf565b604082019050919050565b6000602082019050818103600083015262001760816200171e565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006200179f6020836200141d565b9150620017ac8262001767565b602082019050919050565b60006020820190508181036000830152620017d28162001790565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600062001811601c836200141d565b91506200181e82620017d9565b602082019050919050565b60006020820190508181036000830152620018448162001802565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062001878826200184b565b9050919050565b6200188a816200186b565b82525050565b6200189b8162001023565b82525050565b600081519050919050565b600082825260208201905092915050565b6000620018ca82620018a1565b620018d68185620018ac565b9350620018e881856020860162001318565b620018f3816200127c565b840191505092915050565b60006080820190506200191560008301876200187f565b6200192460208301866200187f565b62001933604083018562001890565b8181036060830152620019478184620018bd565b905095945050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b620019898162001952565b81146200199557600080fd5b50565b600081519050620019a9816200197e565b92915050565b600060208284031215620019c857620019c762001268565b5b6000620019d88482850162001998565b91505092915050565b6000620019ee8262001023565b9150620019fb8362001023565b92508282101562001a115762001a1062001584565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600062001ad86029836200141d565b915062001ae58262001a7a565b604082019050919050565b6000602082019050818103600083015262001b0b8162001ac9565b9050919050565b613ee78062001b226000396000f3fe6080604052600436106101c25760003560e01c806355f804b3116100f7578063a22cb46511610095578063da3ef23f11610064578063da3ef23f14610659578063e985e9c514610682578063f2fde38b146106bf578063fca3b5aa146106e8576101c2565b8063a22cb4651461059f578063b88d4fde146105c8578063c6682862146105f1578063c87b56dd1461061c576101c2565b806370a08231116100d157806370a08231146104f5578063715018a6146105325780638da5cb5b1461054957806395d89b4114610574576101c2565b806355f804b3146104645780636352211e1461048d5780636c0360eb146104ca576101c2565b806318160ddd1161016457806340c10f191161013e57806340c10f19146103a557806342842e0e146103c1578063438b6300146103ea5780634f6ccce714610427576101c2565b806318160ddd1461031457806323b872dd1461033f5780632f745c5914610368576101c2565b806307546172116101a05780630754617214610258578063081812fc14610283578063095ea7b3146102c057806312065fe0146102e9576101c2565b806301ffc9a7146101c757806302329a291461020457806306fdde031461022d575b600080fd5b3480156101d357600080fd5b506101ee60048036038101906101e9919061271c565b610711565b6040516101fb9190612764565b60405180910390f35b34801561021057600080fd5b5061022b600480360381019061022691906127ab565b61078b565b005b34801561023957600080fd5b506102426107b0565b60405161024f9190612871565b60405180910390f35b34801561026457600080fd5b5061026d610842565b60405161027a91906128d4565b60405180910390f35b34801561028f57600080fd5b506102aa60048036038101906102a59190612925565b610868565b6040516102b791906128d4565b60405180910390f35b3480156102cc57600080fd5b506102e760048036038101906102e2919061297e565b6108ae565b005b3480156102f557600080fd5b506102fe6109c5565b60405161030b91906129cd565b60405180910390f35b34801561032057600080fd5b506103296109cd565b60405161033691906129cd565b60405180910390f35b34801561034b57600080fd5b50610366600480360381019061036191906129e8565b6109da565b005b34801561037457600080fd5b5061038f600480360381019061038a919061297e565b610a3a565b60405161039c91906129cd565b60405180910390f35b6103bf60048036038101906103ba919061297e565b610adf565b005b3480156103cd57600080fd5b506103e860048036038101906103e391906129e8565b610c87565b005b3480156103f657600080fd5b50610411600480360381019061040c9190612a3b565b610ca7565b60405161041e9190612b26565b60405180910390f35b34801561043357600080fd5b5061044e60048036038101906104499190612925565b610d55565b60405161045b91906129cd565b60405180910390f35b34801561047057600080fd5b5061048b60048036038101906104869190612c7d565b610dc6565b005b34801561049957600080fd5b506104b460048036038101906104af9190612925565b610de1565b6040516104c191906128d4565b60405180910390f35b3480156104d657600080fd5b506104df610e92565b6040516104ec9190612871565b60405180910390f35b34801561050157600080fd5b5061051c60048036038101906105179190612a3b565b610f20565b60405161052991906129cd565b60405180910390f35b34801561053e57600080fd5b50610547610fd7565b005b34801561055557600080fd5b5061055e610feb565b60405161056b91906128d4565b60405180910390f35b34801561058057600080fd5b50610589611015565b6040516105969190612871565b60405180910390f35b3480156105ab57600080fd5b506105c660048036038101906105c19190612cc6565b6110a7565b005b3480156105d457600080fd5b506105ef60048036038101906105ea9190612da7565b6110bd565b005b3480156105fd57600080fd5b5061060661111f565b6040516106139190612871565b60405180910390f35b34801561062857600080fd5b50610643600480360381019061063e9190612925565b6111ad565b6040516106509190612871565b60405180910390f35b34801561066557600080fd5b50610680600480360381019061067b9190612c7d565b611257565b005b34801561068e57600080fd5b506106a960048036038101906106a49190612e2a565b611272565b6040516106b69190612764565b60405180910390f35b3480156106cb57600080fd5b506106e660048036038101906106e19190612a3b565b611306565b005b3480156106f457600080fd5b5061070f600480360381019061070a9190612a3b565b611389565b005b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107845750610783826113fd565b5b9050919050565b6107936114df565b80600d60006101000a81548160ff02191690831515021790555050565b6060600080546107bf90612e99565b80601f01602080910402602001604051908101604052809291908181526020018280546107eb90612e99565b80156108385780601f1061080d57610100808354040283529160200191610838565b820191906000526020600020905b81548152906001019060200180831161081b57829003601f168201915b5050505050905090565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006108738261155d565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006108b982610de1565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610929576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092090612f3c565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109486115a8565b73ffffffffffffffffffffffffffffffffffffffff1614806109775750610976816109716115a8565b611272565b5b6109b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ad90612fce565b60405180910390fd5b6109c083836115b0565b505050565b600047905090565b6000600880549050905090565b6109eb6109e56115a8565b82611669565b610a2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2190613060565b60405180910390fd5b610a358383836116fe565b505050565b6000610a4583610f20565b8210610a86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7d906130f2565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6000610ae96109cd565b9050600d60009054906101000a900460ff1615610b3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b329061315e565b60405180910390fd5b60008211610b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b75906131ca565b60405180910390fd5b610b86610feb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610c0c5750600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610c4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4290613236565b60405180910390fd5b6000600190505b828111610c8157610c6e848284610c699190613285565b611964565b8080610c79906132db565b915050610c52565b50505050565b610ca2838383604051806020016040528060008152506110bd565b505050565b60606000610cb483610f20565b905060008167ffffffffffffffff811115610cd257610cd1612b52565b5b604051908082528060200260200182016040528015610d005781602001602082028036833780820191505090505b50905060005b82811015610d4a57610d188582610a3a565b828281518110610d2b57610d2a613323565b5b6020026020010181815250508080610d42906132db565b915050610d06565b508092505050919050565b6000610d5f6109cd565b8210610da0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d97906133c4565b60405180910390fd5b60088281548110610db457610db3613323565b5b90600052602060002001549050919050565b610dce6114df565b80600b9081610ddd9190613590565b5050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610e89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e80906136ae565b60405180910390fd5b80915050919050565b600b8054610e9f90612e99565b80601f0160208091040260200160405190810160405280929190818152602001828054610ecb90612e99565b8015610f185780601f10610eed57610100808354040283529160200191610f18565b820191906000526020600020905b815481529060010190602001808311610efb57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8790613740565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fdf6114df565b610fe96000611982565b565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461102490612e99565b80601f016020809104026020016040519081016040528092919081815260200182805461105090612e99565b801561109d5780601f106110725761010080835404028352916020019161109d565b820191906000526020600020905b81548152906001019060200180831161108057829003601f168201915b5050505050905090565b6110b96110b26115a8565b8383611a48565b5050565b6110ce6110c86115a8565b83611669565b61110d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110490613060565b60405180910390fd5b61111984848484611bb4565b50505050565b600c805461112c90612e99565b80601f016020809104026020016040519081016040528092919081815260200182805461115890612e99565b80156111a55780601f1061117a576101008083540402835291602001916111a5565b820191906000526020600020905b81548152906001019060200180831161118857829003601f168201915b505050505081565b60606111b882611c10565b6111f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ee906137d2565b60405180910390fd5b6000611201611c7c565b90506000815111611221576040518060200160405280600081525061124f565b8061122b84611d0e565b600c60405160200161123f939291906138b1565b6040516020818303038152906040525b915050919050565b61125f6114df565b80600c908161126e9190613590565b5050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61130e6114df565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361137d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137490613954565b60405180910390fd5b61138681611982565b50565b6113916114df565b80600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806114c857507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806114d857506114d782611e6e565b5b9050919050565b6114e76115a8565b73ffffffffffffffffffffffffffffffffffffffff16611505610feb565b73ffffffffffffffffffffffffffffffffffffffff161461155b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611552906139c0565b60405180910390fd5b565b61156681611c10565b6115a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159c906136ae565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661162383610de1565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061167583610de1565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806116b757506116b68185611272565b5b806116f557508373ffffffffffffffffffffffffffffffffffffffff166116dd84610868565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661171e82610de1565b73ffffffffffffffffffffffffffffffffffffffff1614611774576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176b90613a52565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117da90613ae4565b60405180910390fd5b6117ee838383611ed8565b6117f96000826115b0565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118499190613b04565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118a09190613285565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461195f838383611fea565b505050565b61197e828260405180602001604052806000815250611fef565b5050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611ab6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aad90613b84565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611ba79190612764565b60405180910390a3505050565b611bbf8484846116fe565b611bcb8484848461204a565b611c0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0190613c16565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6060600b8054611c8b90612e99565b80601f0160208091040260200160405190810160405280929190818152602001828054611cb790612e99565b8015611d045780601f10611cd957610100808354040283529160200191611d04565b820191906000526020600020905b815481529060010190602001808311611ce757829003601f168201915b5050505050905090565b606060008203611d55576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611e69565b600082905060005b60008214611d87578080611d70906132db565b915050600a82611d809190613c65565b9150611d5d565b60008167ffffffffffffffff811115611da357611da2612b52565b5b6040519080825280601f01601f191660200182016040528015611dd55781602001600182028036833780820191505090505b5090505b60008514611e6257600182611dee9190613b04565b9150600a85611dfd9190613c96565b6030611e099190613285565b60f81b818381518110611e1f57611e1e613323565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611e5b9190613c65565b9450611dd9565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b611ee38383836113f8565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611f2557611f20816121d1565b611f64565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611f6357611f62838261221a565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611fa657611fa181612387565b611fe5565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611fe457611fe38282612458565b5b5b505050565b505050565b611ff983836124d7565b612006600084848461204a565b612045576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203c90613c16565b60405180910390fd5b505050565b600061206b8473ffffffffffffffffffffffffffffffffffffffff166113d5565b156121c4578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026120946115a8565b8786866040518563ffffffff1660e01b81526004016120b69493929190613d1c565b6020604051808303816000875af19250505080156120f257506040513d601f19601f820116820180604052508101906120ef9190613d7d565b60015b612174573d8060008114612122576040519150601f19603f3d011682016040523d82523d6000602084013e612127565b606091505b50600081510361216c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216390613c16565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506121c9565b600190505b949350505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161222784610f20565b6122319190613b04565b9050600060076000848152602001908152602001600020549050818114612316576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b6000600160088054905061239b9190613b04565b90506000600960008481526020019081526020016000205490506000600883815481106123cb576123ca613323565b5b9060005260206000200154905080600883815481106123ed576123ec613323565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061243c5761243b613daa565b5b6001900381819060005260206000200160009055905550505050565b600061246383610f20565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612546576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253d90613e25565b60405180910390fd5b61254f81611c10565b1561258f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161258690613e91565b60405180910390fd5b61259b60008383611ed8565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125eb9190613285565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46126ac60008383611fea565b5050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6126f9816126c4565b811461270457600080fd5b50565b600081359050612716816126f0565b92915050565b600060208284031215612732576127316126ba565b5b600061274084828501612707565b91505092915050565b60008115159050919050565b61275e81612749565b82525050565b60006020820190506127796000830184612755565b92915050565b61278881612749565b811461279357600080fd5b50565b6000813590506127a58161277f565b92915050565b6000602082840312156127c1576127c06126ba565b5b60006127cf84828501612796565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156128125780820151818401526020810190506127f7565b83811115612821576000848401525b50505050565b6000601f19601f8301169050919050565b6000612843826127d8565b61284d81856127e3565b935061285d8185602086016127f4565b61286681612827565b840191505092915050565b6000602082019050818103600083015261288b8184612838565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006128be82612893565b9050919050565b6128ce816128b3565b82525050565b60006020820190506128e960008301846128c5565b92915050565b6000819050919050565b612902816128ef565b811461290d57600080fd5b50565b60008135905061291f816128f9565b92915050565b60006020828403121561293b5761293a6126ba565b5b600061294984828501612910565b91505092915050565b61295b816128b3565b811461296657600080fd5b50565b60008135905061297881612952565b92915050565b60008060408385031215612995576129946126ba565b5b60006129a385828601612969565b92505060206129b485828601612910565b9150509250929050565b6129c7816128ef565b82525050565b60006020820190506129e260008301846129be565b92915050565b600080600060608486031215612a0157612a006126ba565b5b6000612a0f86828701612969565b9350506020612a2086828701612969565b9250506040612a3186828701612910565b9150509250925092565b600060208284031215612a5157612a506126ba565b5b6000612a5f84828501612969565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612a9d816128ef565b82525050565b6000612aaf8383612a94565b60208301905092915050565b6000602082019050919050565b6000612ad382612a68565b612add8185612a73565b9350612ae883612a84565b8060005b83811015612b19578151612b008882612aa3565b9750612b0b83612abb565b925050600181019050612aec565b5085935050505092915050565b60006020820190508181036000830152612b408184612ac8565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612b8a82612827565b810181811067ffffffffffffffff82111715612ba957612ba8612b52565b5b80604052505050565b6000612bbc6126b0565b9050612bc88282612b81565b919050565b600067ffffffffffffffff821115612be857612be7612b52565b5b612bf182612827565b9050602081019050919050565b82818337600083830152505050565b6000612c20612c1b84612bcd565b612bb2565b905082815260208101848484011115612c3c57612c3b612b4d565b5b612c47848285612bfe565b509392505050565b600082601f830112612c6457612c63612b48565b5b8135612c74848260208601612c0d565b91505092915050565b600060208284031215612c9357612c926126ba565b5b600082013567ffffffffffffffff811115612cb157612cb06126bf565b5b612cbd84828501612c4f565b91505092915050565b60008060408385031215612cdd57612cdc6126ba565b5b6000612ceb85828601612969565b9250506020612cfc85828601612796565b9150509250929050565b600067ffffffffffffffff821115612d2157612d20612b52565b5b612d2a82612827565b9050602081019050919050565b6000612d4a612d4584612d06565b612bb2565b905082815260208101848484011115612d6657612d65612b4d565b5b612d71848285612bfe565b509392505050565b600082601f830112612d8e57612d8d612b48565b5b8135612d9e848260208601612d37565b91505092915050565b60008060008060808587031215612dc157612dc06126ba565b5b6000612dcf87828801612969565b9450506020612de087828801612969565b9350506040612df187828801612910565b925050606085013567ffffffffffffffff811115612e1257612e116126bf565b5b612e1e87828801612d79565b91505092959194509250565b60008060408385031215612e4157612e406126ba565b5b6000612e4f85828601612969565b9250506020612e6085828601612969565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612eb157607f821691505b602082108103612ec457612ec3612e6a565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f266021836127e3565b9150612f3182612eca565b604082019050919050565b60006020820190508181036000830152612f5581612f19565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b6000612fb8603e836127e3565b9150612fc382612f5c565b604082019050919050565b60006020820190508181036000830152612fe781612fab565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b600061304a602e836127e3565b915061305582612fee565b604082019050919050565b600060208201905081810360008301526130798161303d565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b60006130dc602b836127e3565b91506130e782613080565b604082019050919050565b6000602082019050818103600083015261310b816130cf565b9050919050565b7f4d696e742070726f636573732069732070617573656400000000000000000000600082015250565b60006131486016836127e3565b915061315382613112565b602082019050919050565b600060208201905081810360008301526131778161313b565b9050919050565b7f4d696e7420616d6f756e74206973203000000000000000000000000000000000600082015250565b60006131b46010836127e3565b91506131bf8261317e565b602082019050919050565b600060208201905081810360008301526131e3816131a7565b9050919050565b7f4e6f2061636365737320746f206d696e74000000000000000000000000000000600082015250565b60006132206011836127e3565b915061322b826131ea565b602082019050919050565b6000602082019050818103600083015261324f81613213565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613290826128ef565b915061329b836128ef565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156132d0576132cf613256565b5b828201905092915050565b60006132e6826128ef565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361331857613317613256565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b60006133ae602c836127e3565b91506133b982613352565b604082019050919050565b600060208201905081810360008301526133dd816133a1565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026134467fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613409565b6134508683613409565b95508019841693508086168417925050509392505050565b6000819050919050565b600061348d613488613483846128ef565b613468565b6128ef565b9050919050565b6000819050919050565b6134a783613472565b6134bb6134b382613494565b848454613416565b825550505050565b600090565b6134d06134c3565b6134db81848461349e565b505050565b5b818110156134ff576134f46000826134c8565b6001810190506134e1565b5050565b601f82111561354457613515816133e4565b61351e846133f9565b8101602085101561352d578190505b613541613539856133f9565b8301826134e0565b50505b505050565b600082821c905092915050565b600061356760001984600802613549565b1980831691505092915050565b60006135808383613556565b9150826002028217905092915050565b613599826127d8565b67ffffffffffffffff8111156135b2576135b1612b52565b5b6135bc8254612e99565b6135c7828285613503565b600060209050601f8311600181146135fa57600084156135e8578287015190505b6135f28582613574565b86555061365a565b601f198416613608866133e4565b60005b828110156136305784890151825560018201915060208501945060208101905061360b565b8683101561364d5784890151613649601f891682613556565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006136986018836127e3565b91506136a382613662565b602082019050919050565b600060208201905081810360008301526136c78161368b565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600061372a6029836127e3565b9150613735826136ce565b604082019050919050565b600060208201905081810360008301526137598161371d565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b60006137bc602f836127e3565b91506137c782613760565b604082019050919050565b600060208201905081810360008301526137eb816137af565b9050919050565b600081905092915050565b6000613808826127d8565b61381281856137f2565b93506138228185602086016127f4565b80840191505092915050565b6000815461383b81612e99565b61384581866137f2565b945060018216600081146138605760018114613875576138a8565b60ff19831686528115158202860193506138a8565b61387e856133e4565b60005b838110156138a057815481890152600182019150602081019050613881565b838801955050505b50505092915050565b60006138bd82866137fd565b91506138c982856137fd565b91506138d5828461382e565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061393e6026836127e3565b9150613949826138e2565b604082019050919050565b6000602082019050818103600083015261396d81613931565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006139aa6020836127e3565b91506139b582613974565b602082019050919050565b600060208201905081810360008301526139d98161399d565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613a3c6025836127e3565b9150613a47826139e0565b604082019050919050565b60006020820190508181036000830152613a6b81613a2f565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613ace6024836127e3565b9150613ad982613a72565b604082019050919050565b60006020820190508181036000830152613afd81613ac1565b9050919050565b6000613b0f826128ef565b9150613b1a836128ef565b925082821015613b2d57613b2c613256565b5b828203905092915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613b6e6019836127e3565b9150613b7982613b38565b602082019050919050565b60006020820190508181036000830152613b9d81613b61565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613c006032836127e3565b9150613c0b82613ba4565b604082019050919050565b60006020820190508181036000830152613c2f81613bf3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613c70826128ef565b9150613c7b836128ef565b925082613c8b57613c8a613c36565b5b828204905092915050565b6000613ca1826128ef565b9150613cac836128ef565b925082613cbc57613cbb613c36565b5b828206905092915050565b600081519050919050565b600082825260208201905092915050565b6000613cee82613cc7565b613cf88185613cd2565b9350613d088185602086016127f4565b613d1181612827565b840191505092915050565b6000608082019050613d3160008301876128c5565b613d3e60208301866128c5565b613d4b60408301856129be565b8181036060830152613d5d8184613ce3565b905095945050505050565b600081519050613d77816126f0565b92915050565b600060208284031215613d9357613d926126ba565b5b6000613da184828501613d68565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000613e0f6020836127e3565b9150613e1a82613dd9565b602082019050919050565b60006020820190508181036000830152613e3e81613e02565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000613e7b601c836127e3565b9150613e8682613e45565b602082019050919050565b60006020820190508181036000830152613eaa81613e6e565b905091905056fea264697066735822122083dd6a5cb3af70b3f3141b2ace126803e7bc07cc59f08e622fcf9169d960fc2364736f6c634300080f003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d6468647676704869425145344c6e395057787a7a747534396650766d767a4c4b64756e313859515552364b552f00000000000000000000