6080604052610bb860095566038d7ea4c68000600a556005600b556001600c55604051620031b7380380620031b783398181016040528101906200004491906200037b565b6040518060400160405280600a81526020017f536d7572662043617473000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f53430000000000000000000000000000000000000000000000000000000000008152508160029081620000c1919062000601565b508060039081620000d3919062000601565b50620000e46200012460201b60201c565b5f8190555050506200010b620000ff6200012c60201b60201c565b6200013360201b60201c565b80600d90816200011c919062000601565b5050620006e5565b5f6001905090565b5f33905090565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b62000257826200020f565b810181811067ffffffffffffffff821117156200027957620002786200021f565b5b80604052505050565b5f6200028d620001f6565b90506200029b82826200024c565b919050565b5f67ffffffffffffffff821115620002bd57620002bc6200021f565b5b620002c8826200020f565b9050602081019050919050565b5f5b83811015620002f4578082015181840152602081019050620002d7565b5f8484015250505050565b5f620003156200030f84620002a0565b62000282565b9050828152602081018484840111156200033457620003336200020b565b5b62000341848285620002d5565b509392505050565b5f82601f83011262000360576200035f62000207565b5b815162000372848260208601620002ff565b91505092915050565b5f60208284031215620003935762000392620001ff565b5b5f82015167ffffffffffffffff811115620003b357620003b262000203565b5b620003c18482850162000349565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200041957607f821691505b6020821081036200042f576200042e620003d4565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620004937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000456565b6200049f868362000456565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620004e9620004e3620004dd84620004b7565b620004c0565b620004b7565b9050919050565b5f819050919050565b6200050483620004c9565b6200051c6200051382620004f0565b84845462000462565b825550505050565b5f90565b6200053262000524565b6200053f818484620004f9565b505050565b5b8181101562000566576200055a5f8262000528565b60018101905062000545565b5050565b601f821115620005b5576200057f8162000435565b6200058a8462000447565b810160208510156200059a578190505b620005b2620005a98562000447565b83018262000544565b50505b505050565b5f82821c905092915050565b5f620005d75f1984600802620005ba565b1980831691505092915050565b5f620005f18383620005c6565b9150826002028217905092915050565b6200060c82620003ca565b67ffffffffffffffff8111156200062857620006276200021f565b5b62000634825462000401565b620006418282856200056a565b5f60209050601f83116001811462000677575f841562000662578287015190505b6200066e8582620005e4565b865550620006dd565b601f198416620006878662000435565b5f5b82811015620006b05784890151825560018201915060208501945060208101905062000689565b86831015620006d05784890151620006cc601f891682620005c6565b8355505b6001600288020188555050505b505050505050565b612ac480620006f35f395ff3fe6080604052600436106101ed575f3560e01c80636f8b44b01161010c578063b0ea18021161009f578063d5abeb011161006e578063d5abeb0114610667578063d755bf9914610691578063e985e9c5146106b9578063f2fde38b146106f5578063f968adbe1461071d576101ed565b8063b0ea1802146105bf578063b88d4fde146105e7578063c6f6f21614610603578063c87b56dd1461062b576101ed565b80638da5cb5b116100db5780638da5cb5b1461052757806395d89b4114610551578063a0712d681461057b578063a22cb46514610597576101ed565b80636f8b44b01461049757806370a08231146104bf578063715018a6146104fb5780637d8966e414610511576101ed565b806341784a5d1161018457806355f804b31161015357806355f804b3146103df5780636352211e146104075780636ad1fe02146104435780636c0360eb1461046d576101ed565b806341784a5d1461033557806342842e0e1461037157806344a0d68a1461038d578063485a68a3146103b5576101ed565b806313faede6116101c057806313faede6146102af57806318160ddd146102d957806323b872dd146103035780633ccfd60b1461031f576101ed565b806301ffc9a7146101f157806306fdde031461022d578063081812fc14610257578063095ea7b314610293575b5f80fd5b3480156101fc575f80fd5b5061021760048036038101906102129190611dad565b610747565b6040516102249190611df2565b60405180910390f35b348015610238575f80fd5b506102416107d8565b60405161024e9190611e95565b60405180910390f35b348015610262575f80fd5b5061027d60048036038101906102789190611ee8565b610868565b60405161028a9190611f52565b60405180910390f35b6102ad60048036038101906102a89190611f95565b6108e2565b005b3480156102ba575f80fd5b506102c3610a21565b6040516102d09190611fe2565b60405180910390f35b3480156102e4575f80fd5b506102ed610a27565b6040516102fa9190611fe2565b60405180910390f35b61031d60048036038101906103189190611ffb565b610a3c565b005b34801561032a575f80fd5b50610333610d4a565b005b348015610340575f80fd5b5061035b6004803603810190610356919061204b565b610dfd565b6040516103689190611fe2565b60405180910390f35b61038b60048036038101906103869190611ffb565b610e12565b005b348015610398575f80fd5b506103b360048036038101906103ae9190611ee8565b610e31565b005b3480156103c0575f80fd5b506103c9610e43565b6040516103d69190611fe2565b60405180910390f35b3480156103ea575f80fd5b50610405600480360381019061040091906120d7565b610e49565b005b348015610412575f80fd5b5061042d60048036038101906104289190611ee8565b610e67565b60405161043a9190611f52565b60405180910390f35b34801561044e575f80fd5b50610457610e78565b6040516104649190611df2565b60405180910390f35b348015610478575f80fd5b50610481610e8a565b60405161048e9190611e95565b60405180910390f35b3480156104a2575f80fd5b506104bd60048036038101906104b89190611ee8565b610f16565b005b3480156104ca575f80fd5b506104e560048036038101906104e0919061204b565b610f28565b6040516104f29190611fe2565b60405180910390f35b348015610506575f80fd5b5061050f610fdd565b005b34801561051c575f80fd5b50610525610ff0565b005b348015610532575f80fd5b5061053b611022565b6040516105489190611f52565b60405180910390f35b34801561055c575f80fd5b5061056561104a565b6040516105729190611e95565b60405180910390f35b61059560048036038101906105909190611ee8565b6110da565b005b3480156105a2575f80fd5b506105bd60048036038101906105b8919061214c565b6112c1565b005b3480156105ca575f80fd5b506105e560048036038101906105e09190611f95565b6113c7565b005b61060160048036038101906105fc91906122b2565b6113dd565b005b34801561060e575f80fd5b5061062960048036038101906106249190611ee8565b61144f565b005b348015610636575f80fd5b50610651600480360381019061064c9190611ee8565b611461565b60405161065e9190611e95565b60405180910390f35b348015610672575f80fd5b5061067b6114d4565b6040516106889190611fe2565b60405180910390f35b34801561069c575f80fd5b506106b760048036038101906106b29190611ee8565b6114da565b005b3480156106c4575f80fd5b506106df60048036038101906106da9190612332565b6114ec565b6040516106ec9190611df2565b60405180910390f35b348015610700575f80fd5b5061071b6004803603810190610716919061204b565b61157a565b005b348015610728575f80fd5b506107316115fc565b60405161073e9190611fe2565b60405180910390f35b5f6301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107a157506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107d15750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b6060600280546107e79061239d565b80601f01602080910402602001604051908101604052809291908181526020018280546108139061239d565b801561085e5780601f106108355761010080835404028352916020019161085e565b820191905f5260205f20905b81548152906001019060200180831161084157829003601f168201915b5050505050905090565b5f61087282611602565b6108a8576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60065f8381526020019081526020015f205f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6108ec82610e67565b90508073ffffffffffffffffffffffffffffffffffffffff1661090d61165c565b73ffffffffffffffffffffffffffffffffffffffff1614610970576109398161093461165c565b6114ec565b61096f576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b8260065f8481526020019081526020015f205f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b600a5481565b5f610a30611663565b6001545f540303905090565b5f610a468261166b565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aad576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80610ab88461172e565b91509150610ace8187610ac961165c565b611751565b610b1a57610ae386610ade61165c565b6114ec565b610b19576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610b7f576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b8c8686866001611794565b8015610b96575f82555b60055f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154600190039190508190555060055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815460010191905081905550610c5e85610c3a88888761179a565b7c0200000000000000000000000000000000000000000000000000000000176117c1565b60045f8681526020019081526020015f20819055505f7c0200000000000000000000000000000000000000000000000000000000841603610cda575f6001850190505f60045f8381526020019081526020015f205403610cd8575f548114610cd7578360045f8381526020019081526020015f20819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610d4286868660016117eb565b505050505050565b610d526117f1565b5f3373ffffffffffffffffffffffffffffffffffffffff1647604051610d77906123fa565b5f6040518083038185875af1925050503d805f8114610db1576040519150601f19603f3d011682016040523d82523d5f602084013e610db6565b606091505b5050905080610dfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df190612458565b60405180910390fd5b50565b600f602052805f5260405f205f915090505481565b610e2c83838360405180602001604052805f8152506113dd565b505050565b610e396117f1565b80600a8190555050565b600c5481565b610e516117f1565b8181600d9182610e6292919061261d565b505050565b5f610e718261166b565b9050919050565b600e5f9054906101000a900460ff1681565b600d8054610e979061239d565b80601f0160208091040260200160405190810160405280929190818152602001828054610ec39061239d565b8015610f0e5780601f10610ee557610100808354040283529160200191610f0e565b820191905f5260205f20905b815481529060010190602001808311610ef157829003601f168201915b505050505081565b610f1e6117f1565b8060098190555050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f8e576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054169050919050565b610fe56117f1565b610fee5f61186f565b565b610ff86117f1565b600e5f9054906101000a900460ff1615600e5f6101000a81548160ff021916908315150217905550565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600380546110599061239d565b80601f01602080910402602001604051908101604052809291908181526020018280546110859061239d565b80156110d05780601f106110a7576101008083540402835291602001916110d0565b820191905f5260205f20905b8154815290600101906020018083116110b357829003601f168201915b5050505050905090565b600e5f9054906101000a900460ff1661111f576040517f2d0a346e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80341480156111795750600c5482600f5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546111769190612717565b11155b61118557600a54611187565b5f5b9050600b548211156111c5576040517f845d1a2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81816111d1919061274a565b34101561120a576040517ff7760f2500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60095482611216610a27565b6112209190612717565b1115611258576040517f8a164f6300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81036112b35781600f5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546112ab9190612717565b925050819055505b6112bd3383611932565b5050565b8060075f6112cd61165c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff1661137661165c565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516113bb9190611df2565b60405180910390a35050565b6113cf6117f1565b6113d9828261194f565b5050565b6113e8848484610a3c565b5f8373ffffffffffffffffffffffffffffffffffffffff163b146114495761141284848484611af8565b611448576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b6114576117f1565b80600b8190555050565b606061146c82611602565b6114a2576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600d6114ad83611c43565b6040516020016114be92919061288f565b6040516020818303038152906040529050919050565b60095481565b6114e26117f1565b80600c8190555050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6115826117f1565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036115f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e79061292d565b60405180910390fd5b6115f98161186f565b50565b600b5481565b5f8161160c611663565b1115801561161a57505f5482105b801561165557505f7c010000000000000000000000000000000000000000000000000000000060045f8581526020019081526020015f205416145b9050919050565b5f33905090565b5f6001905090565b5f8082905080611679611663565b116116f7575f548110156116f6575f60045f8381526020019081526020015f205490505f7c01000000000000000000000000000000000000000000000000000000008216036116f4575b5f81036116ea5760045f836001900393508381526020019081526020015f205490506116c3565b8092505050611729565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b5f805f60065f8581526020019081526020015f2090508092508254915050915091565b5f73ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b5f8060e883901c905060e86117b0868684611c92565b62ffffff16901b9150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6117f9611c9a565b73ffffffffffffffffffffffffffffffffffffffff16611817611022565b73ffffffffffffffffffffffffffffffffffffffff161461186d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186490612995565b60405180910390fd5b565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61194b828260405180602001604052805f815250611ca1565b5050565b5f805490505f820361198d576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119995f848385611794565b600160406001901b17820260055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540192505081905550611a0b836119fc5f865f61179a565b611a0585611d38565b176117c1565b60045f8381526020019081526020015f20819055505f80838301905073ffffffffffffffffffffffffffffffffffffffff8516915082825f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4600183015b818114611aa55780835f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4600181019050611a6c565b505f8203611adf576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805f819055505050611af35f8483856117eb565b505050565b5f8373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611b1d61165c565b8786866040518563ffffffff1660e01b8152600401611b3f9493929190612a05565b6020604051808303815f875af1925050508015611b7a57506040513d601f19601f82011682018060405250810190611b779190612a63565b60015b611bf0573d805f8114611ba8576040519150601f19603f3d011682016040523d82523d5f602084013e611bad565b606091505b505f815103611be8576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b606060a060405101806040526020810391505f825281835b600115611c7d57600184039350600a81066030018453600a8104905080611c5b575b50828103602084039350808452505050919050565b5f9392505050565b5f33905090565b611cab838361194f565b5f8373ffffffffffffffffffffffffffffffffffffffff163b14611d33575f805490505f83820390505b611ce75f868380600101945086611af8565b611d1d576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b818110611cd557815f5414611d30575f80fd5b50505b505050565b5f6001821460e11b9050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611d8c81611d58565b8114611d96575f80fd5b50565b5f81359050611da781611d83565b92915050565b5f60208284031215611dc257611dc1611d50565b5b5f611dcf84828501611d99565b91505092915050565b5f8115159050919050565b611dec81611dd8565b82525050565b5f602082019050611e055f830184611de3565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611e42578082015181840152602081019050611e27565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611e6782611e0b565b611e718185611e15565b9350611e81818560208601611e25565b611e8a81611e4d565b840191505092915050565b5f6020820190508181035f830152611ead8184611e5d565b905092915050565b5f819050919050565b611ec781611eb5565b8114611ed1575f80fd5b50565b5f81359050611ee281611ebe565b92915050565b5f60208284031215611efd57611efc611d50565b5b5f611f0a84828501611ed4565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611f3c82611f13565b9050919050565b611f4c81611f32565b82525050565b5f602082019050611f655f830184611f43565b92915050565b611f7481611f32565b8114611f7e575f80fd5b50565b5f81359050611f8f81611f6b565b92915050565b5f8060408385031215611fab57611faa611d50565b5b5f611fb885828601611f81565b9250506020611fc985828601611ed4565b9150509250929050565b611fdc81611eb5565b82525050565b5f602082019050611ff55f830184611fd3565b92915050565b5f805f6060848603121561201257612011611d50565b5b5f61201f86828701611f81565b935050602061203086828701611f81565b925050604061204186828701611ed4565b9150509250925092565b5f602082840312156120605761205f611d50565b5b5f61206d84828501611f81565b91505092915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261209757612096612076565b5b8235905067ffffffffffffffff8111156120b4576120b361207a565b5b6020830191508360018202830111156120d0576120cf61207e565b5b9250929050565b5f80602083850312156120ed576120ec611d50565b5b5f83013567ffffffffffffffff81111561210a57612109611d54565b5b61211685828601612082565b92509250509250929050565b61212b81611dd8565b8114612135575f80fd5b50565b5f8135905061214681612122565b92915050565b5f806040838503121561216257612161611d50565b5b5f61216f85828601611f81565b925050602061218085828601612138565b9150509250929050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6121c482611e4d565b810181811067ffffffffffffffff821117156121e3576121e261218e565b5b80604052505050565b5f6121f5611d47565b905061220182826121bb565b919050565b5f67ffffffffffffffff8211156122205761221f61218e565b5b61222982611e4d565b9050602081019050919050565b828183375f83830152505050565b5f61225661225184612206565b6121ec565b9050828152602081018484840111156122725761227161218a565b5b61227d848285612236565b509392505050565b5f82601f83011261229957612298612076565b5b81356122a9848260208601612244565b91505092915050565b5f805f80608085870312156122ca576122c9611d50565b5b5f6122d787828801611f81565b94505060206122e887828801611f81565b93505060406122f987828801611ed4565b925050606085013567ffffffffffffffff81111561231a57612319611d54565b5b61232687828801612285565b91505092959194509250565b5f806040838503121561234857612347611d50565b5b5f61235585828601611f81565b925050602061236685828601611f81565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806123b457607f821691505b6020821081036123c7576123c6612370565b5b50919050565b5f81905092915050565b50565b5f6123e55f836123cd565b91506123f0826123d7565b5f82019050919050565b5f612404826123da565b9150819050919050565b7f5472616e73666572206661696c656400000000000000000000000000000000005f82015250565b5f612442600f83611e15565b915061244d8261240e565b602082019050919050565b5f6020820190508181035f83015261246f81612436565b9050919050565b5f82905092915050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026124dc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826124a1565b6124e686836124a1565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61252161251c61251784611eb5565b6124fe565b611eb5565b9050919050565b5f819050919050565b61253a83612507565b61254e61254682612528565b8484546124ad565b825550505050565b5f90565b612562612556565b61256d818484612531565b505050565b5b81811015612590576125855f8261255a565b600181019050612573565b5050565b601f8211156125d5576125a681612480565b6125af84612492565b810160208510156125be578190505b6125d26125ca85612492565b830182612572565b50505b505050565b5f82821c905092915050565b5f6125f55f19846008026125da565b1980831691505092915050565b5f61260d83836125e6565b9150826002028217905092915050565b6126278383612476565b67ffffffffffffffff8111156126405761263f61218e565b5b61264a825461239d565b612655828285612594565b5f601f831160018114612682575f8415612670578287013590505b61267a8582612602565b8655506126e1565b601f19841661269086612480565b5f5b828110156126b757848901358255600182019150602085019450602081019050612692565b868310156126d457848901356126d0601f8916826125e6565b8355505b6001600288020188555050505b50505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61272182611eb5565b915061272c83611eb5565b9250828201905080821115612744576127436126ea565b5b92915050565b5f61275482611eb5565b915061275f83611eb5565b925082820261276d81611eb5565b91508282048414831517612784576127836126ea565b5b5092915050565b5f81905092915050565b5f81546127a18161239d565b6127ab818661278b565b9450600182165f81146127c557600181146127da5761280c565b60ff198316865281151582028601935061280c565b6127e385612480565b5f5b83811015612804578154818901526001820191506020810190506127e5565b838801955050505b50505092915050565b5f61281f82611e0b565b612829818561278b565b9350612839818560208601611e25565b80840191505092915050565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000005f82015250565b5f61287960058361278b565b915061288482612845565b600582019050919050565b5f61289a8285612795565b91506128a68284612815565b91506128b18261286d565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612917602683611e15565b9150612922826128bd565b604082019050919050565b5f6020820190508181035f8301526129448161290b565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61297f602083611e15565b915061298a8261294b565b602082019050919050565b5f6020820190508181035f8301526129ac81612973565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f6129d7826129b3565b6129e181856129bd565b93506129f1818560208601611e25565b6129fa81611e4d565b840191505092915050565b5f608082019050612a185f830187611f43565b612a256020830186611f43565b612a326040830185611fd3565b8181036060830152612a4481846129cd565b905095945050505050565b5f81519050612a5d81611d83565b92915050565b5f60208284031215612a7857612a77611d50565b5b5f612a8584828501612a4f565b9150509291505056fea264697066735822122021e51d1c40497b4c1284befe07b98f721a61d164a9216ac8befd1af7b95ff09364736f6c6343000815003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d5152753131733552336932316f4c765764504161625a4b4d6d62504e7a526f7a79693765524c316e347455682f00000000000000000000