608060405234801562000010575f80fd5b5060405162002e3338038062002e33833981810160405281019062000036919062000297565b806040518060400160405280600a81526020017f4c6f79616c74794e4654000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4c4e465400000000000000000000000000000000000000000000000000000000815250815f9081620000b391906200052b565b508060019081620000c591906200052b565b5050505f60075f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000154575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200014b919062000620565b60405180910390fd5b62000165816200016d60201b60201c565b50506200063b565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620002618262000236565b9050919050565b620002738162000255565b81146200027e575f80fd5b50565b5f81519050620002918162000268565b92915050565b5f60208284031215620002af57620002ae62000232565b5b5f620002be8482850162000281565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200034357607f821691505b602082108103620003595762000358620002fe565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620003bd7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000380565b620003c9868362000380565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620004136200040d6200040784620003e1565b620003ea565b620003e1565b9050919050565b5f819050919050565b6200042e83620003f3565b620004466200043d826200041a565b8484546200038c565b825550505050565b5f90565b6200045c6200044e565b6200046981848462000423565b505050565b5b818110156200049057620004845f8262000452565b6001810190506200046f565b5050565b601f821115620004df57620004a9816200035f565b620004b48462000371565b81016020851015620004c4578190505b620004dc620004d38562000371565b8301826200046e565b50505b505050565b5f82821c905092915050565b5f620005015f1984600802620004e4565b1980831691505092915050565b5f6200051b8383620004f0565b9150826002028217905092915050565b6200053682620002c7565b67ffffffffffffffff811115620005525762000551620002d1565b5b6200055e82546200032b565b6200056b82828562000494565b5f60209050601f831160018114620005a1575f84156200058c578287015190505b6200059885826200050e565b86555062000607565b601f198416620005b1866200035f565b5f5b82811015620005da57848901518255600182019150602085019450602081019050620005b3565b86831015620005fa5784890151620005f6601f891682620004f0565b8355505b6001600288020188555050505b505050505050565b6200061a8162000255565b82525050565b5f602082019050620006355f8301846200060f565b92915050565b6127ea80620006495f395ff3fe608060405234801561000f575f80fd5b5060043610610135575f3560e01c806370a08231116100b6578063a22cb4651161007a578063a22cb465146102ff578063b88d4fde1461031b578063c87b56dd14610337578063d204c45e14610367578063e985e9c514610383578063f2fde38b146103b357610135565b806370a082311461027f578063715018a6146102af5780638456cb59146102b95780638da5cb5b146102c357806395d89b41146102e157610135565b80633f4ba83a116100fd5780633f4ba83a146101ef57806342842e0e146101f957806342966c68146102155780635c975abb146102315780636352211e1461024f57610135565b806301ffc9a71461013957806306fdde0314610169578063081812fc14610187578063095ea7b3146101b757806323b872dd146101d3575b5f80fd5b610153600480360381019061014e9190611ca3565b6103cf565b6040516101609190611ce8565b60405180910390f35b6101716103e0565b60405161017e9190611d8b565b60405180910390f35b6101a1600480360381019061019c9190611dde565b61046f565b6040516101ae9190611e48565b60405180910390f35b6101d160048036038101906101cc9190611e8b565b61048a565b005b6101ed60048036038101906101e89190611ec9565b6104a0565b005b6101f761059f565b005b610213600480360381019061020e9190611ec9565b6105b1565b005b61022f600480360381019061022a9190611dde565b6105d0565b005b6102396105e6565b6040516102469190611ce8565b60405180910390f35b61026960048036038101906102649190611dde565b6105fb565b6040516102769190611e48565b60405180910390f35b61029960048036038101906102949190611f19565b61060c565b6040516102a69190611f53565b60405180910390f35b6102b76106c2565b005b6102c16106d5565b005b6102cb6106e7565b6040516102d89190611e48565b60405180910390f35b6102e9610710565b6040516102f69190611d8b565b60405180910390f35b61031960048036038101906103149190611f96565b6107a0565b005b61033560048036038101906103309190612100565b6107b6565b005b610351600480360381019061034c9190611dde565b6107d3565b60405161035e9190611d8b565b60405180910390f35b610381600480360381019061037c919061221e565b6107e5565b005b61039d60048036038101906103989190612278565b61081f565b6040516103aa9190611ce8565b60405180910390f35b6103cd60048036038101906103c89190611f19565b6108ad565b005b5f6103d982610931565b9050919050565b60605f80546103ee906122e3565b80601f016020809104026020016040519081016040528092919081815260200182805461041a906122e3565b80156104655780601f1061043c57610100808354040283529160200191610465565b820191905f5260205f20905b81548152906001019060200180831161044857829003601f168201915b5050505050905090565b5f61047982610991565b5061048382610a17565b9050919050565b61049c8282610497610a50565b610a57565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610510575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016105079190611e48565b60405180910390fd5b5f610523838361051e610a50565b610a69565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610599578382826040517f64283d7b00000000000000000000000000000000000000000000000000000000815260040161059093929190612313565b60405180910390fd5b50505050565b6105a7610a7e565b6105af610b05565b565b6105cb83838360405180602001604052805f8152506107b6565b505050565b6105e25f826105dd610a50565b610a69565b5050565b5f60075f9054906101000a900460ff16905090565b5f61060582610991565b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361067d575f6040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016106749190611e48565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6106ca610a7e565b6106d35f610b66565b565b6106dd610a7e565b6106e5610c2b565b565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461071f906122e3565b80601f016020809104026020016040519081016040528092919081815260200182805461074b906122e3565b80156107965780601f1061076d57610100808354040283529160200191610796565b820191905f5260205f20905b81548152906001019060200180831161077957829003601f168201915b5050505050905090565b6107b26107ab610a50565b8383610c8d565b5050565b6107c18484846104a0565b6107cd84848484610df6565b50505050565b60606107de82610fa8565b9050919050565b6107ed610a7e565b5f60085f81548092919061080090612375565b91905055905061081083826110b3565b61081a81836110d0565b505050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6108b5610a7e565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610925575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161091c9190611e48565b60405180910390fd5b61092e81610b66565b50565b5f634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061098a57506109898261112a565b5b9050919050565b5f8061099c8361120b565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a0e57826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401610a059190611f53565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b610a648383836001611244565b505050565b5f610a75848484611403565b90509392505050565b610a86610a50565b73ffffffffffffffffffffffffffffffffffffffff16610aa46106e7565b73ffffffffffffffffffffffffffffffffffffffff1614610b0357610ac7610a50565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610afa9190611e48565b60405180910390fd5b565b610b0d611420565b5f60075f6101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610b4f610a50565b604051610b5c9190611e48565b60405180910390a1565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b610c33611460565b600160075f6101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610c76610a50565b604051610c839190611e48565b60405180910390a1565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cfd57816040517f5b08ba18000000000000000000000000000000000000000000000000000000008152600401610cf49190611e48565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610de99190611ce8565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115610fa2578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02610e39610a50565b8685856040518563ffffffff1660e01b8152600401610e5b949392919061240e565b6020604051808303815f875af1925050508015610e9657506040513d601f19601f82011682018060405250810190610e93919061246c565b60015b610f17573d805f8114610ec4576040519150601f19603f3d011682016040523d82523d5f602084013e610ec9565b606091505b505f815103610f0f57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610f069190611e48565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614610fa057836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610f979190611e48565b60405180910390fd5b505b50505050565b6060610fb382610991565b505f60065f8481526020019081526020015f208054610fd1906122e3565b80601f0160208091040260200160405190810160405280929190818152602001828054610ffd906122e3565b80156110485780601f1061101f57610100808354040283529160200191611048565b820191905f5260205f20905b81548152906001019060200180831161102b57829003601f168201915b505050505090505f6110586114a1565b90505f81510361106c5781925050506110ae565b5f825111156110a05780826040516020016110889291906124d1565b604051602081830303815290604052925050506110ae565b6110a9846114b7565b925050505b919050565b6110cc828260405180602001604052805f81525061151d565b5050565b8060065f8481526020019081526020015f2090816110ee9190612691565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161111e9190611f53565b60405180910390a15050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806111f457507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611204575061120382611538565b5b9050919050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b808061127c57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156113ae575f61128b84610991565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156112f557508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156113085750611306818461081f565b155b1561134a57826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016113419190611e48565b60405180910390fd5b81156113ac57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f61140c611460565b6114178484846115a1565b90509392505050565b6114286105e6565b61145e576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6114686105e6565b1561149f576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060405180602001604052805f815250905090565b60606114c282610991565b505f6114cc6114a1565b90505f8151116114ea5760405180602001604052805f815250611515565b806114f4846117ac565b6040516020016115059291906124d1565b6040516020818303038152906040525b915050919050565b6115278383611876565b6115335f848484610df6565b505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f806115ac8461120b565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146115ed576115ec818486611969565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116785761162c5f855f80611244565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146116f757600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60605f60016117ba84611a2c565b0190505f8167ffffffffffffffff8111156117d8576117d7611fdc565b5b6040519080825280601f01601f19166020018201604052801561180a5781602001600182028036833780820191505090505b5090505f82602001820190505b60011561186b578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816118605761185f612760565b5b0494505f8503611817575b819350505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118e6575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016118dd9190611e48565b60405180910390fd5b5f6118f283835f610a69565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611964575f6040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260040161195b9190611e48565b60405180910390fd5b505050565b611974838383611b7d565b611a27575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036119e857806040517f7e2732890000000000000000000000000000000000000000000000000000000081526004016119df9190611f53565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401611a1e92919061278d565b60405180910390fd5b505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611a88577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611a7e57611a7d612760565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611ac5576d04ee2d6d415b85acef81000000008381611abb57611aba612760565b5b0492506020810190505b662386f26fc100008310611af457662386f26fc100008381611aea57611ae9612760565b5b0492506010810190505b6305f5e1008310611b1d576305f5e1008381611b1357611b12612760565b5b0492506008810190505b6127108310611b42576127108381611b3857611b37612760565b5b0492506004810190505b60648310611b655760648381611b5b57611b5a612760565b5b0492506002810190505b600a8310611b74576001810190505b80915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c3457508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611bf55750611bf4848461081f565b5b80611c3357508273ffffffffffffffffffffffffffffffffffffffff16611c1b83610a17565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611c8281611c4e565b8114611c8c575f80fd5b50565b5f81359050611c9d81611c79565b92915050565b5f60208284031215611cb857611cb7611c46565b5b5f611cc584828501611c8f565b91505092915050565b5f8115159050919050565b611ce281611cce565b82525050565b5f602082019050611cfb5f830184611cd9565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611d38578082015181840152602081019050611d1d565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611d5d82611d01565b611d678185611d0b565b9350611d77818560208601611d1b565b611d8081611d43565b840191505092915050565b5f6020820190508181035f830152611da38184611d53565b905092915050565b5f819050919050565b611dbd81611dab565b8114611dc7575f80fd5b50565b5f81359050611dd881611db4565b92915050565b5f60208284031215611df357611df2611c46565b5b5f611e0084828501611dca565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e3282611e09565b9050919050565b611e4281611e28565b82525050565b5f602082019050611e5b5f830184611e39565b92915050565b611e6a81611e28565b8114611e74575f80fd5b50565b5f81359050611e8581611e61565b92915050565b5f8060408385031215611ea157611ea0611c46565b5b5f611eae85828601611e77565b9250506020611ebf85828601611dca565b9150509250929050565b5f805f60608486031215611ee057611edf611c46565b5b5f611eed86828701611e77565b9350506020611efe86828701611e77565b9250506040611f0f86828701611dca565b9150509250925092565b5f60208284031215611f2e57611f2d611c46565b5b5f611f3b84828501611e77565b91505092915050565b611f4d81611dab565b82525050565b5f602082019050611f665f830184611f44565b92915050565b611f7581611cce565b8114611f7f575f80fd5b50565b5f81359050611f9081611f6c565b92915050565b5f8060408385031215611fac57611fab611c46565b5b5f611fb985828601611e77565b9250506020611fca85828601611f82565b9150509250929050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61201282611d43565b810181811067ffffffffffffffff8211171561203157612030611fdc565b5b80604052505050565b5f612043611c3d565b905061204f8282612009565b919050565b5f67ffffffffffffffff82111561206e5761206d611fdc565b5b61207782611d43565b9050602081019050919050565b828183375f83830152505050565b5f6120a461209f84612054565b61203a565b9050828152602081018484840111156120c0576120bf611fd8565b5b6120cb848285612084565b509392505050565b5f82601f8301126120e7576120e6611fd4565b5b81356120f7848260208601612092565b91505092915050565b5f805f806080858703121561211857612117611c46565b5b5f61212587828801611e77565b945050602061213687828801611e77565b935050604061214787828801611dca565b925050606085013567ffffffffffffffff81111561216857612167611c4a565b5b612174878288016120d3565b91505092959194509250565b5f67ffffffffffffffff82111561219a57612199611fdc565b5b6121a382611d43565b9050602081019050919050565b5f6121c26121bd84612180565b61203a565b9050828152602081018484840111156121de576121dd611fd8565b5b6121e9848285612084565b509392505050565b5f82601f83011261220557612204611fd4565b5b81356122158482602086016121b0565b91505092915050565b5f806040838503121561223457612233611c46565b5b5f61224185828601611e77565b925050602083013567ffffffffffffffff81111561226257612261611c4a565b5b61226e858286016121f1565b9150509250929050565b5f806040838503121561228e5761228d611c46565b5b5f61229b85828601611e77565b92505060206122ac85828601611e77565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806122fa57607f821691505b60208210810361230d5761230c6122b6565b5b50919050565b5f6060820190506123265f830186611e39565b6123336020830185611f44565b6123406040830184611e39565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61237f82611dab565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123b1576123b0612348565b5b600182019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f6123e0826123bc565b6123ea81856123c6565b93506123fa818560208601611d1b565b61240381611d43565b840191505092915050565b5f6080820190506124215f830187611e39565b61242e6020830186611e39565b61243b6040830185611f44565b818103606083015261244d81846123d6565b905095945050505050565b5f8151905061246681611c79565b92915050565b5f6020828403121561248157612480611c46565b5b5f61248e84828501612458565b91505092915050565b5f81905092915050565b5f6124ab82611d01565b6124b58185612497565b93506124c5818560208601611d1b565b80840191505092915050565b5f6124dc82856124a1565b91506124e882846124a1565b91508190509392505050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026125507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612515565b61255a8683612515565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61259561259061258b84611dab565b612572565b611dab565b9050919050565b5f819050919050565b6125ae8361257b565b6125c26125ba8261259c565b848454612521565b825550505050565b5f90565b6125d66125ca565b6125e18184846125a5565b505050565b5b81811015612604576125f95f826125ce565b6001810190506125e7565b5050565b601f8211156126495761261a816124f4565b61262384612506565b81016020851015612632578190505b61264661263e85612506565b8301826125e6565b50505b505050565b5f82821c905092915050565b5f6126695f198460080261264e565b1980831691505092915050565b5f612681838361265a565b9150826002028217905092915050565b61269a82611d01565b67ffffffffffffffff8111156126b3576126b2611fdc565b5b6126bd82546122e3565b6126c8828285612608565b5f60209050601f8311600181146126f9575f84156126e7578287015190505b6126f18582612676565b865550612758565b601f198416612707866124f4565b5f5b8281101561272e57848901518255600182019150602085019450602081019050612709565b8683101561274b5784890151612747601f89168261265a565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6040820190506127a05f830185611e39565b6127ad6020830184611f44565b939250505056fea26469706673582212205f139217ea79b87688f64d0d1aa0e624de17f4befafa2bc00656bf587d9b0d0564736f6c634300081400330000000000000000000000007d79753ca91ef28c918722a181fc82dd18fa7cda