60806040523480156200001157600080fd5b5060405162003b1938038062003b19833981810160405281019062000037919062000617565b8282816003908051906020019062000051929190620003ca565b5080600490805190602001906200006a929190620003ca565b5050506200008d620000816200018960201b60201c565b6200019160201b60201c565b620000b16000801b620000a56200018960201b60201c565b6200025760201b60201c565b620000f27ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc9620000e66200018960201b60201c565b6200025760201b60201c565b80600890805190602001906200010a929190620003ca565b506001600960016101000a81548160ff0219169083151502179055506001600960026101000a81548160ff0219169083151502179055506001600960036101000a81548160ff02191690831515021790555060006007819055506000600960006101000a81548160ff021916908360ff16021790555050505062000735565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6200026982826200026d60201b60201c565b5050565b6200027f82826200035f60201b60201c565b6200035b5760016006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003006200018960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b828054620003d890620006ff565b90600052602060002090601f016020900481019282620003fc576000855562000448565b82601f106200041757805160ff191683800117855562000448565b8280016001018555821562000448579182015b82811115620004475782518255916020019190600101906200042a565b5b5090506200045791906200045b565b5090565b5b80821115620004765760008160009055506001016200045c565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620004e38262000498565b810181811067ffffffffffffffff82111715620005055762000504620004a9565b5b80604052505050565b60006200051a6200047a565b9050620005288282620004d8565b919050565b600067ffffffffffffffff8211156200054b576200054a620004a9565b5b620005568262000498565b9050602081019050919050565b60005b838110156200058357808201518184015260208101905062000566565b8381111562000593576000848401525b50505050565b6000620005b0620005aa846200052d565b6200050e565b905082815260208101848484011115620005cf57620005ce62000493565b5b620005dc84828562000563565b509392505050565b600082601f830112620005fc57620005fb6200048e565b5b81516200060e84826020860162000599565b91505092915050565b60008060006060848603121562000633576200063262000484565b5b600084015167ffffffffffffffff81111562000654576200065362000489565b5b6200066286828701620005e4565b935050602084015167ffffffffffffffff81111562000686576200068562000489565b5b6200069486828701620005e4565b925050604084015167ffffffffffffffff811115620006b857620006b762000489565b5b620006c686828701620005e4565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200071857607f821691505b602082108114156200072f576200072e620006d0565b5b50919050565b6133d480620007456000396000f3fe608060405234801561001057600080fd5b50600436106102275760003560e01c80638da5cb5b11610130578063a9059cbb116100b8578063dd62ed3e1161007c578063dd62ed3e14610644578063e8a3d48514610674578063f2fde38b14610692578063f87078d0146106ae578063fe6d8124146106ca57610227565b8063a9059cbb146105c6578063c82c8389146105f6578063c8c793fe14610614578063ca281fd91461061e578063d547741f1461062857610227565b806395d89b41116100ff57806395d89b41146105205780639dc29fac1461053e578063a217fddf1461055a578063a457c2d714610578578063a4d66daf146105a857610227565b80638da5cb5b1461048457806391d14854146104a257806394e8b461146104d257806395ab65df1461050257610227565b8063313ce567116101b35780634c783bf5116101825780634c783bf5146104045780636c30d1701461042257806370a082311461042c578063715018a61461045c578063883356d91461046657610227565b8063313ce5671461037e57806336568abe1461039c57806339509351146103b857806340c10f19146103e857610227565b806318160ddd116101fa57806318160ddd146102c657806323b872dd146102e4578063248a9ca3146103145780632f1cae85146103445780632f2ff15d1461036257610227565b806301ffc9a71461022c57806302fe53051461025c57806306fdde0314610278578063095ea7b314610296575b600080fd5b61024660048036038101906102419190612183565b6106e8565b60405161025391906121cb565b60405180910390f35b6102766004803603810190610271919061232c565b610762565b005b61028061078a565b60405161028d91906123fd565b60405180910390f35b6102b060048036038101906102ab91906124b3565b61081c565b6040516102bd91906121cb565b60405180910390f35b6102ce61083f565b6040516102db9190612502565b60405180910390f35b6102fe60048036038101906102f9919061251d565b610849565b60405161030b91906121cb565b60405180910390f35b61032e600480360381019061032991906125a6565b610878565b60405161033b91906125e2565b60405180910390f35b61034c610898565b60405161035991906121cb565b60405180910390f35b61037c600480360381019061037791906125fd565b6108af565b005b6103866108d0565b6040516103939190612659565b60405180910390f35b6103b660048036038101906103b191906125fd565b6108e7565b005b6103d260048036038101906103cd91906124b3565b61096a565b6040516103df91906121cb565b60405180910390f35b61040260048036038101906103fd91906124b3565b6109a1565b005b61040c610a8d565b60405161041991906121cb565b60405180910390f35b61042a610aa4565b005b61044660048036038101906104419190612674565b610acf565b6040516104539190612502565b60405180910390f35b610464610b17565b005b61046e610b2b565b60405161047b91906121cb565b60405180910390f35b61048c610b42565b60405161049991906126b0565b60405180910390f35b6104bc60048036038101906104b791906125fd565b610b6c565b6040516104c991906121cb565b60405180910390f35b6104ec60048036038101906104e7919061251d565b610bd7565b6040516104f991906121cb565b60405180910390f35b61050a610c69565b60405161051791906125e2565b60405180910390f35b610528610c8d565b60405161053591906123fd565b60405180910390f35b610558600480360381019061055391906124b3565b610d1f565b005b610562610da7565b60405161056f91906125e2565b60405180910390f35b610592600480360381019061058d91906124b3565b610dae565b60405161059f91906121cb565b60405180910390f35b6105b0610e25565b6040516105bd9190612502565b60405180910390f35b6105e060048036038101906105db91906124b3565b610e2f565b6040516105ed91906121cb565b60405180910390f35b6105fe610e52565b60405161060b9190612502565b60405180910390f35b61061c610e58565b005b610626610e83565b005b610642600480360381019061063d91906125fd565b610eae565b005b61065e600480360381019061065991906126cb565b610ecf565b60405161066b9190612502565b60405180910390f35b61067c610f56565b60405161068991906123fd565b60405180910390f35b6106ac60048036038101906106a79190612674565b610fe8565b005b6106c860048036038101906106c39190612737565b611078565b005b6106d2611145565b6040516106df91906125e2565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061075b575061075a82611169565b5b9050919050565b6000801b61076f816111d3565b8160089080519060200190610785929190612074565b505050565b606060038054610799906127a6565b80601f01602080910402602001604051908101604052809291908181526020018280546107c5906127a6565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000806108276111e7565b90506108348185856111ef565b600191505092915050565b6000600254905090565b6000806108546111e7565b90506108618582856113ba565b61086c858585611446565b60019150509392505050565b600060066000838152602001908152602001600020600101549050919050565b6000600960029054906101000a900460ff16905090565b6108b882610878565b6108c1816111d3565b6108cb83836116be565b505050565b6000600960009054906101000a900460ff16905090565b6108ef6111e7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461095c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109539061284a565b60405180910390fd5b610966828261179f565b5050565b6000806109756111e7565b90506109968185856109878589610ecf565b6109919190612899565b6111ef565b600191505092915050565b600960029054906101000a900460ff166109f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e79061293b565b60405180910390fd5b7ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc9610a1a816111d3565b60006007541480610a3f575060075482610a3261083f565b610a3c9190612899565b11155b610a7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a75906129a7565b60405180910390fd5b610a888383611881565b505050565b6000600960019054906101000a900460ff16905090565b6000801b610ab1816111d3565b6000600960026101000a81548160ff02191690831515021790555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b1f6119d8565b610b296000611a56565b565b6000600960039054906101000a900460ff16905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f557656f4f9f14d0ed165d724ca871aaa2b690a1723caa7906e5e4fc3f61549b1610c03816111d3565b600960019054906101000a900460ff16610c52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4990612a13565b60405180910390fd5b610c5d858585611446565b60019150509392505050565b7f557656f4f9f14d0ed165d724ca871aaa2b690a1723caa7906e5e4fc3f61549b181565b606060048054610c9c906127a6565b80601f0160208091040260200160405190810160405280929190818152602001828054610cc8906127a6565b8015610d155780601f10610cea57610100808354040283529160200191610d15565b820191906000526020600020905b815481529060010190602001808311610cf857829003601f168201915b5050505050905090565b7f557656f4f9f14d0ed165d724ca871aaa2b690a1723caa7906e5e4fc3f61549b1610d49816111d3565b600960039054906101000a900460ff16610d98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8f90612a7f565b60405180910390fd5b610da28383611b1c565b505050565b6000801b81565b600080610db96111e7565b90506000610dc78286610ecf565b905083811015610e0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0390612b11565b60405180910390fd5b610e1982868684036111ef565b60019250505092915050565b6000600754905090565b600080610e3a6111e7565b9050610e47818585611446565b600191505092915050565b60075481565b6000801b610e65816111d3565b6000600960036101000a81548160ff02191690831515021790555050565b6000801b610e90816111d3565b6000600960016101000a81548160ff02191690831515021790555050565b610eb782610878565b610ec0816111d3565b610eca838361179f565b505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b606060088054610f65906127a6565b80601f0160208091040260200160405190810160405280929190818152602001828054610f91906127a6565b8015610fde5780601f10610fb357610100808354040283529160200191610fde565b820191906000526020600020905b815481529060010190602001808311610fc157829003601f168201915b5050505050905090565b610ff06119d8565b610ff981611cea565b6110066000801b82611d6e565b61101a6000801b6110156111e7565b61179f565b6110447ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc982611d6e565b6110757ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc96110706111e7565b61179f565b50565b6000801b611085816111d3565b600960029054906101000a900460ff166110d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cb9061293b565b60405180910390fd5b6110dc61083f565b83101561111e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111590612b7d565b60405180910390fd5b8260078190555081600960006101000a81548160ff021916908360ff160217905550505050565b7ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc981565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6111e4816111df6111e7565b611d7c565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561125f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125690612c0f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156112cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c690612ca1565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516113ad9190612502565b60405180910390a3505050565b60006113c68484610ecf565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146114405781811015611432576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142990612d0d565b60405180910390fd5b61143f84848484036111ef565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ad90612d9f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611526576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151d90612e31565b60405180910390fd5b611531838383611e01565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ae90612ec3565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116a59190612502565b60405180910390a36116b8848484611e06565b50505050565b6116c88282610b6c565b61179b5760016006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506117406111e7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6117a98282610b6c565b1561187d5760006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506118226111e7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e890612f2f565b60405180910390fd5b6118fd60008383611e01565b806002600082825461190f9190612899565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119c09190612502565b60405180910390a36119d460008383611e06565b5050565b6119e06111e7565b73ffffffffffffffffffffffffffffffffffffffff166119fe610b42565b73ffffffffffffffffffffffffffffffffffffffff1614611a54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4b90612f9b565b60405180910390fd5b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b839061302d565b60405180910390fd5b611b9882600083611e01565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c15906130bf565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611cd19190612502565b60405180910390a3611ce583600084611e06565b505050565b611cf26119d8565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611d62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5990613151565b60405180910390fd5b611d6b81611a56565b50565b611d7882826116be565b5050565b611d868282610b6c565b611dfd57611d9381611e0b565b611da18360001c6020611e38565b604051602001611db2929190613245565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df491906123fd565b60405180910390fd5b5050565b505050565b505050565b6060611e318273ffffffffffffffffffffffffffffffffffffffff16601460ff16611e38565b9050919050565b606060006002836002611e4b919061327f565b611e559190612899565b67ffffffffffffffff811115611e6e57611e6d612201565b5b6040519080825280601f01601f191660200182016040528015611ea05781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611ed857611ed76132d9565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611f3c57611f3b6132d9565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611f7c919061327f565b611f869190612899565b90505b6001811115612026577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110611fc857611fc76132d9565b5b1a60f81b828281518110611fdf57611fde6132d9565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061201f90613308565b9050611f89565b506000841461206a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120619061337e565b60405180910390fd5b8091505092915050565b828054612080906127a6565b90600052602060002090601f0160209004810192826120a257600085556120e9565b82601f106120bb57805160ff19168380011785556120e9565b828001600101855582156120e9579182015b828111156120e85782518255916020019190600101906120cd565b5b5090506120f691906120fa565b5090565b5b808211156121135760008160009055506001016120fb565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6121608161212b565b811461216b57600080fd5b50565b60008135905061217d81612157565b92915050565b60006020828403121561219957612198612121565b5b60006121a78482850161216e565b91505092915050565b60008115159050919050565b6121c5816121b0565b82525050565b60006020820190506121e060008301846121bc565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612239826121f0565b810181811067ffffffffffffffff8211171561225857612257612201565b5b80604052505050565b600061226b612117565b90506122778282612230565b919050565b600067ffffffffffffffff82111561229757612296612201565b5b6122a0826121f0565b9050602081019050919050565b82818337600083830152505050565b60006122cf6122ca8461227c565b612261565b9050828152602081018484840111156122eb576122ea6121eb565b5b6122f68482856122ad565b509392505050565b600082601f830112612313576123126121e6565b5b81356123238482602086016122bc565b91505092915050565b60006020828403121561234257612341612121565b5b600082013567ffffffffffffffff8111156123605761235f612126565b5b61236c848285016122fe565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156123af578082015181840152602081019050612394565b838111156123be576000848401525b50505050565b60006123cf82612375565b6123d98185612380565b93506123e9818560208601612391565b6123f2816121f0565b840191505092915050565b6000602082019050818103600083015261241781846123c4565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061244a8261241f565b9050919050565b61245a8161243f565b811461246557600080fd5b50565b60008135905061247781612451565b92915050565b6000819050919050565b6124908161247d565b811461249b57600080fd5b50565b6000813590506124ad81612487565b92915050565b600080604083850312156124ca576124c9612121565b5b60006124d885828601612468565b92505060206124e98582860161249e565b9150509250929050565b6124fc8161247d565b82525050565b600060208201905061251760008301846124f3565b92915050565b60008060006060848603121561253657612535612121565b5b600061254486828701612468565b935050602061255586828701612468565b92505060406125668682870161249e565b9150509250925092565b6000819050919050565b61258381612570565b811461258e57600080fd5b50565b6000813590506125a08161257a565b92915050565b6000602082840312156125bc576125bb612121565b5b60006125ca84828501612591565b91505092915050565b6125dc81612570565b82525050565b60006020820190506125f760008301846125d3565b92915050565b6000806040838503121561261457612613612121565b5b600061262285828601612591565b925050602061263385828601612468565b9150509250929050565b600060ff82169050919050565b6126538161263d565b82525050565b600060208201905061266e600083018461264a565b92915050565b60006020828403121561268a57612689612121565b5b600061269884828501612468565b91505092915050565b6126aa8161243f565b82525050565b60006020820190506126c560008301846126a1565b92915050565b600080604083850312156126e2576126e1612121565b5b60006126f085828601612468565b925050602061270185828601612468565b9150509250929050565b6127148161263d565b811461271f57600080fd5b50565b6000813590506127318161270b565b92915050565b6000806040838503121561274e5761274d612121565b5b600061275c8582860161249e565b925050602061276d85828601612722565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806127be57607f821691505b602082108114156127d2576127d1612777565b5b50919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612834602f83612380565b915061283f826127d8565b604082019050919050565b6000602082019050818103600083015261286381612827565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006128a48261247d565b91506128af8361247d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128e4576128e361286a565b5b828201905092915050565b7f46756e647320617265206c6f636b656400000000000000000000000000000000600082015250565b6000612925601083612380565b9150612930826128ef565b602082019050919050565b6000602082019050818103600083015261295481612918565b9050919050565b7f4d617820616d6f756e7420657863656564656400000000000000000000000000600082015250565b6000612991601383612380565b915061299c8261295b565b602082019050919050565b600060208201905081810360008301526129c081612984565b9050919050565b7f546f6b656e206973206e6f7420636f6e74726f6c6c61626c6500000000000000600082015250565b60006129fd601983612380565b9150612a08826129c7565b602082019050919050565b60006020820190508181036000830152612a2c816129f0565b9050919050565b7f546f6b656e20617265206e6f74206275726e61626c6500000000000000000000600082015250565b6000612a69601683612380565b9150612a7482612a33565b602082019050919050565b60006020820190508181036000830152612a9881612a5c565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612afb602583612380565b9150612b0682612a9f565b604082019050919050565b60006020820190508181036000830152612b2a81612aee565b9050919050565b7f4c696d6974206d7573742065786365656420746f74616c537570706c79282900600082015250565b6000612b67601f83612380565b9150612b7282612b31565b602082019050919050565b60006020820190508181036000830152612b9681612b5a565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612bf9602483612380565b9150612c0482612b9d565b604082019050919050565b60006020820190508181036000830152612c2881612bec565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612c8b602283612380565b9150612c9682612c2f565b604082019050919050565b60006020820190508181036000830152612cba81612c7e565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000612cf7601d83612380565b9150612d0282612cc1565b602082019050919050565b60006020820190508181036000830152612d2681612cea565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d89602583612380565b9150612d9482612d2d565b604082019050919050565b60006020820190508181036000830152612db881612d7c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612e1b602383612380565b9150612e2682612dbf565b604082019050919050565b60006020820190508181036000830152612e4a81612e0e565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612ead602683612380565b9150612eb882612e51565b604082019050919050565b60006020820190508181036000830152612edc81612ea0565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000612f19601f83612380565b9150612f2482612ee3565b602082019050919050565b60006020820190508181036000830152612f4881612f0c565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612f85602083612380565b9150612f9082612f4f565b602082019050919050565b60006020820190508181036000830152612fb481612f78565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000613017602183612380565b915061302282612fbb565b604082019050919050565b600060208201905081810360008301526130468161300a565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006130a9602283612380565b91506130b48261304d565b604082019050919050565b600060208201905081810360008301526130d88161309c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061313b602683612380565b9150613146826130df565b604082019050919050565b6000602082019050818103600083015261316a8161312e565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006131b2601783613171565b91506131bd8261317c565b601782019050919050565b60006131d382612375565b6131dd8185613171565b93506131ed818560208601612391565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b600061322f601183613171565b915061323a826131f9565b601182019050919050565b6000613250826131a5565b915061325c82856131c8565b915061326782613222565b915061327382846131c8565b91508190509392505050565b600061328a8261247d565b91506132958361247d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156132ce576132cd61286a565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006133138261247d565b915060008214156133275761332661286a565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613368602083612380565b915061337382613332565b602082019050919050565b600060208201905081810360008301526133978161335b565b905091905056fea2646970667358221220b8b8e2cbfe2b7b405dcab351c3c88c5aa56c9acc92b6e7d65609b2bb4df9800f64736f6c63430008090033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000006504f5254323000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006504f5254323000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000