6080604052610e42600c55348015610015575f80fd5b50336040518060400160405280601381526020017f43727970746f204c616e6420436974697a656e000000000000000000000000008152506040518060400160405280600381526020017f434c430000000000000000000000000000000000000000000000000000000000815250815f908161009191906108f6565b5080600190816100a191906108f6565b5050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610114575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161010b9190610a04565b60405180910390fd5b610123816105f960201b60201c565b505f600b8190555060405180610180016040528061015b81526020016165e661015b9139601c908161015591906108f6565b50601b60405180604001604052806040518060400160405280600781526020017f436974697a656e0000000000000000000000000000000000000000000000000081525081526020015f815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f0190816101db91906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280600a81526020017f4368616e63656c6c6f720000000000000000000000000000000000000000000081525081526020016103e8815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161026f91906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280600681526020017f436f6e73756c00000000000000000000000000000000000000000000000000008152508152602001610bb8815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161030391906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280601881526020017f4d696e697374657220506c656e69706f74656e746961727900000000000000008152508152602001611388815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161039791906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280600a81526020017f416d6261737361646f72000000000000000000000000000000000000000000008152508152602001612710815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161042b91906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280600f81526020017f436162696e65742041647669736f7200000000000000000000000000000000008152508152602001614e20815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f0190816104bf91906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280601081526020017f436162696e6574204d696e6973746572000000000000000000000000000000008152508152602001617530815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161055391906108f6565b50602082015181600101555050601b60405180604001604052806040518060400160405280600e81526020017f5072696d65204d696e6973746572000000000000000000000000000000000000815250815260200161c350815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f0190816105e791906108f6565b50602082015181600101555050610a1d565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061073757607f821691505b60208210810361074a576107496106f3565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107ac7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610771565b6107b68683610771565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6107fa6107f56107f0846107ce565b6107d7565b6107ce565b9050919050565b5f819050919050565b610813836107e0565b61082761081f82610801565b84845461077d565b825550505050565b5f90565b61083b61082f565b61084681848461080a565b505050565b5b818110156108695761085e5f82610833565b60018101905061084c565b5050565b601f8211156108ae5761087f81610750565b61088884610762565b81016020851015610897578190505b6108ab6108a385610762565b83018261084b565b50505b505050565b5f82821c905092915050565b5f6108ce5f19846008026108b3565b1980831691505092915050565b5f6108e683836108bf565b9150826002028217905092915050565b6108ff826106bc565b67ffffffffffffffff811115610918576109176106c6565b5b6109228254610720565b61092d82828561086d565b5f60209050601f83116001811461095e575f841561094c578287015190505b61095685826108db565b8655506109bd565b601f19841661096c86610750565b5f5b828110156109935784890151825560018201915060208501945060208101905061096e565b868310156109b057848901516109ac601f8916826108bf565b8355505b6001600288020188555050505b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6109ee826109c5565b9050919050565b6109fe816109e4565b82525050565b5f602082019050610a175f8301846109f5565b92915050565b615bbc80610a2a5f395ff3fe608060405234801561000f575f80fd5b50600436106102ef575f3560e01c806383b81ebd1161019b578063b88d4fde116100e7578063da304e4d116100a0578063f087e56c1161007a578063f087e56c146109e9578063f2fde38b14610a19578063f305760814610a35578063ff98109914610a53576102ef565b8063da304e4d14610959578063e2d28ca614610989578063e985e9c5146109b9576102ef565b8063b88d4fde14610885578063c87b56dd146108a1578063d1355968146108d1578063d5b9221b146108ef578063d7be946f1461091f578063d86cfbb01461093b576102ef565b80639ce0676211610154578063a919646b1161012e578063a919646b146107d8578063aa32dc8f14610808578063af260ac514610838578063b566b98214610854576102ef565b80639ce0676214610780578063a22cb4651461079e578063a43d6404146107ba576102ef565b806383b81ebd146106ac5780638d2c1dcd146106dc5780638da5cb5b146106f857806390c3f38f1461071657806395d89b41146107325780639c7e5a8f14610750576102ef565b806342842e0e1161025a5780636211724b1161021357806370a08231116101ed57806370a0823114610612578063715018a61461064257806377bfc4201461064c5780637a4543a51461067c576102ef565b80636211724b146105825780636352211e146105b25780636a627842146105e2576102ef565b806342842e0e1461049c5780634a39b65b146104b85780634f6ccce7146104d457806351f8336114610504578063571b5af2146105345780635825432d14610552576102ef565b806318160ddd116102ac57806318160ddd146103db57806323b872dd146103f95780632aa778b2146104155780632f745c59146104315780633b06b91a146104615780633c46fb7f1461047d576102ef565b806301ffc9a7146102f357806303f765761461032357806306fdde0314610353578063081812fc14610371578063095ea7b3146103a1578063104a3b01146103bd575b5f80fd5b61030d60048036038101906103089190613d21565b610a83565b60405161031a9190613d66565b60405180910390f35b61033d60048036038101906103389190613db2565b610afc565b60405161034a9190613dec565b60405180910390f35b61035b610b11565b6040516103689190613e75565b60405180910390f35b61038b60048036038101906103869190613db2565b610ba0565b6040516103989190613ed4565b60405180910390f35b6103bb60048036038101906103b69190613f17565b610bbb565b005b6103c5610bd1565b6040516103d29190613dec565b60405180910390f35b6103e3610bd7565b6040516103f09190613dec565b60405180910390f35b610413600480360381019061040e9190613f55565b610be3565b005b61042f600480360381019061042a9190613fa5565b610ce2565b005b61044b60048036038101906104469190613f17565b610ec3565b6040516104589190613dec565b60405180910390f35b61047b60048036038101906104769190613fe3565b610f67565b005b610485611090565b604051610493929190614021565b60405180910390f35b6104b660048036038101906104b19190613f55565b6110a0565b005b6104d260048036038101906104cd9190613db2565b6110bf565b005b6104ee60048036038101906104e99190613db2565b6110d1565b6040516104fb9190613dec565b60405180910390f35b61051e60048036038101906105199190613db2565b611143565b60405161052b9190613dec565b60405180910390f35b61053c6111a5565b6040516105499190613dec565b60405180910390f35b61056c60048036038101906105679190613fe3565b6111ab565b6040516105799190613dec565b60405180910390f35b61059c60048036038101906105979190613db2565b6112b3565b6040516105a99190614060565b60405180910390f35b6105cc60048036038101906105c79190613db2565b6112c8565b6040516105d99190613ed4565b60405180910390f35b6105fc60048036038101906105f79190614079565b6112d9565b6040516106099190613dec565b60405180910390f35b61062c60048036038101906106279190614079565b6113b7565b6040516106399190613dec565b60405180910390f35b61064a61146d565b005b61066660048036038101906106619190613db2565b611480565b6040516106739190613dec565b60405180910390f35b61069660048036038101906106919190613db2565b611495565b6040516106a39190614060565b60405180910390f35b6106c660048036038101906106c19190613db2565b6114aa565b6040516106d39190613dec565b60405180910390f35b6106f660048036038101906106f19190613fa5565b6114bf565b005b610700611573565b60405161070d9190613ed4565b60405180910390f35b610730600480360381019061072b91906141d0565b61159b565b005b61073a61162d565b6040516107479190613e75565b60405180910390f35b61076a60048036038101906107659190613db2565b6116bd565b6040516107779190613ed4565b60405180910390f35b6107886116ed565b6040516107959190613dec565b60405180910390f35b6107b860048036038101906107b39190614241565b6116f3565b005b6107c2611709565b6040516107cf9190613dec565b60405180910390f35b6107f260048036038101906107ed9190613fe3565b61170f565b6040516107ff9190613dec565b60405180910390f35b610822600480360381019061081d9190614079565b61172f565b60405161082f9190613d66565b60405180910390f35b610852600480360381019061084d91906142a9565b611826565b005b61086e60048036038101906108699190613db2565b6119b4565b60405161087c9291906142e7565b60405180910390f35b61089f600480360381019061089a91906143b3565b611a69565b005b6108bb60048036038101906108b69190613db2565b611a86565b6040516108c89190613e75565b60405180910390f35b6108d9611b0c565b6040516108e69190613dec565b60405180910390f35b61090960048036038101906109049190614079565b611b15565b6040516109169190613d66565b60405180910390f35b610939600480360381019061093491906142a9565b611b32565b005b610943611cc0565b6040516109509190613dec565b60405180910390f35b610973600480360381019061096e9190613db2565b611cc6565b6040516109809190613dec565b60405180910390f35b6109a3600480360381019061099e9190613db2565b611d28565b6040516109b09190613dec565b60405180910390f35b6109d360048036038101906109ce9190614433565b611d3d565b6040516109e09190613d66565b60405180910390f35b610a0360048036038101906109fe9190613db2565b611dcb565b604051610a109190613e75565b60405180910390f35b610a336004803603810190610a2e9190614079565b611ed6565b005b610a3d611f5a565b604051610a4a9190613dec565b60405180910390f35b610a6d6004803603810190610a689190613db2565b611f63565b604051610a7a9190613dec565b60405180910390f35b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610af55750610af482611fc5565b5b9050919050565b6011602052805f5260405f205f915090505481565b60605f8054610b1f9061449e565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4b9061449e565b8015610b965780601f10610b6d57610100808354040283529160200191610b96565b820191905f5260205f20905b815481529060010190602001808311610b7957829003601f168201915b5050505050905090565b5f610baa826120a6565b50610bb48261212c565b9050919050565b610bcd8282610bc8612165565b61216c565b5050565b600e5481565b5f600880549050905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c53575f6040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610c4a9190613ed4565b60405180910390fd5b5f610c668383610c61612165565b61217e565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610cdc578382826040517f64283d7b000000000000000000000000000000000000000000000000000000008152600401610cd3939291906144ce565b60405180910390fd5b50505050565b610ceb3361172f565b610d2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d219061454d565b60405180910390fd5b610d3382612298565b610d72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d69906145b5565b60405180910390fd5b5f60185f8481526020019081526020015f205490505f601b8281548110610d9c57610d9b6145d3565b5b905f5260205f2090600202016001015490505f8382610dbb919061462d565b90505f8390505f600185610dcf919061462d565b90505b601b80549050811015610e2357601b8181548110610df357610df26145d3565b5b905f5260205f209060020201600101548310610e1157809150610e16565b610e23565b8080600101915050610dd2565b50838114610e9b578060185f8881526020019081526020015f2081905550857f56f46d3f19f6cbee6fd2120d9a27053b85f976606730b6c2ce520d477fae4292601b8381548110610e7757610e766145d3565b5b905f5260205f2090600202015f01604051610e9291906146f3565b60405180910390a25b8460115f8881526020019081526020015f2081905550610ebb86866122d8565b505050505050565b5f610ecd836113b7565b8210610f125782826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401610f09929190614713565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b610f703361172f565b610faf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa69061454d565b60405180910390fd5b610fb882612298565b610ff7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fee906145b5565b60405180910390fd5b4260175f8481526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508073ffffffffffffffffffffffffffffffffffffffff16827f6bb00a74356926431cf8539d504f450101b091306b1584e0425520becd59eef660405160405180910390a35050565b5f80600d54600e54915091509091565b6110ba83838360405180602001604052805f815250611a69565b505050565b6110c761232e565b80600c8190555050565b5f6110da610bd7565b821061111f575f826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401611116929190614713565b60405180910390fd5b60088281548110611133576111326145d3565b5b905f5260205f2001549050919050565b5f61114d82612298565b61118c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611183906145b5565b60405180910390fd5b60125f8381526020019081526020015f20549050919050565b600c5481565b5f6111b583612298565b6111f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111eb906145b5565b60405180910390fd5b5f60175f8581526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60195f8681526020019081526020015f205482116112745760195f8681526020019081526020015f2054611276565b815b90505f620151808242611289919061473a565b611293919061479a565b9050600c5481116112a457806112a8565b600c545b935050505092915050565b6015602052805f5260405f205f915090505481565b5f6112d2826120a6565b9050919050565b5f6112e33361172f565b611322576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113199061454d565b60405180910390fd5b600b5f815480929190611334906147ca565b91905055505f600b54905061134983826123b5565b4260195f8381526020019081526020015f208190555082601a5f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611428575f6040517f89c62b6400000000000000000000000000000000000000000000000000000000815260040161141f9190613ed4565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61147561232e565b61147e5f6123d2565b565b6012602052805f5260405f205f915090505481565b6013602052805f5260405f205f915090505481565b6019602052805f5260405f205f915090505481565b6114c83361172f565b611507576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114fe9061454d565b60405180910390fd5b61151082612298565b61154f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611546906145b5565b60405180910390fd5b8060115f8481526020019081526020015f208190555061156f82826122d8565b5050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6115a43361172f565b6115e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115da9061454d565b60405180910390fd5b80601c90816115f2919061499c565b507fdbdc84bdf4319ffa157f81d25dd54211090e37ca6a9d0b90e2b8098aaceed135816040516116229190613e75565b60405180910390a150565b60606001805461163c9061449e565b80601f01602080910402602001604051908101604052809291908181526020018280546116689061449e565b80156116b35780601f1061168a576101008083540402835291602001916116b3565b820191905f5260205f20905b81548152906001019060200180831161169657829003601f168201915b5050505050905090565b601a602052805f5260405f205f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600d5481565b6117056116fe612165565b8383612495565b5050565b600f5481565b6017602052815f5260405f20602052805f5260405f205f91509150505481565b5f611738611573565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117735760019050611821565b8173ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156117db57506040513d601f19601f820116820180604052508101906117d89190614a7f565b60015b6117e7575f9050611821565b6117ef611573565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16149150505b919050565b61182f3361172f565b61186e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118659061454d565b60405180910390fd5b61187782612298565b6118b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ad906145b5565b60405180910390fd5b5f8160145f8581526020019081526020015f20546118d49190614aaa565b90505f8112156118e2575f90505b60145f8481526020019081526020015f205460155f8581526020019081526020015f20819055508060145f8581526020019081526020015f20819055505f8213156119445781600f5f828254611938919061462d565b92505081905550611977565b5f8261194f90614aeb565b9050600f54811161196d5780600f54611968919061473a565b61196f565b5f5b600f81905550505b827f42d68b2807ba1a8be06d4df597c449a1d87c90f0638c79cfbbbc078168e42f94826040516119a79190613dec565b60405180910390a2505050565b601b81815481106119c3575f80fd5b905f5260205f2090600202015f91509050805f0180546119e29061449e565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0e9061449e565b8015611a595780601f10611a3057610100808354040283529160200191611a59565b820191905f5260205f20905b815481529060010190602001808311611a3c57829003601f168201915b5050505050908060010154905082565b611a74848484610be3565b611a80848484846125fe565b50505050565b6060611a9182612298565b611ad0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac790614ba1565b60405180910390fd5b5f611ae2611add846127b0565b612828565b905080604051602001611af59190614c43565b604051602081830303815290604052915050919050565b5f601054905090565b6016602052805f5260405f205f915054906101000a900460ff1681565b611b3b3361172f565b611b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b719061454d565b60405180910390fd5b611b8382612298565b611bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb9906145b5565b60405180910390fd5b5f8160125f8581526020019081526020015f2054611be09190614aaa565b90505f811215611bee575f90505b60125f8481526020019081526020015f205460135f8581526020019081526020015f20819055508060125f8581526020019081526020015f20819055505f821315611c50578160105f828254611c44919061462d565b92505081905550611c83565b5f82611c5b90614aeb565b90506010548111611c795780601054611c74919061473a565b611c7b565b5f5b601081905550505b827f83a9806124732ea3944b492da213a0d77bfb9524ae546b1acc5953f6e7ffb0f482604051611cb39190613dec565b60405180910390a2505050565b60105481565b5f611cd082612298565b611d0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d06906145b5565b60405180910390fd5b60145f8381526020019081526020015f20549050919050565b6014602052805f5260405f205f915090505481565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6060611dd682612298565b611e15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0c906145b5565b60405180910390fd5b601b60185f8481526020019081526020015f205481548110611e3a57611e396145d3565b5b905f5260205f2090600202015f018054611e539061449e565b80601f0160208091040260200160405190810160405280929190818152602001828054611e7f9061449e565b8015611eca5780601f10611ea157610100808354040283529160200191611eca565b820191905f5260205f20905b815481529060010190602001808311611ead57829003601f168201915b50505050509050919050565b611ede61232e565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611f4e575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401611f459190613ed4565b60405180910390fd5b611f57816123d2565b50565b5f600f54905090565b5f611f6d82612298565b611fac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa3906145b5565b60405180910390fd5b60115f8381526020019081526020015f20549050919050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061208f57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061209f575061209e82612995565b5b9050919050565b5f806120b1836129fe565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361212357826040517f7e27328900000000000000000000000000000000000000000000000000000000815260040161211a9190613dec565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b6121798383836001612a37565b505050565b5f8061218b858585612bf6565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036121ce576121c984612e01565b61220d565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461220c5761220b8185612e45565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361224e5761224984612f8f565b61228d565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461228c5761228b858561304f565b5b5b809150509392505050565b5f8073ffffffffffffffffffffffffffffffffffffffff166122b9836129fe565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600d5481111561232a5780600d8190555081600e819055507fbe8461c92443fb75ced98eec678372665aefc753b8b7b743ff9d655aee58962d8282604051612321929190614021565b60405180910390a15b5050565b612336612165565b73ffffffffffffffffffffffffffffffffffffffff16612354611573565b73ffffffffffffffffffffffffffffffffffffffff16146123b357612377612165565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016123aa9190613ed4565b60405180910390fd5b565b6123ce828260405180602001604052805f8152506130d3565b5050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361250557816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016124fc9190613ed4565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516125f19190613d66565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b11156127aa578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02612641612165565b8685856040518563ffffffff1660e01b81526004016126639493929190614cb6565b6020604051808303815f875af192505050801561269e57506040513d601f19601f8201168201806040525081019061269b9190614d14565b60015b61271f573d805f81146126cc576040519150601f19603f3d011682016040523d82523d5f602084013e6126d1565b606091505b505f81510361271757836040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161270e9190613ed4565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146127a857836040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161279f9190613ed4565b60405180910390fd5b505b50505050565b60605f6127bc83611dcb565b90505f6127c984836130ee565b90505f6127d685846131d6565b90506127e1856132e0565b826040518060a0016040528060658152602001615b22606591398360405160200161280f9493929190614efb565b6040516020818303038152906040529350505050919050565b60605f8251036128485760405180602001604052805f8152509050612990565b5f604051806060016040528060408152602001615ae26040913990505f600360028551612875919061462d565b61287f919061479a565b600461288b9190614f90565b67ffffffffffffffff8111156128a4576128a36140ac565b5b6040519080825280601f01601f1916602001820160405280156128d65781602001600182028036833780820191505090505b509050600182016020820185865187016020810180515f82525b8284101561294b576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f81168701518653600186019550506128f0565b80825260038a510660018114612968576002811461297b57612983565b603d6001870353603d6002870353612983565b603d60018703535b5050505050505080925050505b919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8080612a6f57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612ba1575f612a7e846120a6565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612ae857508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015612afb5750612af98184611d3d565b155b15612b3d57826040517fa9fbf51f000000000000000000000000000000000000000000000000000000008152600401612b349190613ed4565b60405180910390fd5b8115612b9f57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f80612c01846129fe565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612c4257612c418184866133aa565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612ccd57612c815f855f80612a37565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614612d4c57600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f612e4f836113b7565b90505f60075f8481526020019081526020015f20549050818114612f26575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f6001600880549050612fa2919061473a565b90505f60095f8481526020019081526020015f205490505f60088381548110612fce57612fcd6145d3565b5b905f5260205f20015490508060088381548110612fee57612fed6145d3565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f9055600880548061303657613035614fd1565b5b600190038181905f5260205f20015f9055905550505050565b5f600161305b846113b7565b613065919061473a565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b6130dd838361346d565b6130e95f8484846125fe565b505050565b606061310a60125f8581526020019081526020015f20546132e0565b61312460145f8681526020019081526020015f20546132e0565b8361313f60195f8881526020019081526020015f2054613560565b613190601a5f8981526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16601461386c565b61319b600d546132e0565b6131a6600e546132e0565b601c6040516020016131bf989796959493929190615318565b604051602081830303815290604052905092915050565b60606131e1836132e0565b6131fb60125f8681526020019081526020015f20546132e0565b61321560145f8781526020019081526020015f20546132e0565b8461323060195f8981526020019081526020015f2054613560565b613281601a5f8a81526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16601461386c565b61329b60115f8b81526020019081526020015f20546132e0565b6132a6600d546132e0565b6132b1600e546132e0565b6040516020016132c99998979695949392919061589c565b604051602081830303815290604052905092915050565b60605f60016132ee84613aaa565b0190505f8167ffffffffffffffff81111561330c5761330b6140ac565b5b6040519080825280601f01601f19166020018201604052801561333e5781602001600182028036833780820191505090505b5090505f82602001820190505b60011561339f578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816133945761339361476d565b5b0494505f850361334b575b819350505050919050565b6133b5838383613bfb565b613468575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361342957806040517f7e2732890000000000000000000000000000000000000000000000000000000081526004016134209190613dec565b60405180910390fd5b81816040517f177e802f00000000000000000000000000000000000000000000000000000000815260040161345f929190614713565b60405180910390fd5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036134dd575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016134d49190613ed4565b60405180910390fd5b5f6134e983835f61217e565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461355b575f6040517f73c6ac6e0000000000000000000000000000000000000000000000000000000081526004016135529190613ed4565b60405180910390fd5b505050565b60605f6201518090505f6301e1338090505f6301e2850090505f6107b290505f8190505f805b858910613624575f60048461359b91906159e0565b1480156135b457505f6064846135b191906159e0565b14155b806135cb57505f610190846135c991906159e0565b145b15613602578489106135f85784896135e3919061473a565b985082806135f0906147ca565b9350506135fd565b613624565b61361f565b858961360e919061473a565b9850828061361b906147ca565b9350505b613586565b5f604051806101800160405280601f8152602001601c8152602001601f8152602001601e8152602001601f8152602001601e8152602001601f8152602001601f8152602001601e8152602001601f8152602001601e8152602001601f81525090505f60048561369391906159e0565b1480156136ac57505f6064856136a991906159e0565b14155b806136c357505f610190856136c191906159e0565b145b156136e857601d816001600c81106136de576136dd6145d3565b5b6020020181815250505b5f92505b600c831015613750575f8184600c8110613709576137086145d3565b5b60200201519050888161371c9190614f90565b8b10156137295750613750565b88816137359190614f90565b8b613740919061473a565b9a505082806001019350506136ec565b6001888b61375e919061479a565b613768919061462d565b9150600183613777919061462d565b9250613782846132e0565b600a841061379e5760405180602001604052805f8152506137d5565b6040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152505b6137de856132e0565b600a85106137fa5760405180602001604052805f815250613831565b6040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152505b61383a866132e0565b60405160200161384e959493929190615a5a565b60405160208183030381529060405298505050505050505050919050565b60605f8390505f60028460026138829190614f90565b61388c919061462d565b67ffffffffffffffff8111156138a5576138a46140ac565b5b6040519080825280601f01601f1916602001820160405280156138d75781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000815f8151811061390e5761390d6145d3565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613971576139706145d3565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f60018560026139af9190614f90565b6139b9919061462d565b90505b6001811115613a58577f3031323334353637383961626364656600000000000000000000000000000000600f8416601081106139fb576139fa6145d3565b5b1a60f81b828281518110613a1257613a116145d3565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600483901c925080613a5190615aba565b90506139bc565b505f8214613a9f5784846040517fe22e27eb000000000000000000000000000000000000000000000000000000008152600401613a96929190614021565b60405180910390fd5b809250505092915050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613b06577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381613afc57613afb61476d565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310613b43576d04ee2d6d415b85acef81000000008381613b3957613b3861476d565b5b0492506020810190505b662386f26fc100008310613b7257662386f26fc100008381613b6857613b6761476d565b5b0492506010810190505b6305f5e1008310613b9b576305f5e1008381613b9157613b9061476d565b5b0492506008810190505b6127108310613bc0576127108381613bb657613bb561476d565b5b0492506004810190505b60648310613be35760648381613bd957613bd861476d565b5b0492506002810190505b600a8310613bf2576001810190505b80915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015613cb257508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480613c735750613c728484611d3d565b5b80613cb157508273ffffffffffffffffffffffffffffffffffffffff16613c998361212c565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613d0081613ccc565b8114613d0a575f80fd5b50565b5f81359050613d1b81613cf7565b92915050565b5f60208284031215613d3657613d35613cc4565b5b5f613d4384828501613d0d565b91505092915050565b5f8115159050919050565b613d6081613d4c565b82525050565b5f602082019050613d795f830184613d57565b92915050565b5f819050919050565b613d9181613d7f565b8114613d9b575f80fd5b50565b5f81359050613dac81613d88565b92915050565b5f60208284031215613dc757613dc6613cc4565b5b5f613dd484828501613d9e565b91505092915050565b613de681613d7f565b82525050565b5f602082019050613dff5f830184613ddd565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f613e4782613e05565b613e518185613e0f565b9350613e61818560208601613e1f565b613e6a81613e2d565b840191505092915050565b5f6020820190508181035f830152613e8d8184613e3d565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f613ebe82613e95565b9050919050565b613ece81613eb4565b82525050565b5f602082019050613ee75f830184613ec5565b92915050565b613ef681613eb4565b8114613f00575f80fd5b50565b5f81359050613f1181613eed565b92915050565b5f8060408385031215613f2d57613f2c613cc4565b5b5f613f3a85828601613f03565b9250506020613f4b85828601613d9e565b9150509250929050565b5f805f60608486031215613f6c57613f6b613cc4565b5b5f613f7986828701613f03565b9350506020613f8a86828701613f03565b9250506040613f9b86828701613d9e565b9150509250925092565b5f8060408385031215613fbb57613fba613cc4565b5b5f613fc885828601613d9e565b9250506020613fd985828601613d9e565b9150509250929050565b5f8060408385031215613ff957613ff8613cc4565b5b5f61400685828601613d9e565b925050602061401785828601613f03565b9150509250929050565b5f6040820190506140345f830185613ddd565b6140416020830184613ddd565b9392505050565b5f819050919050565b61405a81614048565b82525050565b5f6020820190506140735f830184614051565b92915050565b5f6020828403121561408e5761408d613cc4565b5b5f61409b84828501613f03565b91505092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6140e282613e2d565b810181811067ffffffffffffffff82111715614101576141006140ac565b5b80604052505050565b5f614113613cbb565b905061411f82826140d9565b919050565b5f67ffffffffffffffff82111561413e5761413d6140ac565b5b61414782613e2d565b9050602081019050919050565b828183375f83830152505050565b5f61417461416f84614124565b61410a565b9050828152602081018484840111156141905761418f6140a8565b5b61419b848285614154565b509392505050565b5f82601f8301126141b7576141b66140a4565b5b81356141c7848260208601614162565b91505092915050565b5f602082840312156141e5576141e4613cc4565b5b5f82013567ffffffffffffffff81111561420257614201613cc8565b5b61420e848285016141a3565b91505092915050565b61422081613d4c565b811461422a575f80fd5b50565b5f8135905061423b81614217565b92915050565b5f806040838503121561425757614256613cc4565b5b5f61426485828601613f03565b92505060206142758582860161422d565b9150509250929050565b61428881614048565b8114614292575f80fd5b50565b5f813590506142a38161427f565b92915050565b5f80604083850312156142bf576142be613cc4565b5b5f6142cc85828601613d9e565b92505060206142dd85828601614295565b9150509250929050565b5f6040820190508181035f8301526142ff8185613e3d565b905061430e6020830184613ddd565b9392505050565b5f67ffffffffffffffff82111561432f5761432e6140ac565b5b61433882613e2d565b9050602081019050919050565b5f61435761435284614315565b61410a565b905082815260208101848484011115614373576143726140a8565b5b61437e848285614154565b509392505050565b5f82601f83011261439a576143996140a4565b5b81356143aa848260208601614345565b91505092915050565b5f805f80608085870312156143cb576143ca613cc4565b5b5f6143d887828801613f03565b94505060206143e987828801613f03565b93505060406143fa87828801613d9e565b925050606085013567ffffffffffffffff81111561441b5761441a613cc8565b5b61442787828801614386565b91505092959194509250565b5f806040838503121561444957614448613cc4565b5b5f61445685828601613f03565b925050602061446785828601613f03565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806144b557607f821691505b6020821081036144c8576144c7614471565b5b50919050565b5f6060820190506144e15f830186613ec5565b6144ee6020830185613ddd565b6144fb6040830184613ec5565b949350505050565b7f4e6f7420617574686f72697a65640000000000000000000000000000000000005f82015250565b5f614537600e83613e0f565b915061454282614503565b602082019050919050565b5f6020820190508181035f8301526145648161452b565b9050919050565b7f546f6b656e20646f6573206e6f742065786973740000000000000000000000005f82015250565b5f61459f601483613e0f565b91506145aa8261456b565b602082019050919050565b5f6020820190508181035f8301526145cc81614593565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61463782613d7f565b915061464283613d7f565b925082820190508082111561465a57614659614600565b5b92915050565b5f819050815f5260205f209050919050565b5f815461467e8161449e565b6146888186613e0f565b9450600182165f81146146a257600181146146b8576146ea565b60ff1983168652811515602002860193506146ea565b6146c185614660565b5f5b838110156146e2578154818901526001820191506020810190506146c3565b808801955050505b50505092915050565b5f6020820190508181035f83015261470b8184614672565b905092915050565b5f6040820190506147265f830185613ec5565b6147336020830184613ddd565b9392505050565b5f61474482613d7f565b915061474f83613d7f565b925082820390508181111561476757614766614600565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6147a482613d7f565b91506147af83613d7f565b9250826147bf576147be61476d565b5b828204905092915050565b5f6147d482613d7f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361480657614805614600565b5b600182019050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261485b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614820565b6148658683614820565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6148a061489b61489684613d7f565b61487d565b613d7f565b9050919050565b5f819050919050565b6148b983614886565b6148cd6148c5826148a7565b84845461482c565b825550505050565b5f90565b6148e16148d5565b6148ec8184846148b0565b505050565b5b8181101561490f576149045f826148d9565b6001810190506148f2565b5050565b601f8211156149545761492581614660565b61492e84614811565b8101602085101561493d578190505b61495161494985614811565b8301826148f1565b50505b505050565b5f82821c905092915050565b5f6149745f1984600802614959565b1980831691505092915050565b5f61498c8383614965565b9150826002028217905092915050565b6149a582613e05565b67ffffffffffffffff8111156149be576149bd6140ac565b5b6149c8825461449e565b6149d3828285614913565b5f60209050601f831160018114614a04575f84156149f2578287015190505b6149fc8582614981565b865550614a63565b601f198416614a1286614660565b5f5b82811015614a3957848901518255600182019150602085019450602081019050614a14565b86831015614a565784890151614a52601f891682614965565b8355505b6001600288020188555050505b505050505050565b5f81519050614a7981613eed565b92915050565b5f60208284031215614a9457614a93613cc4565b5b5f614aa184828501614a6b565b91505092915050565b5f614ab482614048565b9150614abf83614048565b92508282019050828112155f8312168382125f841215161715614ae557614ae4614600565b5b92915050565b5f614af582614048565b91507f80000000000000000000000000000000000000000000000000000000000000008203614b2757614b26614600565b5b815f039050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f614b8b602f83613e0f565b9150614b9682614b31565b604082019050919050565b5f6020820190508181035f830152614bb881614b7f565b9050919050565b5f81905092915050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000005f82015250565b5f614bfd601d83614bbf565b9150614c0882614bc9565b601d82019050919050565b5f614c1d82613e05565b614c278185614bbf565b9350614c37818560208601613e1f565b80840191505092915050565b5f614c4d82614bf1565b9150614c598284614c13565b915081905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f614c8882614c64565b614c928185614c6e565b9350614ca2818560208601613e1f565b614cab81613e2d565b840191505092915050565b5f608082019050614cc95f830187613ec5565b614cd66020830186613ec5565b614ce36040830185613ddd565b8181036060830152614cf58184614c7e565b905095945050505050565b5f81519050614d0e81613cf7565b92915050565b5f60208284031215614d2957614d28613cc4565b5b5f614d3684828501614d00565b91505092915050565b7f7b226e616d65223a202243727970746f4c616e64436974697a656e20230000005f82015250565b5f614d73601d83614bbf565b9150614d7e82614d3f565b601d82019050919050565b7f222c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f614dbd600283614bbf565b9150614dc882614d89565b600282019050919050565b7f226465736372697074696f6e223a2022000000000000000000000000000000005f82015250565b5f614e07601083614bbf565b9150614e1282614dd3565b601082019050919050565b7f22696d616765223a2022000000000000000000000000000000000000000000005f82015250565b5f614e51600a83614bbf565b9150614e5c82614e1d565b600a82019050919050565b7f2261747472696275746573223a205b00000000000000000000000000000000005f82015250565b5f614e9b600f83614bbf565b9150614ea682614e67565b600f82019050919050565b7f5d7d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f614ee5600283614bbf565b9150614ef082614eb1565b600282019050919050565b5f614f0582614d67565b9150614f118287614c13565b9150614f1c82614db1565b9150614f2782614dfb565b9150614f338286614c13565b9150614f3e82614db1565b9150614f4982614e45565b9150614f558285614c13565b9150614f6082614db1565b9150614f6b82614e8f565b9150614f778284614c13565b9150614f8282614ed9565b915081905095945050505050565b5f614f9a82613d7f565b9150614fa583613d7f565b9250828202614fb381613d7f565b91508282048414831517614fca57614fc9614600565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f56616c6f723a20000000000000000000000000000000000000000000000000005f82015250565b5f615032600783614bbf565b915061503d82614ffe565b600782019050919050565b7f5c6e0000000000000000000000000000000000000000000000000000000000005f82015250565b5f61507c600283614bbf565b915061508782615048565b600282019050919050565b7f4372656469743a200000000000000000000000000000000000000000000000005f82015250565b5f6150c6600883614bbf565b91506150d182615092565b600882019050919050565b7f4b434c205469746c653a200000000000000000000000000000000000000000005f82015250565b5f615110600b83614bbf565b915061511b826150dc565b600b82019050919050565b7f446174653a2000000000000000000000000000000000000000000000000000005f82015250565b5f61515a600683614bbf565b915061516582615126565b600682019050919050565b7f4f776e65723a20000000000000000000000000000000000000000000000000005f82015250565b5f6151a4600783614bbf565b91506151af82615170565b600782019050919050565b7f43757272656e744869676865737420566f74653a2000000000000000000000005f82015250565b5f6151ee601583614bbf565b91506151f9826151ba565b601582019050919050565b7f2028546f6b656e49443a200000000000000000000000000000000000000000005f82015250565b5f615238600b83614bbf565b915061524382615204565b600b82019050919050565b7f295c6e5c6e0000000000000000000000000000000000000000000000000000005f82015250565b5f615282600583614bbf565b915061528d8261524e565b600582019050919050565b5f81546152a48161449e565b6152ae8186614bbf565b9450600182165f81146152c857600181146152dd5761530f565b60ff198316865281151582028601935061530f565b6152e685614660565b5f5b83811015615307578154818901526001820191506020810190506152e8565b838801955050505b50505092915050565b5f61532282615026565b915061532e828b614c13565b915061533982615070565b9150615344826150ba565b9150615350828a614c13565b915061535b82615070565b915061536682615104565b91506153728289614c13565b915061537d82615070565b91506153888261514e565b91506153948288614c13565b915061539f82615070565b91506153aa82615198565b91506153b68287614c13565b91506153c182615070565b91506153cc826151e2565b91506153d88286614c13565b91506153e38261522c565b91506153ef8285614c13565b91506153fa82615276565b91506154068284615298565b91508190509998505050505050505050565b7f7b2274726169745f74797065223a2022436974697a656e204944204e6f2e222c5f8201527f202276616c7565223a2022000000000000000000000000000000000000000000602082015250565b5f615472602b83614bbf565b915061547d82615418565b602b82019050919050565b7f227d2c00000000000000000000000000000000000000000000000000000000005f82015250565b5f6154bc600383614bbf565b91506154c782615488565b600382019050919050565b7f7b2274726169745f74797065223a202256616c6f72222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f61552c602283614bbf565b9150615537826154d2565b602282019050919050565b7f7b2274726169745f74797065223a2022437265646974222c202276616c7565225f8201527f3a20220000000000000000000000000000000000000000000000000000000000602082015250565b5f61559c602383614bbf565b91506155a782615542565b602382019050919050565b7f7b2274726169745f74797065223a20224b434c205469746c65222c202276616c5f8201527f7565223a20220000000000000000000000000000000000000000000000000000602082015250565b5f61560c602683614bbf565b9150615617826155b2565b602682019050919050565b7f7b2274726169745f74797065223a202244617465222c202276616c7565223a205f8201527f2200000000000000000000000000000000000000000000000000000000000000602082015250565b5f61567c602183614bbf565b915061568782615622565b602182019050919050565b7f7b2274726169745f74797065223a20224f776e6572222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f6156ec602283614bbf565b91506156f782615692565b602282019050919050565b7f7b2274726169745f74797065223a2022566f746573222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f61575c602283614bbf565b915061576782615702565b602282019050919050565b7f7b2274726169745f74797065223a20224869676865737420566f7465222c20225f8201527f76616c7565223a20220000000000000000000000000000000000000000000000602082015250565b5f6157cc602983614bbf565b91506157d782615772565b602982019050919050565b7f7b2274726169745f74797065223a20224869676865737420566f746520546f6b5f8201527f656e4944222c202276616c7565223a2022000000000000000000000000000000602082015250565b5f61583c603183614bbf565b9150615847826157e2565b603182019050919050565b7f227d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f615886600283614bbf565b915061589182615852565b600282019050919050565b5f6158a682615466565b91506158b2828c614c13565b91506158bd826154b0565b91506158c882615520565b91506158d4828b614c13565b91506158df826154b0565b91506158ea82615590565b91506158f6828a614c13565b9150615901826154b0565b915061590c82615600565b91506159188289614c13565b9150615923826154b0565b915061592e82615670565b915061593a8288614c13565b9150615945826154b0565b9150615950826156e0565b915061595c8287614c13565b9150615967826154b0565b915061597282615750565b915061597e8286614c13565b9150615989826154b0565b9150615994826157c0565b91506159a08285614c13565b91506159ab826154b0565b91506159b682615830565b91506159c28284614c13565b91506159cd8261587a565b91508190509a9950505050505050505050565b5f6159ea82613d7f565b91506159f583613d7f565b925082615a0557615a0461476d565b5b828206905092915050565b7f2d000000000000000000000000000000000000000000000000000000000000005f82015250565b5f615a44600183614bbf565b9150615a4f82615a10565b600182019050919050565b5f615a658288614c13565b9150615a7082615a38565b9150615a7c8287614c13565b9150615a888286614c13565b9150615a9382615a38565b9150615a9f8285614c13565b9150615aab8284614c13565b91508190509695505050505050565b5f615ac482613d7f565b91505f8203615ad657615ad5614600565b5b60018203905091905056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f68747470733a2f2f667563687369612d62726f61642d666c616d696e676f2d3135372e6d7970696e6174612e636c6f75642f697066732f516d4e5a557142614c32413634505369784b724a78625770347348474662334d4d4b5577684e4c74455a6a707752a26469706673582212209eaead6dc92c695c252ce7630c18a0131cc962bb2cbd54663d9f7e7b9760c6c264736f6c634300081a003357656c636f6d6520746f2054686520506c616e65742052657075626c6963206f662043727970746f204c616e642c20746865206c616e64206f662043656e7472616c6c6573732c205768657265207468652046726565646f6d20616e6420457465726e69747920436f65786973742e2054686520506c616e65742052657075626c696320696e69746961746976652061696d7320746f2065737461626c6973682061207375737461696e61626c652c20666169722077617920666f7220616c6c2070656f706c6520746f20616363756d756c6174652c2070726573657276652c20616e6420696e68657269742070726f706572747920776974686f75742065787465726e616c20696e746572666572656e63652c20736f207468617420616c6c20696e646976696475616c732063616e20686176652074686520706f73736962696c697479206f66206661697220636f6e74696e756174696f6e2e