60806040526000600a60006101000a81548160ff02191690831515021790555060006012553480156200003157600080fd5b50604051620061ac380380620061ac8339818101604052810190620000579190620005f6565b600160008190555060008860ff161015801562000078575060128860ff1611155b620000ba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000b190620007b1565b60405180910390fd5b8960016000019081620000ce919062000a14565b5088600180019081620000e2919062000a14565b5087600160020160006101000a81548160ff021916908360ff16021790555086600160030181905550866001600401819055508560016005018190555084600160070181905550604051806060016040528084815260200183815260200182815250601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010155604082015181600201559050508360016006018190555033600b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030600b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600b60020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600b60030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555082600f6000018190555081600f6001018190555080600f600201819055506001600501546200037e600f600201546200036a600f60010154600f60000154620003d260201b62003d401790919060201c565b620003d260201b62003d401790919060201c565b1115620003c2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003b99062000b71565b60405180910390fd5b5050505050505050505062000bfd565b60008183620003e2919062000bc2565b905092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620004538262000408565b810181811067ffffffffffffffff8211171562000475576200047462000419565b5b80604052505050565b60006200048a620003ea565b905062000498828262000448565b919050565b600067ffffffffffffffff821115620004bb57620004ba62000419565b5b620004c68262000408565b9050602081019050919050565b60005b83811015620004f3578082015181840152602081019050620004d6565b60008484015250505050565b60006200051662000510846200049d565b6200047e565b90508281526020810184848401111562000535576200053462000403565b5b62000542848285620004d3565b509392505050565b600082601f830112620005625762000561620003fe565b5b815162000574848260208601620004ff565b91505092915050565b600060ff82169050919050565b62000595816200057d565b8114620005a157600080fd5b50565b600081519050620005b5816200058a565b92915050565b6000819050919050565b620005d081620005bb565b8114620005dc57600080fd5b50565b600081519050620005f081620005c5565b92915050565b6000806000806000806000806000806101408b8d0312156200061d576200061c620003f4565b5b60008b015167ffffffffffffffff8111156200063e576200063d620003f9565b5b6200064c8d828e016200054a565b9a505060208b015167ffffffffffffffff81111562000670576200066f620003f9565b5b6200067e8d828e016200054a565b9950506040620006918d828e01620005a4565b9850506060620006a48d828e01620005df565b9750506080620006b78d828e01620005df565b96505060a0620006ca8d828e01620005df565b95505060c0620006dd8d828e01620005df565b94505060e0620006f08d828e01620005df565b935050610100620007048d828e01620005df565b925050610120620007188d828e01620005df565b9150509295989b9194979a5092959850565b600082825260208201905092915050565b7f446563696d616c73206d757374206265206265747765656e203020616e64203160008201527f3800000000000000000000000000000000000000000000000000000000000000602082015250565b6000620007996021836200072a565b9150620007a6826200073b565b604082019050919050565b60006020820190508181036000830152620007cc816200078a565b9050919050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200082657607f821691505b6020821081036200083c576200083b620007de565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620008a67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000867565b620008b2868362000867565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620008f5620008ef620008e984620005bb565b620008ca565b620005bb565b9050919050565b6000819050919050565b6200091183620008d4565b620009296200092082620008fc565b84845462000874565b825550505050565b600090565b6200094062000931565b6200094d81848462000906565b505050565b5b8181101562000975576200096960008262000936565b60018101905062000953565b5050565b601f821115620009c4576200098e8162000842565b620009998462000857565b81016020851015620009a9578190505b620009c1620009b88562000857565b83018262000952565b50505b505050565b600082821c905092915050565b6000620009e960001984600802620009c9565b1980831691505092915050565b600062000a048383620009d6565b9150826002028217905092915050565b62000a1f82620007d3565b67ffffffffffffffff81111562000a3b5762000a3a62000419565b5b62000a4782546200080d565b62000a5482828562000979565b600060209050601f83116001811462000a8c576000841562000a77578287015190505b62000a838582620009f6565b86555062000af3565b601f19841662000a9c8662000842565b60005b8281101562000ac65784890151825560018201915060208501945060208101905062000a9f565b8683101562000ae6578489015162000ae2601f891682620009d6565b8355505b6001600288020188555050505b505050505050565b7f53756d206f6620746f74616c20737570706c696573206d757374206e6f74206560008201527f7863656564206d61784d696e7400000000000000000000000000000000000000602082015250565b600062000b59602d836200072a565b915062000b668262000afb565b604082019050919050565b6000602082019050818103600083015262000b8c8162000b4a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000bcf82620005bb565b915062000bdc83620005bb565b925082820190508082111562000bf75762000bf662000b93565b5b92915050565b61559f8062000c0d6000396000f3fe608060405234801561001057600080fd5b50600436106102535760003560e01c80636fecc24911610146578063ab743cbd116100c3578063c4bc5da511610087578063c4bc5da5146106c7578063d435c846146106d1578063d7ff0714146106ef578063db2e21bc14610724578063dd62ed3e1461072e578063fb77cd9d1461075e57610253565b8063ab743cbd14610621578063af5734c214610651578063b1b0d05f1461066d578063b1fd292d1461068b578063ba3403f3146106a957610253565b806383df03061161010a57806383df03061461058f578063925274d2146105ad578063a0712d68146105b7578063a9059cbb146105d3578063aab7c2541461060357610253565b80636fecc249146104d557806370a08231146105055780637342b477146105355780637824407f146105515780637a5d7b271461057157610253565b80634f8dc7a1116101d45780635c086e3d116101985780635c086e3d146104375780635c6581651461045f5780635c8f98231461048f5780635c975abb146104ad578063699b3379146104cb57610253565b80634f8dc7a11461038e57806351769d29146103ac57806351d11b6f146103c857806353bc93e9146103f857806353e8a5501461041657610253565b8063320076051161021b578063320076051461030e57806342966c681461032c578063439766ce146103485780634711255b1461035257806347893a131461037057610253565b806301b1473514610258578063095ea7b31461027457806319a65041146102a457806327e235e3146102c05780632e1a7d4d146102f2575b600080fd5b610272600480360381019061026d9190613f6d565b61077a565b005b61028e6004803603810190610289919061402e565b6108c6565b60405161029b919061407d565b60405180910390f35b6102be60048036038101906102b991906140d6565b610a2e565b005b6102da60048036038101906102d59190614116565b611096565b6040516102e993929190614152565b60405180910390f35b61030c60048036038101906103079190614189565b6110c0565b005b610316611224565b60405161032391906141b6565b60405180910390f35b61034660048036038101906103419190614189565b611231565b005b6103506116ab565b005b61035a6117d7565b604051610367919061407d565b60405180910390f35b610378611884565b60405161038591906141b6565b60405180910390f35b610396611891565b6040516103a3919061407d565b60405180910390f35b6103c660048036038101906103c19190614189565b61193e565b005b6103e260048036038101906103dd9190614116565b6119de565b6040516103ef919061407d565b60405180910390f35b6104006119fe565b60405161040d91906141e0565b60405180910390f35b61041e611a2b565b60405161042e94939291906141fb565b60405180910390f35b61043f611ac9565b6040516104569b9a999897969594939291906142ec565b60405180910390f35b610479600480360381019061047491906143a5565b611c55565b60405161048691906141b6565b60405180910390f35b610497611c7a565b6040516104a491906141e0565b60405180910390f35b6104b5611ca7565b6040516104c2919061407d565b60405180910390f35b6104d3611cba565b005b6104ef60048036038101906104ea91906140d6565b611dc8565b6040516104fc919061407d565b60405180910390f35b61051f600480360381019061051a9190614116565b612063565b60405161052c91906141b6565b60405180910390f35b61054f600480360381019061054a9190614116565b6120af565b005b610559612189565b60405161056893929190614152565b60405180910390f35b6105796121a1565b60405161058691906141b6565b60405180910390f35b6105976121ae565b6040516105a491906141e0565b60405180910390f35b6105b56121db565b005b6105d160048036038101906105cc9190614189565b6122e9565b005b6105ed60048036038101906105e8919061402e565b612a3f565b6040516105fa919061407d565b60405180910390f35b61060b612d65565b60405161061891906141b6565b60405180910390f35b61063b60048036038101906106369190614411565b612e05565b604051610648919061407d565b60405180910390f35b61066b60048036038101906106669190614116565b61344f565b005b610675613529565b604051610682919061407d565b60405180910390f35b6106936135d6565b6040516106a091906141b6565b60405180910390f35b6106b1613676565b6040516106be91906141b6565b60405180910390f35b6106cf613716565b005b6106d9613841565b6040516106e691906141b6565b60405180910390f35b61070960048036038101906107049190614189565b6138e1565b60405161071b96959493929190614464565b60405180910390f35b61072c613a6d565b005b610748600480360381019061074391906143a5565b613bdf565b60405161075591906141b6565b60405180910390f35b61077860048036038101906107739190614116565b613c66565b005b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461080d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108049061451f565b60405180910390fd5b600a60009054906101000a900460ff161561085d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108549061458b565b60405180910390fd5b80600160080160026101000a81548160ff0219169083151502179055507f9ad0ab9b56aa33bad057df0c34e4a8c8dcef1ecfc49adaff5d11a014f6f2fbde600160080160029054906101000a900460ff166040516108bb919061407d565b60405180910390a150565b6000600a60009054906101000a900460ff1615610918576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090f9061458b565b60405180910390fd5b81601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516109f691906141b6565b60405180910390a3610a2433848460006040518060600160405280602581526020016154e860259139613d56565b6001905092915050565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ac1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab89061451f565b60405180910390fd5b600a60009054906101000a900460ff1615610b11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b089061458b565b60405180910390fd5b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610b8f57610b8181600f60000154613d4090919063ffffffff16565b600f60000181905550610cc8565b600b60020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610c0d57610bff81600f60010154613d4090919063ffffffff16565b600f60010181905550610cc7565b600b60030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610c8b57610c7d81600f60020154613d4090919063ffffffff16565b600f60020181905550610cc6565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cbd906145f7565b60405180910390fd5b5b5b600160050154610d02600f60020154610cf4600f60010154600f60000154613d4090919063ffffffff16565b613d4090919063ffffffff16565b1115610d43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3a90614689565b60405180910390fd5b600060016005015411610d8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d82906146f5565b60405180910390fd5b600160050154610da982600160040154613d4090919063ffffffff16565b1115610dea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de190614761565b60405180910390fd5b610e0281600160030154613d4090919063ffffffff16565b6001600301819055506001600401546001600301541015610e58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4f906147cd565b60405180910390fd5b610e7081600160040154613d4090919063ffffffff16565b600160040181905550806001600401541015610ec1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb890614839565b60405180910390fd5b610f1681601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154613d4090919063ffffffff16565b601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555080601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015610fe1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd8906148a5565b60405180910390fd5b61102c600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16338360016040518060600160405280602f815260200161550d602f9139613d56565b8173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161108a91906141b6565b60405180910390a35050565b60146020528060005260406000206000915090508060000154908060010154908060020154905083565b600a60009054906101000a900460ff1615611110576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111079061458b565b60405180910390fd5b611118613ec1565b61112133612063565b811115611163576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115a90614911565b60405180910390fd5b600081116111a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119d906149a3565b60405180910390fd5b6111e933338360016040518060400160405280600f81526020017f576974686472657720416d6f756e740000000000000000000000000000000000815250613d56565b611218600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682612a3f565b50611221613f10565b50565b6000600160070154905090565b600a60009054906101000a900460ff1615611281576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112789061458b565b60405180910390fd5b611289613ec1565b6000600f6000015490506000600f6001015490506000600f600201549050600160080160009054906101000a900460ff16806112d45750600160080160019054906101000a900460ff165b156112f3576112ec8484613f1a90919063ffffffff16565b925061132e565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132590614a0f565b60405180910390fd5b6000611355826113478587613d4090919063ffffffff16565b613d4090919063ffffffff16565b11611395576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138c90614aa1565b60405180910390fd5b82600f6000018190555081600f6001018190555080600f6002018190555083601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101580156114055750600084115b611444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143b90614b0d565b60405180910390fd5b600160080160009054906101000a900460ff16806114715750600160080160019054906101000a900460ff165b6114b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a790614b79565b60405180910390fd5b6001600601548411156114f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ef90614c0b565b60405180910390fd5b83601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825461154a9190614c5a565b92505081905550600160080160009054906101000a900460ff16156115c257836001600301600082825461157e9190614c5a565b92505081905550836001600401600082825461159a9190614c5a565b9250508190555083600160050160008282546115b69190614c5a565b9250508190555061165a565b600160080160019054906101000a900460ff1615611659578360146000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546116519190614c8e565b925050819055505b5b61169d33338660016040518060400160405280601581526020017f4f776e6572206275726e7320616e20416d6f756e740000000000000000000000815250613d56565b5050506116a8613f10565b50565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461173e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117359061451f565b60405180910390fd5b600a60009054906101000a900460ff161561178e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178590614d0e565b60405180910390fd5b6001600a60006101000a81548160ff0219169083151502179055507fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26760405160405180910390a1565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461186c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118639061451f565b60405180910390fd5b600160080160029054906101000a900460ff16905090565b6000600160050154905090565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191d9061451f565b60405180910390fd5b600160080160019054906101000a900460ff16905090565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c89061451f565b60405180910390fd5b8060016006018190555050565b60166020528060005260406000206000915054906101000a900460ff1681565b6000600b60030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b8060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905084565b6001806000018054611ada90614d5d565b80601f0160208091040260200160405190810160405280929190818152602001828054611b0690614d5d565b8015611b535780601f10611b2857610100808354040283529160200191611b53565b820191906000526020600020905b815481529060010190602001808311611b3657829003601f168201915b505050505090806001018054611b6890614d5d565b80601f0160208091040260200160405190810160405280929190818152602001828054611b9490614d5d565b8015611be15780601f10611bb657610100808354040283529160200191611be1565b820191906000526020600020905b815481529060010190602001808311611bc457829003601f168201915b5050505050908060020160009054906101000a900460ff16908060030154908060040154908060050154908060060154908060070154908060080160009054906101000a900460ff16908060080160019054906101000a900460ff16908060080160029054906101000a900460ff1690508b565b6015602052816000526040600020602052806000526040600020600091509150505481565b6000600b60020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600a60009054906101000a900460ff1681565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d449061451f565b60405180910390fd5b600160080160009054906101000a900460ff1615600160080160006101000a81548160ff0219169083151502179055507fa57aaa0e1c1a5192e37bb7df210dde262c0a33adddafe64ac95d92c234f21b84600160080160009054906101000a900460ff16604051611dbe919061407d565b60405180910390a1565b6000600a60009054906101000a900460ff1615611e1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e119061458b565b60405180910390fd5b611e22613ec1565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611eb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eac9061451f565b60405180910390fd5b601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611f41576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3890614e00565b60405180910390fd5b600160080160029054906101000a900460ff16611f93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f8a90614e92565b60405180910390fd5b611f9d8383610a2e565b8273ffffffffffffffffffffffffffffffffffffffff167f03e022611205c90a10d8dff1dfee6ab489cb203224db93f0aac770593a18f7c783604051611fe391906141b6565b60405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161204991906141b6565b60405180910390a36001905061205d613f10565b92915050565b6000601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612142576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121399061451f565b60405180910390fd5b80600b60030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600f8060000154908060010154908060020154905083565b6000600160040154905090565b6000600b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461226e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122659061451f565b60405180910390fd5b600160080160019054906101000a900460ff1615600160080160016101000a81548160ff0219169083151502179055507f686f0c7f6d8e01452f4f5ee535c3887502f9b7d6f97e6d62addb416bc97160a7600160080160019054906101000a900460ff166040516122df919061407d565b60405180910390a1565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461237c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123739061451f565b60405180910390fd5b600a60009054906101000a900460ff16156123cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123c39061458b565b60405180910390fd5b6000600f6000015490506000600f6001015490506000600f600201549050600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff160361245c576124558484613d4090919063ffffffff16565b925061257d565b600b60020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16036124ce576124c78483613d4090919063ffffffff16565b915061257c565b600b60030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603612540576125398482613d4090919063ffffffff16565b905061257b565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612572906145f7565b60405180910390fd5b5b5b6001600501546125a88261259a8587613d4090919063ffffffff16565b613d4090919063ffffffff16565b11156125e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e090614689565b60405180910390fd5b82600f6000018190555081600f6001018190555080600f6002018190555060006001600501541161264f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612646906146f5565b60405180910390fd5b60016005015461266d85600160040154613d4090919063ffffffff16565b11156126ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126a590614761565b60405180910390fd5b60003a90506402540be4008110156126c9576402540be40090505b60005a905061c3508111156126de5761c35090505b6126f686600160030154613d4090919063ffffffff16565b600160030181905550600160040154600160030154101561274c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612743906147cd565b60405180910390fd5b61276486600160040154613d4090919063ffffffff16565b6001600401819055508560016004015410156127b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127ac90614839565b60405180910390fd5b61282f8660146000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154613d4090919063ffffffff16565b60146000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508560146000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015612944576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161293b90614efe565b60405180910390fd5b6129ac600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16338860006040518060400160405280601481526020017f436c69656e74204d696e74656420416d6f756e74000000000000000000000000815250613d56565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef88604051612a2f91906141b6565b60405180910390a3505050505050565b6000612a49613ec1565b600a60009054906101000a900460ff1615612a99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a909061458b565b60405180910390fd5b81601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410158015612aeb5750600082115b612b2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b2190614b0d565b60405180910390fd5b81601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254612b7c9190614c8e565b9250508190555081601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254612bd59190614c5a565b92505081905550601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612c86576001601660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b612cee600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16848460006040518060400160405280601a81526020017f5472616e7366657220746f20436c69656e742057616c6c6c6574000000000000815250613d56565b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612d4b91906141b6565b60405180910390a360019050612d5f613f10565b92915050565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612dfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612df19061451f565b60405180910390fd5b600f60020154905090565b6000600a60009054906101000a900460ff1615612e57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e4e9061458b565b60405180910390fd5b612e5f613ec1565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ee99061451f565b60405180910390fd5b601660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612f7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f7590614f90565b60405180910390fd5b600160080160029054906101000a900460ff16612fd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fc790614e92565b60405180910390fd5b60018260ff16036130ca5782601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015801561302d5750600083115b61306c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161306390615022565b60405180910390fd5b82601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546130be9190614c5a565b925050819055506132fb565b60028260ff16036131c45782601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154101580156131275750600083115b613166576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161315d90615022565b60405180910390fd5b82601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008282546131b89190614c5a565b925050819055506132fa565b60038260ff16036132be5782601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154101580156132215750600083115b613260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161325790615022565b60405180910390fd5b82601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008282546132b29190614c5a565b925050819055506132f9565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132f09061508e565b60405180910390fd5b5b5b61331383600160030154613f1a90919063ffffffff16565b60016003018190555061333483600160040154613f1a90919063ffffffff16565b600160040181905550613388600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16338560016040518060600160405280602e815260200161553c602e9139613d56565b8373ffffffffffffffffffffffffffffffffffffffff167f90040ab1e0bb22fdb6583df6b5990016fb1ea3e98333d86aeb53101b9e1a5e48846040516133ce91906141b6565b60405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161343491906141b6565b60405180910390a360019050613448613f10565b9392505050565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146134e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134d99061451f565b60405180910390fd5b80600b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146135be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135b59061451f565b60405180910390fd5b600160080160009054906101000a900460ff16905090565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461366b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136629061451f565b60405180910390fd5b600f60010154905090565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461370b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137029061451f565b60405180910390fd5b600f60000154905090565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146137a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137a09061451f565b60405180910390fd5b600a60009054906101000a900460ff166137f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137ef906150fa565b60405180910390fd5b6000600a60006101000a81548160ff0219169083151502179055507fab5f6dacf93a267a93a533de8a56370de8341bbd8102017307e7be375c3dda6a60405160405180910390a1565b6000600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146138d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138cd9061451f565b60405180910390fd5b600160030154905090565b60136020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600201805461395090614d5d565b80601f016020809104026020016040519081016040528092919081815260200182805461397c90614d5d565b80156139c95780601f1061399e576101008083540402835291602001916139c9565b820191906000526020600020905b8154815290600101906020018083116139ac57829003601f168201915b5050505050908060030180546139de90614d5d565b80601f0160208091040260200160405190810160405280929190818152602001828054613a0a90614d5d565b8015613a575780601f10613a2c57610100808354040283529160200191613a57565b820191906000526020600020905b815481529060010190602001808311613a3a57829003601f168201915b5050505050908060040154908060050154905086565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613b00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613af79061451f565b60405180910390fd5b6000613b30600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612063565b905060008111613b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613b6c90615166565b60405180910390fd5b613ba4600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682612a3f565b507fcbba13897c2ac3f7fdb11e857b1a5a5c47f51e3fbeffa74d430f2b06177b45c081604051613bd491906141b6565b60405180910390a150565b6000601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613cf9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613cf09061451f565b60405180910390fd5b80600b60020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008183613d4e9190614c8e565b905092915050565b60006013600060125481526020019081526020016000209050858160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550848160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081816002019081613e069190615361565b5082613e47576040518060400160405280600581526020017f66616c7365000000000000000000000000000000000000000000000000000000815250613e7e565b6040518060400160405280600481526020017f74727565000000000000000000000000000000000000000000000000000000008152505b816003019081613e8e9190615361565b5083816004018190555042816005018190555060126000815480929190613eb490615433565b9190505550505050505050565b600260005403613f06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613efd906154c7565b60405180910390fd5b6002600081905550565b6001600081905550565b60008183613f289190614c5a565b905092915050565b600080fd5b60008115159050919050565b613f4a81613f35565b8114613f5557600080fd5b50565b600081359050613f6781613f41565b92915050565b600060208284031215613f8357613f82613f30565b5b6000613f9184828501613f58565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613fc582613f9a565b9050919050565b613fd581613fba565b8114613fe057600080fd5b50565b600081359050613ff281613fcc565b92915050565b6000819050919050565b61400b81613ff8565b811461401657600080fd5b50565b60008135905061402881614002565b92915050565b6000806040838503121561404557614044613f30565b5b600061405385828601613fe3565b925050602061406485828601614019565b9150509250929050565b61407781613f35565b82525050565b6000602082019050614092600083018461406e565b92915050565b60006140a382613f9a565b9050919050565b6140b381614098565b81146140be57600080fd5b50565b6000813590506140d0816140aa565b92915050565b600080604083850312156140ed576140ec613f30565b5b60006140fb858286016140c1565b925050602061410c85828601614019565b9150509250929050565b60006020828403121561412c5761412b613f30565b5b600061413a84828501613fe3565b91505092915050565b61414c81613ff8565b82525050565b60006060820190506141676000830186614143565b6141746020830185614143565b6141816040830184614143565b949350505050565b60006020828403121561419f5761419e613f30565b5b60006141ad84828501614019565b91505092915050565b60006020820190506141cb6000830184614143565b92915050565b6141da81613fba565b82525050565b60006020820190506141f560008301846141d1565b92915050565b600060808201905061421060008301876141d1565b61421d60208301866141d1565b61422a60408301856141d1565b61423760608301846141d1565b95945050505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561427a57808201518184015260208101905061425f565b60008484015250505050565b6000601f19601f8301169050919050565b60006142a282614240565b6142ac818561424b565b93506142bc81856020860161425c565b6142c581614286565b840191505092915050565b600060ff82169050919050565b6142e6816142d0565b82525050565b6000610160820190508181036000830152614307818e614297565b9050818103602083015261431b818d614297565b905061432a604083018c6142dd565b614337606083018b614143565b614344608083018a614143565b61435160a0830189614143565b61435e60c0830188614143565b61436b60e0830187614143565b61437961010083018661406e565b61438761012083018561406e565b61439561014083018461406e565b9c9b505050505050505050505050565b600080604083850312156143bc576143bb613f30565b5b60006143ca85828601613fe3565b92505060206143db85828601613fe3565b9150509250929050565b6143ee816142d0565b81146143f957600080fd5b50565b60008135905061440b816143e5565b92915050565b60008060006060848603121561442a57614429613f30565b5b6000614438868287016140c1565b935050602061444986828701614019565b925050604061445a868287016143fc565b9150509250925092565b600060c08201905061447960008301896141d1565b61448660208301886141d1565b81810360408301526144988187614297565b905081810360608301526144ac8186614297565b90506144bb6080830185614143565b6144c860a0830184614143565b979650505050505050565b7f416363657373207265737472696374656420746f206f776e6572206f6e6c7900600082015250565b6000614509601f8361424b565b9150614514826144d3565b602082019050919050565b60006020820190508181036000830152614538816144fc565b9050919050565b7f436f6e7472616374206973207061757365640000000000000000000000000000600082015250565b600061457560128361424b565b91506145808261453f565b602082019050919050565b600060208201905081810360008301526145a481614568565b9050919050565b7f496e76616c6964206d696e7420736f7572636500000000000000000000000000600082015250565b60006145e160138361424b565b91506145ec826145ab565b602082019050919050565b60006020820190508181036000830152614610816145d4565b9050919050565b7f53756d206f6620746f74616c20737570706c696573206d757374206e6f74206560008201527f7863656564206d61784d696e7400000000000000000000000000000000000000602082015250565b6000614673602d8361424b565b915061467e82614617565b604082019050919050565b600060208201905081810360008301526146a281614666565b9050919050565b7f4d6178696d756d206d696e7420616d6f756e74206e6f74207365740000000000600082015250565b60006146df601b8361424b565b91506146ea826146a9565b602082019050919050565b6000602082019050818103600083015261470e816146d2565b9050919050565b7f45786365656473206d6178696d756d206d696e7420616d6f756e740000000000600082015250565b600061474b601b8361424b565b915061475682614715565b602082019050919050565b6000602082019050818103600083015261477a8161473e565b9050919050565b7f546f74616c20737570706c79206f766572666c6f770000000000000000000000600082015250565b60006147b760158361424b565b91506147c282614781565b602082019050919050565b600060208201905081810360008301526147e6816147aa565b9050919050565b7f4d696e74656420737570706c79206f766572666c6f7700000000000000000000600082015250565b600061482360168361424b565b915061482e826147ed565b602082019050919050565b6000602082019050818103600083015261485281614816565b9050919050565b7f526563697069656e742062616c616e6365206f766572666c6f77000000000000600082015250565b600061488f601a8361424b565b915061489a82614859565b602082019050919050565b600060208201905081810360008301526148be81614882565b9050919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b60006148fb60148361424b565b9150614906826148c5565b602082019050919050565b6000602082019050818103600083015261492a816148ee565b9050919050565b7f5769746864726177616c20616d6f756e74206d7573742062652067726561746560008201527f72207468616e207a65726f000000000000000000000000000000000000000000602082015250565b600061498d602b8361424b565b915061499882614931565b604082019050919050565b600060208201905081810360008301526149bc81614980565b9050919050565b7f496e76616c6964206275726e20736f7572636500000000000000000000000000600082015250565b60006149f960138361424b565b9150614a04826149c3565b602082019050919050565b60006020820190508181036000830152614a28816149ec565b9050919050565b7f53756d206f6620746f74616c20737570706c696573206d757374206e6f74206260008201527f652062656c6f77207a65726f0000000000000000000000000000000000000000602082015250565b6000614a8b602c8361424b565b9150614a9682614a2f565b604082019050919050565b60006020820190508181036000830152614aba81614a7e565b9050919050565b7f4e6f7420656e6f7567682062616c616e63650000000000000000000000000000600082015250565b6000614af760128361424b565b9150614b0282614ac1565b602082019050919050565b60006020820190508181036000830152614b2681614aea565b9050919050565b7f4275726e696e6720746f6b656e73206973206e6f7420616c6c6f776564000000600082015250565b6000614b63601d8361424b565b9150614b6e82614b2d565b602082019050919050565b60006020820190508181036000830152614b9281614b56565b9050919050565b7f4275726e20616d6f756e74206578636565647320746865206275726e206c696d60008201527f6974000000000000000000000000000000000000000000000000000000000000602082015250565b6000614bf560228361424b565b9150614c0082614b99565b604082019050919050565b60006020820190508181036000830152614c2481614be8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614c6582613ff8565b9150614c7083613ff8565b9250828203905081811115614c8857614c87614c2b565b5b92915050565b6000614c9982613ff8565b9150614ca483613ff8565b9250828201905080821115614cbc57614cbb614c2b565b5b92915050565b7f436f6e747261637420697320616c726561647920706175736564000000000000600082015250565b6000614cf8601a8361424b565b9150614d0382614cc2565b602082019050919050565b60006020820190508181036000830152614d2781614ceb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614d7557607f821691505b602082108103614d8857614d87614d2e565b5b50919050565b7f41646472657373206e6f7420617574686f72697a656420666f7220737065636960008201527f616c206d696e7400000000000000000000000000000000000000000000000000602082015250565b6000614dea60278361424b565b9150614df582614d8e565b604082019050919050565b60006020820190508181036000830152614e1981614ddd565b9050919050565b7f436f6e76657273696f6e2f5472616e736665722066756e6374696f6e2069732060008201527f6e6f7420616c6c6f776564000000000000000000000000000000000000000000602082015250565b6000614e7c602b8361424b565b9150614e8782614e20565b604082019050919050565b60006020820190508181036000830152614eab81614e6f565b9050919050565b7f4f776e65722062616c616e6365206f766572666c6f7700000000000000000000600082015250565b6000614ee860168361424b565b9150614ef382614eb2565b602082019050919050565b60006020820190508181036000830152614f1781614edb565b9050919050565b7f4e6f7420617574686f72697a656420746f2063616c6c207370656369616c427560008201527f726e2066756e6374696f6e000000000000000000000000000000000000000000602082015250565b6000614f7a602b8361424b565b9150614f8582614f1e565b604082019050919050565b60006020820190508181036000830152614fa981614f6d565b9050919050565b7f4e6f7420656e6f7567682062616c616e636520666f72207472616e736665722f60008201527f6272696467696e67000000000000000000000000000000000000000000000000602082015250565b600061500c60288361424b565b915061501782614fb0565b604082019050919050565b6000602082019050818103600083015261503b81614fff565b9050919050565b7f496e76616c696420636861696e206e756d626572000000000000000000000000600082015250565b600061507860148361424b565b915061508382615042565b602082019050919050565b600060208201905081810360008301526150a78161506b565b9050919050565b7f436f6e7472616374206973206e6f742070617573656400000000000000000000600082015250565b60006150e460168361424b565b91506150ef826150ae565b602082019050919050565b60006020820190508181036000830152615113816150d7565b9050919050565b7f4e6f2066756e647320746f207769746864726177000000000000000000000000600082015250565b600061515060148361424b565b915061515b8261511a565b602082019050919050565b6000602082019050818103600083015261517f81615143565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026152177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826151da565b61522186836151da565b95508019841693508086168417925050509392505050565b6000819050919050565b600061525e61525961525484613ff8565b615239565b613ff8565b9050919050565b6000819050919050565b61527883615243565b61528c61528482615265565b8484546151e7565b825550505050565b600090565b6152a1615294565b6152ac81848461526f565b505050565b5b818110156152d0576152c5600082615299565b6001810190506152b2565b5050565b601f821115615315576152e6816151b5565b6152ef846151ca565b810160208510156152fe578190505b61531261530a856151ca565b8301826152b1565b50505b505050565b600082821c905092915050565b60006153386000198460080261531a565b1980831691505092915050565b60006153518383615327565b9150826002028217905092915050565b61536a82614240565b67ffffffffffffffff81111561538357615382615186565b5b61538d8254614d5d565b6153988282856152d4565b600060209050601f8311600181146153cb57600084156153b9578287015190505b6153c38582615345565b86555061542b565b601f1984166153d9866151b5565b60005b82811015615401578489015182556001820191506020850194506020810190506153dc565b8683101561541e578489015161541a601f891682615327565b8355505b6001600288020188555050505b505050505050565b600061543e82613ff8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036154705761546f614c2b565b5b600182019050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b60006154b1601f8361424b565b91506154bc8261547b565b602082019050919050565b600060208201905081810360008301526154e0816154a4565b905091905056fe436c69656e7420617070726f766573205370656e64657220666f7220616e20416d6f756e74436c69656e74205365636f6e64205374616765206f6620436f6e76657273696f6e20284d696e742920416d6f756e74436c69656e74204669727374205374616765206f6620436f6e76657273696f6e20284275726e2920416d6f756e74a264697066735822122078cae8e1872628228eeb9d49a8def8a0ef2d4857fa9f6a7db68b4984fd3076d664736f6c6343000812003300000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000001312d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045cf180000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000052c768000000000000000000000000000000000000000000000000000000000000000553706f7a7a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000453505a5a00000000000000000000000000000000000000000000000000000000