0x608060405234801561001057600080fd5b50336040518060400160405280601681526020017f5363726f6c6c2031737420416e6e6976657273617279000000000000000000008152506040518060400160405280600381526020017f5331410000000000000000000000000000000000000000000000000000000000815250816000908161008d919061044d565b50806001908161009d919061044d565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101125760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016101099190610560565b60405180910390fd5b6101218161013760201b60201c565b506001600881905550600160098190555061057b565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061027e57607f821691505b60208210810361029157610290610237565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026102f97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102bc565b61030386836102bc565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061034a6103456103408461031b565b610325565b61031b565b9050919050565b6000819050919050565b6103648361032f565b61037861037082610351565b8484546102c9565b825550505050565b600090565b61038d610380565b61039881848461035b565b505050565b5b818110156103bc576103b1600082610385565b60018101905061039e565b5050565b601f821115610401576103d281610297565b6103db846102ac565b810160208510156103ea578190505b6103fe6103f6856102ac565b83018261039d565b50505b505050565b600082821c905092915050565b600061042460001984600802610406565b1980831691505092915050565b600061043d8383610413565b9150826002028217905092915050565b610456826101fd565b67ffffffffffffffff81111561046f5761046e610208565b5b6104798254610266565b6104848282856103c0565b600060209050601f8311600181146104b757600084156104a5578287015190505b6104af8582610431565b865550610517565b601f1984166104c586610297565b60005b828110156104ed578489015182556001820191506020850194506020810190506104c8565b8683101561050a5784890151610506601f891682610413565b8355505b6001600288020188555050505b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061054a8261051f565b9050919050565b61055a8161053f565b82525050565b60006020820190506105756000830184610551565b92915050565b612d8b8061058a6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80636c0360eb116100b8578063a22cb4651161007c578063a22cb4651461032b578063b88d4fde14610347578063c87b56dd14610363578063d082e38114610393578063e985e9c5146103b1578063f2fde38b146103e157610142565b80636c0360eb1461029757806370a08231146102b5578063715018a6146102e55780638da5cb5b146102ef57806395d89b411461030d57610142565b806318160ddd1161010a57806318160ddd146101eb57806323b872dd146102095780633ccfd60b1461022557806342842e0e1461022f57806355f804b31461024b5780636352211e1461026757610142565b806301ffc9a71461014757806306fdde0314610177578063081812fc14610195578063095ea7b3146101c55780631249c58b146101e1575b600080fd5b610161600480360381019061015c9190611eb8565b6103fd565b60405161016e9190611f00565b60405180910390f35b61017f61045e565b60405161018c9190611fab565b60405180910390f35b6101af60048036038101906101aa9190612003565b6104f0565b6040516101bc9190612071565b60405180910390f35b6101df60048036038101906101da91906120b8565b61050c565b005b6101e9610522565b005b6101f36105d9565b6040516102009190612107565b60405180910390f35b610223600480360381019061021e9190612122565b6105ef565b005b61022d6106f1565b005b61024960048036038101906102449190612122565b6107af565b005b610265600480360381019061026091906122aa565b6107cf565b005b610281600480360381019061027c9190612003565b6107ea565b60405161028e9190612071565b60405180910390f35b61029f6107fc565b6040516102ac9190611fab565b60405180910390f35b6102cf60048036038101906102ca91906122f3565b61088a565b6040516102dc9190612107565b60405180910390f35b6102ed610944565b005b6102f7610958565b6040516103049190612071565b60405180910390f35b610315610982565b6040516103229190611fab565b60405180910390f35b6103456004803603810190610340919061234c565b610a14565b005b610361600480360381019061035c919061242d565b610a2a565b005b61037d60048036038101906103789190612003565b610a47565b60405161038a9190611fab565b60405180910390f35b61039b610b5a565b6040516103a89190612107565b60405180910390f35b6103cb60048036038101906103c691906124b0565b610b60565b6040516103d89190611f00565b60405180910390f35b6103fb60048036038101906103f691906122f3565b610bf4565b005b6000634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610457575061045682610c7a565b5b9050919050565b60606000805461046d9061251f565b80601f01602080910402602001604051908101604052809291908181526020018280546104999061251f565b80156104e65780601f106104bb576101008083540402835291602001916104e6565b820191906000526020600020905b8154815290600101906020018083116104c957829003601f168201915b5050505050905090565b60006104fb82610d5c565b5061050582610de4565b9050919050565b61051e8282610519610e21565b610e29565b5050565b6000600a80546105319061251f565b905011610573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056a9061259c565b60405180910390fd5b600060095490506105843382610e3b565b6000600a61059183610e59565b6040516020016105a29291906126dc565b60405160208183030381529060405290506105bd8282610fbc565b600960008154809291906105d09061273a565b91905055505050565b600060016009546105ea9190612782565b905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036106615760006040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016106589190612071565b60405180910390fd5b60006106758383610670610e21565b611018565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146106eb578382826040517f64283d7b0000000000000000000000000000000000000000000000000000000081526004016106e2939291906127b6565b60405180910390fd5b50505050565b6106f9611232565b6000610703610958565b73ffffffffffffffffffffffffffffffffffffffff16476040516107269061281e565b60006040518083038185875af1925050503d8060008114610763576040519150601f19603f3d011682016040523d82523d6000602084013e610768565b606091505b50509050806107ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a39061287f565b60405180910390fd5b50565b6107ca83838360405180602001604052806000815250610a2a565b505050565b6107d7611232565b80600a90816107e69190612a36565b5050565b60006107f582610d5c565b9050919050565b600a80546108099061251f565b80601f01602080910402602001604051908101604052809291908181526020018280546108359061251f565b80156108825780601f1061085757610100808354040283529160200191610882565b820191906000526020600020905b81548152906001019060200180831161086557829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036108fd5760006040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016108f49190612071565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61094c611232565b61095660006112b9565b565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600180546109919061251f565b80601f01602080910402602001604051908101604052809291908181526020018280546109bd9061251f565b8015610a0a5780601f106109df57610100808354040283529160200191610a0a565b820191906000526020600020905b8154815290600101906020018083116109ed57829003601f168201915b5050505050905090565b610a26610a1f610e21565b838361137f565b5050565b610a358484846105ef565b610a41848484846114ee565b50505050565b6060610a5282610d5c565b506000600660008481526020019081526020016000208054610a739061251f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a9f9061251f565b8015610aec5780601f10610ac157610100808354040283529160200191610aec565b820191906000526020600020905b815481529060010190602001808311610acf57829003601f168201915b505050505090506000610afd6116a5565b90506000815103610b12578192505050610b55565b600082511115610b47578082604051602001610b2f929190612b08565b60405160208183030381529060405292505050610b55565b610b50846116bc565b925050505b919050565b60095481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610bfc611232565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c6e5760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610c659190612071565b60405180910390fd5b610c77816112b9565b50565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610d4557507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610d555750610d5482611725565b5b9050919050565b600080610d688361178f565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ddb57826040517f7e273289000000000000000000000000000000000000000000000000000000008152600401610dd29190612107565b60405180910390fd5b80915050919050565b60006004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033905090565b610e3683838360016117cc565b505050565b610e55828260405180602001604052806000815250611991565b5050565b606060008203610ea0576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050610fb7565b600082905060005b60008214610ed2578080610ebb9061273a565b915050600a82610ecb9190612b5b565b9150610ea8565b60008167ffffffffffffffff811115610eee57610eed61217f565b5b6040519080825280601f01601f191660200182016040528015610f205781602001600182028036833780820191505090505b50905060008290505b60008614610faf57600a86610f3e9190612b8c565b6030610f4a9190612bbd565b60f81b8282610f5890612bf1565b92508281518110610f6c57610f6b612c1a565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a86610fa89190612b5b565b9550610f29565b819450505050505b919050565b80600660008481526020019081526020016000209081610fdc9190612a36565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161100c9190612107565b60405180910390a15050565b6000806110248461178f565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611066576110658184866119ad565b5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146110f7576110a86000856000806117cc565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461117a576001600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b846002600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b61123a610e21565b73ffffffffffffffffffffffffffffffffffffffff16611258610958565b73ffffffffffffffffffffffffffffffffffffffff16146112b75761127b610e21565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016112ae9190612071565b60405180910390fd5b565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113f057816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016113e79190612071565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516114e19190611f00565b60405180910390a3505050565b60008373ffffffffffffffffffffffffffffffffffffffff163b111561169f578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02611532610e21565b8685856040518563ffffffff1660e01b81526004016115549493929190612c9e565b6020604051808303816000875af192505050801561159057506040513d601f19601f8201168201806040525081019061158d9190612cff565b60015b611614573d80600081146115c0576040519150601f19603f3d011682016040523d82523d6000602084013e6115c5565b606091505b50600081510361160c57836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016116039190612071565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161461169d57836040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016116949190612071565b60405180910390fd5b505b50505050565b606060405180602001604052806000815250905090565b60606116c782610d5c565b5060006116d26116a5565b905060008151116116f2576040518060200160405280600081525061171d565b806116fc84611a71565b60405160200161170d929190612b08565b6040516020818303038152906040525b915050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b80806118055750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561193957600061181584610d5c565b9050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561188057508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b801561189357506118918184610b60565b155b156118d557826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016118cc9190612071565b60405180910390fd5b811561193757838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b836004600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b61199b8383611b3f565b6119a860008484846114ee565b505050565b6119b8838383611c38565b611a6c57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a2d57806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401611a249190612107565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401611a63929190612d2c565b60405180910390fd5b505050565b606060006001611a8084611cf9565b01905060008167ffffffffffffffff811115611a9f57611a9e61217f565b5b6040519080825280601f01601f191660200182016040528015611ad15781602001600182028036833780820191505090505b509050600082602001820190505b600115611b34578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611b2857611b27612b2c565b5b04945060008503611adf575b819350505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611bb15760006040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611ba89190612071565b60405180910390fd5b6000611bbf83836000611018565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611c335760006040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401611c2a9190612071565b60405180910390fd5b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611cf057508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611cb15750611cb08484610b60565b5b80611cef57508273ffffffffffffffffffffffffffffffffffffffff16611cd783610de4565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611d57577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611d4d57611d4c612b2c565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611d94576d04ee2d6d415b85acef81000000008381611d8a57611d89612b2c565b5b0492506020810190505b662386f26fc100008310611dc357662386f26fc100008381611db957611db8612b2c565b5b0492506010810190505b6305f5e1008310611dec576305f5e1008381611de257611de1612b2c565b5b0492506008810190505b6127108310611e11576127108381611e0757611e06612b2c565b5b0492506004810190505b60648310611e345760648381611e2a57611e29612b2c565b5b0492506002810190505b600a8310611e43576001810190505b80915050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611e9581611e60565b8114611ea057600080fd5b50565b600081359050611eb281611e8c565b92915050565b600060208284031215611ece57611ecd611e56565b5b6000611edc84828501611ea3565b91505092915050565b60008115159050919050565b611efa81611ee5565b82525050565b6000602082019050611f156000830184611ef1565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f55578082015181840152602081019050611f3a565b60008484015250505050565b6000601f19601f8301169050919050565b6000611f7d82611f1b565b611f878185611f26565b9350611f97818560208601611f37565b611fa081611f61565b840191505092915050565b60006020820190508181036000830152611fc58184611f72565b905092915050565b6000819050919050565b611fe081611fcd565b8114611feb57600080fd5b50565b600081359050611ffd81611fd7565b92915050565b60006020828403121561201957612018611e56565b5b600061202784828501611fee565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061205b82612030565b9050919050565b61206b81612050565b82525050565b60006020820190506120866000830184612062565b92915050565b61209581612050565b81146120a057600080fd5b50565b6000813590506120b28161208c565b92915050565b600080604083850312156120cf576120ce611e56565b5b60006120dd858286016120a3565b92505060206120ee85828601611fee565b9150509250929050565b61210181611fcd565b82525050565b600060208201905061211c60008301846120f8565b92915050565b60008060006060848603121561213b5761213a611e56565b5b6000612149868287016120a3565b935050602061215a868287016120a3565b925050604061216b86828701611fee565b9150509250925092565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6121b782611f61565b810181811067ffffffffffffffff821117156121d6576121d561217f565b5b80604052505050565b60006121e9611e4c565b90506121f582826121ae565b919050565b600067ffffffffffffffff8211156122155761221461217f565b5b61221e82611f61565b9050602081019050919050565b82818337600083830152505050565b600061224d612248846121fa565b6121df565b9050828152602081018484840111156122695761226861217a565b5b61227484828561222b565b509392505050565b600082601f83011261229157612290612175565b5b81356122a184826020860161223a565b91505092915050565b6000602082840312156122c0576122bf611e56565b5b600082013567ffffffffffffffff8111156122de576122dd611e5b565b5b6122ea8482850161227c565b91505092915050565b60006020828403121561230957612308611e56565b5b6000612317848285016120a3565b91505092915050565b61232981611ee5565b811461233457600080fd5b50565b60008135905061234681612320565b92915050565b6000806040838503121561236357612362611e56565b5b6000612371858286016120a3565b925050602061238285828601612337565b9150509250929050565b600067ffffffffffffffff8211156123a7576123a661217f565b5b6123b082611f61565b9050602081019050919050565b60006123d06123cb8461238c565b6121df565b9050828152602081018484840111156123ec576123eb61217a565b5b6123f784828561222b565b509392505050565b600082601f83011261241457612413612175565b5b81356124248482602086016123bd565b91505092915050565b6000806000806080858703121561244757612446611e56565b5b6000612455878288016120a3565b9450506020612466878288016120a3565b935050604061247787828801611fee565b925050606085013567ffffffffffffffff81111561249857612497611e5b565b5b6124a4878288016123ff565b91505092959194509250565b600080604083850312156124c7576124c6611e56565b5b60006124d5858286016120a3565b92505060206124e6858286016120a3565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061253757607f821691505b60208210810361254a576125496124f0565b5b50919050565b7f62617365555249206973206e6f74207365740000000000000000000000000000600082015250565b6000612586601283611f26565b915061259182612550565b602082019050919050565b600060208201905081810360008301526125b581612579565b9050919050565b600081905092915050565b60008190508160005260206000209050919050565b600081546125e98161251f565b6125f381866125bc565b9450600182166000811461260e576001811461262357612656565b60ff1983168652811515820286019350612656565b61262c856125c7565b60005b8381101561264e5781548189015260018201915060208101905061262f565b838801955050505b50505092915050565b600061266a82611f1b565b61267481856125bc565b9350612684818560208601611f37565b80840191505092915050565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000600082015250565b60006126c66005836125bc565b91506126d182612690565b600582019050919050565b60006126e882856125dc565b91506126f4828461265f565b91506126ff826126b9565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061274582611fcd565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036127775761277661270b565b5b600182019050919050565b600061278d82611fcd565b915061279883611fcd565b92508282039050818111156127b0576127af61270b565b5b92915050565b60006060820190506127cb6000830186612062565b6127d860208301856120f8565b6127e56040830184612062565b949350505050565b600081905092915050565b50565b60006128086000836127ed565b9150612813826127f8565b600082019050919050565b6000612829826127fb565b9150819050919050565b7f5472616e73666572206661696c65642e00000000000000000000000000000000600082015250565b6000612869601083611f26565b915061287482612833565b602082019050919050565b600060208201905081810360008301526128988161285c565b9050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026128ec7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826128af565b6128f686836128af565b95508019841693508086168417925050509392505050565b6000819050919050565b600061293361292e61292984611fcd565b61290e565b611fcd565b9050919050565b6000819050919050565b61294d83612918565b6129616129598261293a565b8484546128bc565b825550505050565b600090565b612976612969565b612981818484612944565b505050565b5b818110156129a55761299a60008261296e565b600181019050612987565b5050565b601f8211156129ea576129bb816125c7565b6129c48461289f565b810160208510156129d3578190505b6129e76129df8561289f565b830182612986565b50505b505050565b600082821c905092915050565b6000612a0d600019846008026129ef565b1980831691505092915050565b6000612a2683836129fc565b9150826002028217905092915050565b612a3f82611f1b565b67ffffffffffffffff811115612a5857612a5761217f565b5b612a62825461251f565b612a6d8282856129a9565b600060209050601f831160018114612aa05760008415612a8e578287015190505b612a988582612a1a565b865550612b00565b601f198416612aae866125c7565b60005b82811015612ad657848901518255600182019150602085019450602081019050612ab1565b86831015612af35784890151612aef601f8916826129fc565b8355505b6001600288020188555050505b505050505050565b6000612b14828561265f565b9150612b20828461265f565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612b6682611fcd565b9150612b7183611fcd565b925082612b8157612b80612b2c565b5b828204905092915050565b6000612b9782611fcd565b9150612ba283611fcd565b925082612bb257612bb1612b2c565b5b828206905092915050565b6000612bc882611fcd565b9150612bd383611fcd565b9250828201905080821115612beb57612bea61270b565b5b92915050565b6000612bfc82611fcd565b915060008203612c0f57612c0e61270b565b5b600182039050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000612c7082612c49565b612c7a8185612c54565b9350612c8a818560208601611f37565b612c9381611f61565b840191505092915050565b6000608082019050612cb36000830187612062565b612cc06020830186612062565b612ccd60408301856120f8565b8181036060830152612cdf8184612c65565b905095945050505050565b600081519050612cf981611e8c565b92915050565b600060208284031215612d1557612d14611e56565b5b6000612d2384828501612cea565b91505092915050565b6000604082019050612d416000830185612062565b612d4e60208301846120f8565b939250505056fea26469706673582212209ea8ef7d19ab7a8ce40d3ad849088828639bfcbde59e8406f0d0cba65a84bcf664736f6c634300081b0033