60c060405234801561000f575f80fd5b5060405161362938038061362983398181016040528101906100319190610329565b816005908161004091906105d2565b50806006908161005091906105d2565b503360075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050505050506106a1565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6101bc82610193565b9050919050565b6101cc816101b2565b81146101d6575f80fd5b50565b5f815190506101e7816101c3565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61023b826101f5565b810181811067ffffffffffffffff8211171561025a57610259610205565b5b80604052505050565b5f61026c610182565b90506102788282610232565b919050565b5f67ffffffffffffffff82111561029757610296610205565b5b6102a0826101f5565b9050602081019050919050565b8281835e5f83830152505050565b5f6102cd6102c88461027d565b610263565b9050828152602081018484840111156102e9576102e86101f1565b5b6102f48482856102ad565b509392505050565b5f82601f8301126103105761030f6101ed565b5b81516103208482602086016102bb565b91505092915050565b5f805f80608085870312156103415761034061018b565b5b5f61034e878288016101d9565b945050602061035f878288016101d9565b935050604085015167ffffffffffffffff8111156103805761037f61018f565b5b61038c878288016102fc565b925050606085015167ffffffffffffffff8111156103ad576103ac61018f565b5b6103b9878288016102fc565b91505092959194509250565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061041357607f821691505b602082108103610426576104256103cf565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026104887fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261044d565b610492868361044d565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104d66104d16104cc846104aa565b6104b3565b6104aa565b9050919050565b5f819050919050565b6104ef836104bc565b6105036104fb826104dd565b848454610459565b825550505050565b5f90565b61051761050b565b6105228184846104e6565b505050565b5b818110156105455761053a5f8261050f565b600181019050610528565b5050565b601f82111561058a5761055b8161042c565b6105648461043e565b81016020851015610573578190505b61058761057f8561043e565b830182610527565b50505b505050565b5f82821c905092915050565b5f6105aa5f198460080261058f565b1980831691505092915050565b5f6105c2838361059b565b9150826002028217905092915050565b6105db826103c5565b67ffffffffffffffff8111156105f4576105f3610205565b5b6105fe82546103fc565b610609828285610549565b5f60209050601f83116001811461063a575f8415610628578287015190505b61063285826105b7565b865550610699565b601f1984166106488661042c565b5f5b8281101561066f5784890151825560018201915060208501945060208101905061064a565b8683101561068c5784890151610688601f89168261059b565b8355505b6001600288020188555050505b505050505050565b60805160a051612f3d6106ec5f395f8181610b15015281816111a00152818161148401528181611b2e0152611b5401525f81816107520152818161187601526118e10152612f3d5ff3fe608060405234801561000f575f80fd5b50600436106101ee575f3560e01c806397304ced1161010d578063c01e1bd6116100a0578063e38296e41161006f578063e38296e414610580578063e78cea921461059c578063ee9a31a2146105ba578063f07e96b3146105d8576101ee565b8063c01e1bd61461050a578063c56148fd14610528578063d6c0b2c414610532578063dd62ed3e14610550576101ee565b8063ae1f6aaf116100dc578063ae1f6aaf14610496578063ae4fb922146104b4578063b14f2a39146104d0578063bc7f3b50146104ec576101ee565b806397304ced146104125780639dc29fac1461042e578063a6f9dae11461044a578063a9059cbb14610466576101ee565b8063313ce5671161018557806370a082311161015457806370a082311461038a57806388d695b2146103ba578063893d20e8146103d657806395d89b41146103f4576101ee565b8063313ce567146103165780633b19e84a1461033457806340c10f19146103525780636d1b229d1461036e576101ee565b806318160ddd116101c157806318160ddd1461028e578063237bf361146102ac57806323b872dd146102ca57806326d753f7146102fa576101ee565b806301ffc9a7146101f2578063033964be1461022257806306fdde0314610240578063095ea7b31461025e575b5f80fd5b61020c600480360381019061020791906122d9565b610608565b604051610219919061231e565b60405180910390f35b61022a610750565b6040516102379190612376565b60405180910390f35b610248610774565b60405161025591906123ff565b60405180910390f35b6102786004803603810190610273919061247c565b610804565b604051610285919061231e565b60405180910390f35b610296610821565b6040516102a391906124c9565b60405180910390f35b6102b461082a565b6040516102c1919061231e565b60405180910390f35b6102e460048036038101906102df91906124e2565b610925565b6040516102f1919061231e565b60405180910390f35b610314600480360381019061030f9190612568565b61094c565b005b61031e610ae3565b60405161032b91906125c7565b60405180910390f35b61033c610aeb565b6040516103499190612376565b60405180910390f35b61036c6004803603810190610367919061247c565b610b13565b005b610388600480360381019061038391906125e0565b610bfd565b005b6103a4600480360381019061039f919061260b565b610cf0565b6040516103b191906124c9565b60405180910390f35b6103d460048036038101906103cf91906126ec565b610d35565b005b6103de610f0d565b6040516103eb9190612376565b60405180910390f35b6103fc61101b565b60405161040991906123ff565b60405180910390f35b61042c600480360381019061042791906125e0565b6110ab565b005b6104486004803603810190610443919061247c565b61119e565b005b610464600480360381019061045f919061260b565b611288565b005b610480600480360381019061047b919061247c565b611443565b60405161048d919061231e565b60405180910390f35b61049e611481565b6040516104ab9190612376565b60405180910390f35b6104ce60048036038101906104c99190612794565b6114a8565b005b6104ea60048036038101906104e5919061260b565b6115aa565b005b6104f4611765565b6040516105019190612376565b60405180910390f35b610512611873565b60405161051f9190612376565b60405180910390f35b61053061189a565b005b61053a6118de565b6040516105479190612376565b60405180910390f35b61056a600480360381019061056591906127bf565b611905565b60405161057791906124c9565b60405180910390f35b61059a6004803603810190610595919061260b565b611987565b005b6105a4611b2b565b6040516105b19190612376565b60405180910390f35b6105c2611b52565b6040516105cf9190612376565b60405180910390f35b6105f260048036038101906105ed919061260b565b611b76565b6040516105ff91906124c9565b60405180910390f35b5f807f01ffc9a70000000000000000000000000000000000000000000000000000000090505f7f1d1d8b630000000000000000000000000000000000000000000000000000000090505f7fec4fc8e3000000000000000000000000000000000000000000000000000000009050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106fe5750817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107465750807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9350505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600580546107839061282a565b80601f01602080910402602001604051908101604052809291908181526020018280546107af9061282a565b80156107fa5780601f106107d1576101008083540402835291602001916107fa565b820191905f5260205f20905b8154815290600101906020018083116107dd57829003601f168201915b5050505050905090565b5f803390506108168185856001611c14565b600191505092915050565b5f600454905090565b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806108d2575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610911576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610908906128a4565b60405180910390fd5b60035f9054906101000a900460ff16905090565b5f80339050610935858285611de3565b610940858585611e75565b60019150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036109ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b190612932565b60405180910390fd5b60648160ff161115610a01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f8906129c0565b60405180910390fd5b5f8160ff16606484610a139190612a38565b610a1d9190612a68565b9050610a34848285610a2f9190612aa9565b611443565b610a73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6a90612b26565b60405180910390fd5b610a9e60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682611443565b610add576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad490612bb4565b60405180910390fd5b50505050565b5f6012905090565b5f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ba1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9890612c42565b60405180910390fd5b610bab8282611f65565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610bf191906124c9565b60405180910390a25050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ca4575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610ce3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cda906128a4565b60405180910390fd5b610ced3382611fe4565b50565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ddc575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610e1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e12906128a4565b60405180910390fd5b818190508484905014610e63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5a90612cd0565b60405180910390fd5b5f5b84849050811015610f0657610eba858583818110610e8657610e85612cee565b5b9050602002016020810190610e9b919061260b565b848484818110610eae57610ead612cee565b5b90506020020135611443565b610ef9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef090612d8b565b60405180910390fd5b8080600101915050610e65565b5050505050565b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fb5575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610ff4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610feb906128a4565b60405180910390fd5b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606006805461102a9061282a565b80601f01602080910402602001604051908101604052809291908181526020018280546110569061282a565b80156110a15780601f10611078576101008083540402835291602001916110a1565b820191905f5260205f20905b81548152906001019060200180831161108457829003601f168201915b5050505050905090565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611152575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b611191576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611188906128a4565b60405180910390fd5b61119b3382611f65565b50565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461122c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122390612c42565b60405180910390fd5b6112368282611fe4565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405161127c91906124c9565b60405180910390a25050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611317576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130e90612df3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611385576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137c90612e81565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a38060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f803390506001151560035f9054906101000a900460ff1615150361146b5761146a61189a565b5b611476818585611e75565b600191505092915050565b5f7f0000000000000000000000000000000000000000000000000000000000000000905090565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061154f575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61158e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611585906128a4565b60405180910390fd5b8060035f6101000a81548160ff02191690831515021790555050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611639576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163090612df3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036116a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169e90612e81565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a60405160405180910390a38060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061180d575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61184c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611843906128a4565b60405180910390fd5b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f7f0000000000000000000000000000000000000000000000000000000000000000905090565b4260025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550565b5f7f0000000000000000000000000000000000000000000000000000000000000000905090565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611a2e575060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b611a6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a64906128a4565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f6ee10e9ed4d6ce9742703a498707862f4b00f1396a87195eb93267b3d798398160405160405180910390a38060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f7f0000000000000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f8060025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414611c0b5760025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205442611c049190612aa9565b9050611c0f565b5f90505b919050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611c84575f6040517fe602df05000000000000000000000000000000000000000000000000000000008152600401611c7b9190612376565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611cf4575f6040517f94280d62000000000000000000000000000000000000000000000000000000008152600401611ceb9190612376565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508015611ddd578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051611dd491906124c9565b60405180910390a35b50505050565b5f611dee8484611905565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611e6f5781811015611e60578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401611e5793929190612e9f565b60405180910390fd5b611e6e84848484035f611c14565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611ee5575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401611edc9190612376565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f55575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401611f4c9190612376565b60405180910390fd5b611f60838383612063565b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611fd5575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401611fcc9190612376565b60405180910390fd5b611fe05f8383612063565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612054575f6040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161204b9190612376565b60405180910390fd5b61205f825f83612063565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036120b3578060045f8282546120a79190612ed4565b92505081905550612181565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561213c578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161213393929190612e9f565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036121c8578060045f8282540392505081905550612212565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161226f91906124c9565b60405180910390a3505050565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6122b881612284565b81146122c2575f80fd5b50565b5f813590506122d3816122af565b92915050565b5f602082840312156122ee576122ed61227c565b5b5f6122fb848285016122c5565b91505092915050565b5f8115159050919050565b61231881612304565b82525050565b5f6020820190506123315f83018461230f565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61236082612337565b9050919050565b61237081612356565b82525050565b5f6020820190506123895f830184612367565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6123d18261238f565b6123db8185612399565b93506123eb8185602086016123a9565b6123f4816123b7565b840191505092915050565b5f6020820190508181035f83015261241781846123c7565b905092915050565b61242881612356565b8114612432575f80fd5b50565b5f813590506124438161241f565b92915050565b5f819050919050565b61245b81612449565b8114612465575f80fd5b50565b5f8135905061247681612452565b92915050565b5f80604083850312156124925761249161227c565b5b5f61249f85828601612435565b92505060206124b085828601612468565b9150509250929050565b6124c381612449565b82525050565b5f6020820190506124dc5f8301846124ba565b92915050565b5f805f606084860312156124f9576124f861227c565b5b5f61250686828701612435565b935050602061251786828701612435565b925050604061252886828701612468565b9150509250925092565b5f60ff82169050919050565b61254781612532565b8114612551575f80fd5b50565b5f813590506125628161253e565b92915050565b5f805f6060848603121561257f5761257e61227c565b5b5f61258c86828701612435565b935050602061259d86828701612468565b92505060406125ae86828701612554565b9150509250925092565b6125c181612532565b82525050565b5f6020820190506125da5f8301846125b8565b92915050565b5f602082840312156125f5576125f461227c565b5b5f61260284828501612468565b91505092915050565b5f602082840312156126205761261f61227c565b5b5f61262d84828501612435565b91505092915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261265757612656612636565b5b8235905067ffffffffffffffff8111156126745761267361263a565b5b6020830191508360208202830111156126905761268f61263e565b5b9250929050565b5f8083601f8401126126ac576126ab612636565b5b8235905067ffffffffffffffff8111156126c9576126c861263a565b5b6020830191508360208202830111156126e5576126e461263e565b5b9250929050565b5f805f80604085870312156127045761270361227c565b5b5f85013567ffffffffffffffff81111561272157612720612280565b5b61272d87828801612642565b9450945050602085013567ffffffffffffffff8111156127505761274f612280565b5b61275c87828801612697565b925092505092959194509250565b61277381612304565b811461277d575f80fd5b50565b5f8135905061278e8161276a565b92915050565b5f602082840312156127a9576127a861227c565b5b5f6127b684828501612780565b91505092915050565b5f80604083850312156127d5576127d461227c565b5b5f6127e285828601612435565b92505060206127f385828601612435565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061284157607f821691505b602082108103612854576128536127fd565b5b50919050565b7f43616c6c6572206973206e6f74206f776e65722f64656c6567617465000000005f82015250565b5f61288e601c83612399565b91506128998261285a565b602082019050919050565b5f6020820190508181035f8301526128bb81612882565b9050919050565b7f526563697069656e742063616e6e6f742062652061207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61291c602283612399565b9150612927826128c2565b604082019050919050565b5f6020820190508181035f83015261294981612910565b9050919050565b7f5461782070657263656e7461676520657175616c73206f722069732061626f765f8201527f6520313030250000000000000000000000000000000000000000000000000000602082015250565b5f6129aa602683612399565b91506129b582612950565b604082019050919050565b5f6020820190508181035f8301526129d78161299e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612a4282612449565b9150612a4d83612449565b925082612a5d57612a5c6129de565b5b828204905092915050565b5f612a7282612449565b9150612a7d83612449565b9250828202612a8b81612449565b91508282048414831517612aa257612aa1612a0b565b5b5092915050565b5f612ab382612449565b9150612abe83612449565b9250828203905081811115612ad657612ad5612a0b565b5b92915050565b7f556e61626c6520746f207472616e7366657220746f20726563657069656e74005f82015250565b5f612b10601f83612399565b9150612b1b82612adc565b602082019050919050565b5f6020820190508181035f830152612b3d81612b04565b9050919050565b7f556e61626c6520746f207472616e736665722074617820746f207472656173755f8201527f7279000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b9e602283612399565b9150612ba982612b44565b604082019050919050565b5f6020820190508181035f830152612bcb81612b92565b9050919050565b7f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c7920627269645f8201527f67652063616e206d696e7420616e64206275726e000000000000000000000000602082015250565b5f612c2c603483612399565b9150612c3782612bd2565b604082019050919050565b5f6020820190508181035f830152612c5981612c20565b9050919050565b7f486f6c646572206c69737420646f6573206e6f74206d6174636820616d6f756e5f8201527f74206c6973740000000000000000000000000000000000000000000000000000602082015250565b5f612cba602683612399565b9150612cc582612c60565b604082019050919050565b5f6020820190508181035f830152612ce781612cae565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f556e61626c6520746f207472616e7366657220746f6b656e20746f20746865205f8201527f6163636f756e7400000000000000000000000000000000000000000000000000602082015250565b5f612d75602783612399565b9150612d8082612d1b565b604082019050919050565b5f6020820190508181035f830152612da281612d69565b9050919050565b7f43616c6c6572206973206e6f74206f776e6572000000000000000000000000005f82015250565b5f612ddd601383612399565b9150612de882612da9565b602082019050919050565b5f6020820190508181035f830152612e0a81612dd1565b9050919050565b7f4e6577206f776e65722063616e6e6f742062652061207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612e6b602283612399565b9150612e7682612e11565b604082019050919050565b5f6020820190508181035f830152612e9881612e5f565b9050919050565b5f606082019050612eb25f830186612367565b612ebf60208301856124ba565b612ecc60408301846124ba565b949350505050565b5f612ede82612449565b9150612ee983612449565b9250828201905080821115612f0157612f00612a0b565b5b9291505056fea26469706673582212204f94a991ece274015ea8d0668a08634b56e2f2386fb6190bed5b17aba3e8724064736f6c634300081900330000000000000000000000004200000000000000000000000000000000000010000000000000000000000000fc169284da39e8d337d01ab011c3e5d92f7ddba6000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000747656e52697a6500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000452495a4500000000000000000000000000000000000000000000000000000000