608060405234801561000f575f80fd5b50604051612dff380380612dff83398181016040528101906100319190610281565b806040518060400160405280600b81526020017f4e465457697468495046530000000000000000000000000000000000000000008152506040518060400160405280600781526020017f4d544e4950465300000000000000000000000000000000000000000000000000815250815f90816100ac91906104e6565b5080600190816100bc91906104e6565b5050505f60075f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610148575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161013f91906105c4565b60405180910390fd5b6101578161015e60201b60201c565b50506105dd565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61025082610227565b9050919050565b61026081610246565b811461026a575f80fd5b50565b5f8151905061027b81610257565b92915050565b5f6020828403121561029657610295610223565b5b5f6102a38482850161026d565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061032757607f821691505b60208210810361033a576103396102e3565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261039c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610361565b6103a68683610361565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6103ea6103e56103e0846103be565b6103c7565b6103be565b9050919050565b5f819050919050565b610403836103d0565b61041761040f826103f1565b84845461036d565b825550505050565b5f90565b61042b61041f565b6104368184846103fa565b505050565b5b818110156104595761044e5f82610423565b60018101905061043c565b5050565b601f82111561049e5761046f81610340565b61047884610352565b81016020851015610487578190505b61049b61049385610352565b83018261043b565b50505b505050565b5f82821c905092915050565b5f6104be5f19846008026104a3565b1980831691505092915050565b5f6104d683836104af565b9150826002028217905092915050565b6104ef826102ac565b67ffffffffffffffff811115610508576105076102b6565b5b6105128254610310565b61051d82828561045d565b5f60209050601f83116001811461054e575f841561053c578287015190505b61054685826104cb565b8655506105ad565b601f19841661055c86610340565b5f5b828110156105835784890151825560018201915060208501945060208101905061055e565b868310156105a0578489015161059c601f8916826104af565b8355505b6001600288020188555050505b505050505050565b6105be81610246565b82525050565b5f6020820190506105d75f8301846105b5565b92915050565b612815806105ea5f395ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c806370a08231116100b6578063a22cb4651161007a578063a22cb46514610326578063b88d4fde14610342578063c87b56dd1461035e578063d204c45e1461038e578063e985e9c5146103aa578063f2fde38b146103da57610140565b806370a08231146102a6578063715018a6146102d65780638456cb59146102e05780638da5cb5b146102ea57806395d89b411461030857610140565b806323b872dd1161010857806323b872dd146101fa5780633f4ba83a1461021657806342842e0e1461022057806342966c681461023c5780635c975abb146102585780636352211e1461027657610140565b806301ffc9a71461014457806306fdde0314610174578063081812fc14610192578063095ea7b3146101c257806313af4035146101de575b5f80fd5b61015e60048036038101906101599190611ce8565b6103f6565b60405161016b9190611d2d565b60405180910390f35b61017c610407565b6040516101899190611db6565b60405180910390f35b6101ac60048036038101906101a79190611e09565b610496565b6040516101b99190611e73565b60405180910390f35b6101dc60048036038101906101d79190611eb6565b6104b1565b005b6101f860048036038101906101f39190611ef4565b6104c7565b005b610214600480360381019061020f9190611f1f565b6104db565b005b61021e6105da565b005b61023a60048036038101906102359190611f1f565b6105ec565b005b61025660048036038101906102519190611e09565b61060b565b005b610260610621565b60405161026d9190611d2d565b60405180910390f35b610290600480360381019061028b9190611e09565b610636565b60405161029d9190611e73565b60405180910390f35b6102c060048036038101906102bb9190611ef4565b610647565b6040516102cd9190611f7e565b60405180910390f35b6102de6106fd565b005b6102e8610710565b005b6102f2610722565b6040516102ff9190611e73565b60405180910390f35b61031061074b565b60405161031d9190611db6565b60405180910390f35b610340600480360381019061033b9190611fc1565b6107db565b005b61035c6004803603810190610357919061212b565b6107f1565b005b61037860048036038101906103739190611e09565b610816565b6040516103859190611db6565b60405180910390f35b6103a860048036038101906103a39190612249565b610828565b005b6103c460048036038101906103bf91906122a3565b610862565b6040516103d19190611d2d565b60405180910390f35b6103f460048036038101906103ef9190611ef4565b6108f0565b005b5f61040082610974565b9050919050565b60605f80546104159061230e565b80601f01602080910402602001604051908101604052809291908181526020018280546104419061230e565b801561048c5780601f106104635761010080835404028352916020019161048c565b820191905f5260205f20905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b5f6104a0826109d4565b506104aa82610a5a565b9050919050565b6104c382826104be610a93565b610a9a565b5050565b6104cf610aac565b6104d8816108f0565b50565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361054b575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016105429190611e73565b60405180910390fd5b5f61055e8383610559610a93565b610b33565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146105d4578382826040517f64283d7b0000000000000000000000000000000000000000000000000000000081526004016105cb9392919061233e565b60405180910390fd5b50505050565b6105e2610aac565b6105ea610b48565b565b61060683838360405180602001604052805f8152506107f1565b505050565b61061d5f82610618610a93565b610b33565b5050565b5f60075f9054906101000a900460ff16905090565b5f610640826109d4565b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036106b8575f6040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016106af9190611e73565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610705610aac565b61070e5f610ba9565b565b610718610aac565b610720610c6e565b565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461075a9061230e565b80601f01602080910402602001604051908101604052809291908181526020018280546107869061230e565b80156107d15780601f106107a8576101008083540402835291602001916107d1565b820191905f5260205f20905b8154815290600101906020018083116107b457829003601f168201915b5050505050905090565b6107ed6107e6610a93565b8383610cd0565b5050565b6107fc8484846104db565b610810610807610a93565b85858585610e39565b50505050565b606061082182610fe5565b9050919050565b610830610aac565b5f60085f815480929190610843906123a0565b91905055905061085383826110f0565b61085d818361110d565b505050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6108f8610aac565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610968575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161095f9190611e73565b60405180910390fd5b61097181610ba9565b50565b5f634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109cd57506109cc82611167565b5b9050919050565b5f806109df83611248565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a5157826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401610a489190611f7e565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b610aa78383836001611281565b505050565b610ab4610a93565b73ffffffffffffffffffffffffffffffffffffffff16610ad2610722565b73ffffffffffffffffffffffffffffffffffffffff1614610b3157610af5610a93565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610b289190611e73565b60405180910390fd5b565b5f610b3f848484611440565b90509392505050565b610b5061145d565b5f60075f6101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610b92610a93565b604051610b9f9190611e73565b60405180910390a1565b5f600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b610c7661149d565b600160075f6101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610cb9610a93565b604051610cc69190611e73565b60405180910390a1565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d4057816040517f5b08ba18000000000000000000000000000000000000000000000000000000008152600401610d379190611e73565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051610e2c9190611d2d565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115610fde578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02868685856040518563ffffffff1660e01b8152600401610e979493929190612439565b6020604051808303815f875af1925050508015610ed257506040513d601f19601f82011682018060405250810190610ecf9190612497565b60015b610f53573d805f8114610f00576040519150601f19603f3d011682016040523d82523d5f602084013e610f05565b606091505b505f815103610f4b57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610f429190611e73565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614610fdc57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610fd39190611e73565b60405180910390fd5b505b5050505050565b6060610ff0826109d4565b505f60065f8481526020019081526020015f20805461100e9061230e565b80601f016020809104026020016040519081016040528092919081815260200182805461103a9061230e565b80156110855780601f1061105c57610100808354040283529160200191611085565b820191905f5260205f20905b81548152906001019060200180831161106857829003601f168201915b505050505090505f6110956114de565b90505f8151036110a95781925050506110eb565b5f825111156110dd5780826040516020016110c59291906124fc565b604051602081830303815290604052925050506110eb565b6110e6846114f4565b925050505b919050565b611109828260405180602001604052805f81525061155a565b5050565b8060065f8481526020019081526020015f20908161112b91906126bc565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161115b9190611f7e565b60405180910390a15050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061123157507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061124157506112408261157d565b5b9050919050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b80806112b957505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156113eb575f6112c8846109d4565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561133257508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b801561134557506113438184610862565b155b1561138757826040517fa9fbf51f00000000000000000000000000000000000000000000000000000000815260040161137e9190611e73565b60405180910390fd5b81156113e957838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f61144961149d565b6114548484846115e6565b90509392505050565b611465610621565b61149b576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6114a5610621565b156114dc576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060405180602001604052805f815250905090565b60606114ff826109d4565b505f6115096114de565b90505f8151116115275760405180602001604052805f815250611552565b80611531846117f1565b6040516020016115429291906124fc565b6040516020818303038152906040525b915050919050565b61156483836118bb565b61157861156f610a93565b5f858585610e39565b505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f806115f184611248565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611632576116318184866119ae565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116bd576116715f855f80611281565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461173c57600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60605f60016117ff84611a71565b0190505f8167ffffffffffffffff81111561181d5761181c612007565b5b6040519080825280601f01601f19166020018201604052801561184f5781602001600182028036833780820191505090505b5090505f82602001820190505b6001156118b0578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816118a5576118a461278b565b5b0494505f850361185c575b819350505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361192b575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016119229190611e73565b60405180910390fd5b5f61193783835f610b33565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146119a9575f6040517f73c6ac6e0000000000000000000000000000000000000000000000000000000081526004016119a09190611e73565b60405180910390fd5b505050565b6119b9838383611bc2565b611a6c575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a2d57806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401611a249190611f7e565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401611a639291906127b8565b60405180910390fd5b505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611acd577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611ac357611ac261278b565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611b0a576d04ee2d6d415b85acef81000000008381611b0057611aff61278b565b5b0492506020810190505b662386f26fc100008310611b3957662386f26fc100008381611b2f57611b2e61278b565b5b0492506010810190505b6305f5e1008310611b62576305f5e1008381611b5857611b5761278b565b5b0492506008810190505b6127108310611b87576127108381611b7d57611b7c61278b565b5b0492506004810190505b60648310611baa5760648381611ba057611b9f61278b565b5b0492506002810190505b600a8310611bb9576001810190505b80915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c7957508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611c3a5750611c398484610862565b5b80611c7857508273ffffffffffffffffffffffffffffffffffffffff16611c6083610a5a565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611cc781611c93565b8114611cd1575f80fd5b50565b5f81359050611ce281611cbe565b92915050565b5f60208284031215611cfd57611cfc611c8b565b5b5f611d0a84828501611cd4565b91505092915050565b5f8115159050919050565b611d2781611d13565b82525050565b5f602082019050611d405f830184611d1e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611d8882611d46565b611d928185611d50565b9350611da2818560208601611d60565b611dab81611d6e565b840191505092915050565b5f6020820190508181035f830152611dce8184611d7e565b905092915050565b5f819050919050565b611de881611dd6565b8114611df2575f80fd5b50565b5f81359050611e0381611ddf565b92915050565b5f60208284031215611e1e57611e1d611c8b565b5b5f611e2b84828501611df5565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e5d82611e34565b9050919050565b611e6d81611e53565b82525050565b5f602082019050611e865f830184611e64565b92915050565b611e9581611e53565b8114611e9f575f80fd5b50565b5f81359050611eb081611e8c565b92915050565b5f8060408385031215611ecc57611ecb611c8b565b5b5f611ed985828601611ea2565b9250506020611eea85828601611df5565b9150509250929050565b5f60208284031215611f0957611f08611c8b565b5b5f611f1684828501611ea2565b91505092915050565b5f805f60608486031215611f3657611f35611c8b565b5b5f611f4386828701611ea2565b9350506020611f5486828701611ea2565b9250506040611f6586828701611df5565b9150509250925092565b611f7881611dd6565b82525050565b5f602082019050611f915f830184611f6f565b92915050565b611fa081611d13565b8114611faa575f80fd5b50565b5f81359050611fbb81611f97565b92915050565b5f8060408385031215611fd757611fd6611c8b565b5b5f611fe485828601611ea2565b9250506020611ff585828601611fad565b9150509250929050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61203d82611d6e565b810181811067ffffffffffffffff8211171561205c5761205b612007565b5b80604052505050565b5f61206e611c82565b905061207a8282612034565b919050565b5f67ffffffffffffffff82111561209957612098612007565b5b6120a282611d6e565b9050602081019050919050565b828183375f83830152505050565b5f6120cf6120ca8461207f565b612065565b9050828152602081018484840111156120eb576120ea612003565b5b6120f68482856120af565b509392505050565b5f82601f83011261211257612111611fff565b5b81356121228482602086016120bd565b91505092915050565b5f805f806080858703121561214357612142611c8b565b5b5f61215087828801611ea2565b945050602061216187828801611ea2565b935050604061217287828801611df5565b925050606085013567ffffffffffffffff81111561219357612192611c8f565b5b61219f878288016120fe565b91505092959194509250565b5f67ffffffffffffffff8211156121c5576121c4612007565b5b6121ce82611d6e565b9050602081019050919050565b5f6121ed6121e8846121ab565b612065565b90508281526020810184848401111561220957612208612003565b5b6122148482856120af565b509392505050565b5f82601f8301126122305761222f611fff565b5b81356122408482602086016121db565b91505092915050565b5f806040838503121561225f5761225e611c8b565b5b5f61226c85828601611ea2565b925050602083013567ffffffffffffffff81111561228d5761228c611c8f565b5b6122998582860161221c565b9150509250929050565b5f80604083850312156122b9576122b8611c8b565b5b5f6122c685828601611ea2565b92505060206122d785828601611ea2565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061232557607f821691505b602082108103612338576123376122e1565b5b50919050565b5f6060820190506123515f830186611e64565b61235e6020830185611f6f565b61236b6040830184611e64565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6123aa82611dd6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123dc576123db612373565b5b600182019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f61240b826123e7565b61241581856123f1565b9350612425818560208601611d60565b61242e81611d6e565b840191505092915050565b5f60808201905061244c5f830187611e64565b6124596020830186611e64565b6124666040830185611f6f565b81810360608301526124788184612401565b905095945050505050565b5f8151905061249181611cbe565b92915050565b5f602082840312156124ac576124ab611c8b565b5b5f6124b984828501612483565b91505092915050565b5f81905092915050565b5f6124d682611d46565b6124e081856124c2565b93506124f0818560208601611d60565b80840191505092915050565b5f61250782856124cc565b915061251382846124cc565b91508190509392505050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261257b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612540565b6125858683612540565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6125c06125bb6125b684611dd6565b61259d565b611dd6565b9050919050565b5f819050919050565b6125d9836125a6565b6125ed6125e5826125c7565b84845461254c565b825550505050565b5f90565b6126016125f5565b61260c8184846125d0565b505050565b5b8181101561262f576126245f826125f9565b600181019050612612565b5050565b601f821115612674576126458161251f565b61264e84612531565b8101602085101561265d578190505b61267161266985612531565b830182612611565b50505b505050565b5f82821c905092915050565b5f6126945f1984600802612679565b1980831691505092915050565b5f6126ac8383612685565b9150826002028217905092915050565b6126c582611d46565b67ffffffffffffffff8111156126de576126dd612007565b5b6126e8825461230e565b6126f3828285612633565b5f60209050601f831160018114612724575f8415612712578287015190505b61271c85826126a1565b865550612783565b601f1984166127328661251f565b5f5b8281101561275957848901518255600182019150602085019450602081019050612734565b868310156127765784890151612772601f891682612685565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6040820190506127cb5f830185611e64565b6127d86020830184611f6f565b939250505056fea2646970667358221220281fd802ae9ce731525bb9f500530fb9f801d2fd8725040c1cd0ec9205630a2f64736f6c634300081a0033000000000000000000000000271975e8a353e38cd032e1face0bfedbf059363c