0x60806040523480156200001157600080fd5b506040518060400160405280601381526020017f636f70696c6f742d636f6c6c656374696f6e73000000000000000000000000008152506040518060400160405280600381526020017f63636c000000000000000000000000000000000000000000000000000000000081525081600090816200008f919062000412565b508060019081620000a1919062000412565b505050620000c4620000b8620000ca60201b60201c565b620000d260201b60201c565b620004f9565b600033905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200021a57607f821691505b60208210810362000230576200022f620001d2565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200029a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200025b565b620002a686836200025b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620002f3620002ed620002e784620002be565b620002c8565b620002be565b9050919050565b6000819050919050565b6200030f83620002d2565b620003276200031e82620002fa565b84845462000268565b825550505050565b600090565b6200033e6200032f565b6200034b81848462000304565b505050565b5b8181101562000373576200036760008262000334565b60018101905062000351565b5050565b601f821115620003c2576200038c8162000236565b62000397846200024b565b81016020851015620003a7578190505b620003bf620003b6856200024b565b83018262000350565b50505b505050565b600082821c905092915050565b6000620003e760001984600802620003c7565b1980831691505092915050565b6000620004028383620003d4565b9150826002028217905092915050565b6200041d8262000198565b67ffffffffffffffff811115620004395762000438620001a3565b5b62000445825462000201565b6200045282828562000377565b600060209050601f8311600181146200048a576000841562000475578287015190505b620004818582620003f4565b865550620004f1565b601f1984166200049a8662000236565b60005b82811015620004c4578489015182556001820191506020850194506020810190506200049d565b86831015620004e45784890151620004e0601f891682620003d4565b8355505b6001600288020188555050505b505050505050565b61328480620005096000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80636352211e116100ad578063a22cb46511610071578063a22cb465146102f2578063b88d4fde1461030e578063c87b56dd1461032a578063e985e9c51461035a578063f2fde38b1461038a57610121565b80636352211e1461024c57806370a082311461027c578063715018a6146102ac5780638da5cb5b146102b657806395d89b41146102d457610121565b8063162094c4116100f4578063162094c4146101c057806323b872dd146101dc57806342842e0e146101f857806342966c68146102145780634c2f6dd31461023057610121565b806301ffc9a71461012657806306fdde0314610156578063081812fc14610174578063095ea7b3146101a4575b600080fd5b610140600480360381019061013b9190611f82565b6103a6565b60405161014d9190611fca565b60405180910390f35b61015e610488565b60405161016b9190612075565b60405180910390f35b61018e600480360381019061018991906120cd565b61051a565b60405161019b919061213b565b60405180910390f35b6101be60048036038101906101b99190612182565b610560565b005b6101da60048036038101906101d591906122f7565b610677565b005b6101f660048036038101906101f19190612353565b61068d565b005b610212600480360381019061020d9190612353565b6106ed565b005b61022e600480360381019061022991906120cd565b61070d565b005b61024a600480360381019061024591906123a6565b610769565b005b610266600480360381019061026191906120cd565b61079a565b604051610273919061213b565b60405180910390f35b61029660048036038101906102919190612402565b610820565b6040516102a3919061243e565b60405180910390f35b6102b46108d7565b005b6102be6108eb565b6040516102cb919061213b565b60405180910390f35b6102dc610915565b6040516102e99190612075565b60405180910390f35b61030c60048036038101906103079190612485565b6109a7565b005b61032860048036038101906103239190612566565b6109bd565b005b610344600480360381019061033f91906120cd565b610a1f565b6040516103519190612075565b60405180910390f35b610374600480360381019061036f91906125e9565b610a31565b6040516103819190611fca565b60405180910390f35b6103a4600480360381019061039f9190612402565b610ac5565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061047157507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610481575061048082610b48565b5b9050919050565b60606000805461049790612658565b80601f01602080910402602001604051908101604052809291908181526020018280546104c390612658565b80156105105780601f106104e557610100808354040283529160200191610510565b820191906000526020600020905b8154815290600101906020018083116104f357829003601f168201915b5050505050905090565b600061052582610bb2565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061056b8261079a565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036105db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d2906126fb565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166105fa610bfd565b73ffffffffffffffffffffffffffffffffffffffff161480610629575061062881610623610bfd565b610a31565b5b610668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161065f9061278d565b60405180910390fd5b6106728383610c05565b505050565b61067f610cbe565b6106898282610d3c565b5050565b61069e610698610bfd565b82610da9565b6106dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d49061281f565b60405180910390fd5b6106e8838383610e3e565b505050565b610708838383604051806020016040528060008152506109bd565b505050565b61071e610718610bfd565b82610da9565b61075d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107549061281f565b60405180910390fd5b61076681611137565b50565b60006107756008611143565b90506107816008611151565b61078b8382611167565b6107958183610d3c565b505050565b6000806107a683611384565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610817576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080e9061288b565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610890576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108879061291d565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108df610cbe565b6108e960006113c1565b565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461092490612658565b80601f016020809104026020016040519081016040528092919081815260200182805461095090612658565b801561099d5780601f106109725761010080835404028352916020019161099d565b820191906000526020600020905b81548152906001019060200180831161098057829003601f168201915b5050505050905090565b6109b96109b2610bfd565b8383611487565b5050565b6109ce6109c8610bfd565b83610da9565b610a0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a049061281f565b60405180910390fd5b610a19848484846115f3565b50505050565b6060610a2a8261164f565b9050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610acd610cbe565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b33906129af565b60405180910390fd5b610b45816113c1565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610bbb81611761565b610bfa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf19061288b565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610c788361079a565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b610cc6610bfd565b73ffffffffffffffffffffffffffffffffffffffff16610ce46108eb565b73ffffffffffffffffffffffffffffffffffffffff1614610d3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3190612a1b565b60405180910390fd5b565b610d4582611761565b610d84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7b90612aad565b60405180910390fd5b80600660008481526020019081526020016000209081610da49190612c79565b505050565b600080610db58361079a565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610df75750610df68185610a31565b5b80610e3557508373ffffffffffffffffffffffffffffffffffffffff16610e1d8461051a565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610e5e8261079a565b73ffffffffffffffffffffffffffffffffffffffff1614610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90612dbd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1a90612e4f565b60405180910390fd5b610f3083838360016117a2565b8273ffffffffffffffffffffffffffffffffffffffff16610f508261079a565b73ffffffffffffffffffffffffffffffffffffffff1614610fa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9d90612dbd565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461113283838360016118c8565b505050565b611140816118ce565b50565b600081600001549050919050565b6001816000016000828254019250508190555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111cd90612ebb565b60405180910390fd5b6111df81611761565b1561121f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121690612f27565b60405180910390fd5b61122d6000838360016117a2565b61123681611761565b15611276576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126d90612f27565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46113806000838360016118c8565b5050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ec90612f93565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516115e69190611fca565b60405180910390a3505050565b6115fe848484610e3e565b61160a84848484611921565b611649576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164090613025565b60405180910390fd5b50505050565b606061165a82610bb2565b600060066000848152602001908152602001600020805461167a90612658565b80601f01602080910402602001604051908101604052809291908181526020018280546116a690612658565b80156116f35780601f106116c8576101008083540402835291602001916116f3565b820191906000526020600020905b8154815290600101906020018083116116d657829003601f168201915b505050505090506000611704611aa8565b9050600081510361171957819250505061175c565b60008251111561174e578082604051602001611736929190613081565b6040516020818303038152906040529250505061175c565b61175784611abf565b925050505b919050565b60008073ffffffffffffffffffffffffffffffffffffffff1661178383611384565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60018111156118c257600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146118365780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461182e91906130d4565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146118c15780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118b99190613108565b925050819055505b5b50505050565b50505050565b6118d781611b27565b60006006600083815260200190815260200160002080546118f790612658565b90501461191e5760066000828152602001908152602001600020600061191d9190611eb9565b5b50565b60006119428473ffffffffffffffffffffffffffffffffffffffff16611c75565b15611a9b578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261196b610bfd565b8786866040518563ffffffff1660e01b815260040161198d9493929190613191565b6020604051808303816000875af19250505080156119c957506040513d601f19601f820116820180604052508101906119c691906131f2565b60015b611a4b573d80600081146119f9576040519150601f19603f3d011682016040523d82523d6000602084013e6119fe565b606091505b506000815103611a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3a90613025565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611aa0565b600190505b949350505050565b606060405180602001604052806000815250905090565b6060611aca82610bb2565b6000611ad4611aa8565b90506000815111611af45760405180602001604052806000815250611b1f565b80611afe84611c98565b604051602001611b0f929190613081565b6040516020818303038152906040525b915050919050565b6000611b328261079a565b9050611b428160008460016117a2565b611b4b8261079a565b90506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611c718160008460016118c8565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b606060006001611ca784611d66565b01905060008167ffffffffffffffff811115611cc657611cc56121cc565b5b6040519080825280601f01601f191660200182016040528015611cf85781602001600182028036833780820191505090505b509050600082602001820190505b600115611d5b578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611d4f57611d4e61321f565b5b04945060008503611d06575b819350505050919050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611dc4577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611dba57611db961321f565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611e01576d04ee2d6d415b85acef81000000008381611df757611df661321f565b5b0492506020810190505b662386f26fc100008310611e3057662386f26fc100008381611e2657611e2561321f565b5b0492506010810190505b6305f5e1008310611e59576305f5e1008381611e4f57611e4e61321f565b5b0492506008810190505b6127108310611e7e576127108381611e7457611e7361321f565b5b0492506004810190505b60648310611ea15760648381611e9757611e9661321f565b5b0492506002810190505b600a8310611eb0576001810190505b80915050919050565b508054611ec590612658565b6000825580601f10611ed75750611ef6565b601f016020900490600052602060002090810190611ef59190611ef9565b5b50565b5b80821115611f12576000816000905550600101611efa565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611f5f81611f2a565b8114611f6a57600080fd5b50565b600081359050611f7c81611f56565b92915050565b600060208284031215611f9857611f97611f20565b5b6000611fa684828501611f6d565b91505092915050565b60008115159050919050565b611fc481611faf565b82525050565b6000602082019050611fdf6000830184611fbb565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561201f578082015181840152602081019050612004565b60008484015250505050565b6000601f19601f8301169050919050565b600061204782611fe5565b6120518185611ff0565b9350612061818560208601612001565b61206a8161202b565b840191505092915050565b6000602082019050818103600083015261208f818461203c565b905092915050565b6000819050919050565b6120aa81612097565b81146120b557600080fd5b50565b6000813590506120c7816120a1565b92915050565b6000602082840312156120e3576120e2611f20565b5b60006120f1848285016120b8565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612125826120fa565b9050919050565b6121358161211a565b82525050565b6000602082019050612150600083018461212c565b92915050565b61215f8161211a565b811461216a57600080fd5b50565b60008135905061217c81612156565b92915050565b6000806040838503121561219957612198611f20565b5b60006121a78582860161216d565b92505060206121b8858286016120b8565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122048261202b565b810181811067ffffffffffffffff82111715612223576122226121cc565b5b80604052505050565b6000612236611f16565b905061224282826121fb565b919050565b600067ffffffffffffffff821115612262576122616121cc565b5b61226b8261202b565b9050602081019050919050565b82818337600083830152505050565b600061229a61229584612247565b61222c565b9050828152602081018484840111156122b6576122b56121c7565b5b6122c1848285612278565b509392505050565b600082601f8301126122de576122dd6121c2565b5b81356122ee848260208601612287565b91505092915050565b6000806040838503121561230e5761230d611f20565b5b600061231c858286016120b8565b925050602083013567ffffffffffffffff81111561233d5761233c611f25565b5b612349858286016122c9565b9150509250929050565b60008060006060848603121561236c5761236b611f20565b5b600061237a8682870161216d565b935050602061238b8682870161216d565b925050604061239c868287016120b8565b9150509250925092565b600080604083850312156123bd576123bc611f20565b5b60006123cb8582860161216d565b925050602083013567ffffffffffffffff8111156123ec576123eb611f25565b5b6123f8858286016122c9565b9150509250929050565b60006020828403121561241857612417611f20565b5b60006124268482850161216d565b91505092915050565b61243881612097565b82525050565b6000602082019050612453600083018461242f565b92915050565b61246281611faf565b811461246d57600080fd5b50565b60008135905061247f81612459565b92915050565b6000806040838503121561249c5761249b611f20565b5b60006124aa8582860161216d565b92505060206124bb85828601612470565b9150509250929050565b600067ffffffffffffffff8211156124e0576124df6121cc565b5b6124e98261202b565b9050602081019050919050565b6000612509612504846124c5565b61222c565b905082815260208101848484011115612525576125246121c7565b5b612530848285612278565b509392505050565b600082601f83011261254d5761254c6121c2565b5b813561255d8482602086016124f6565b91505092915050565b600080600080608085870312156125805761257f611f20565b5b600061258e8782880161216d565b945050602061259f8782880161216d565b93505060406125b0878288016120b8565b925050606085013567ffffffffffffffff8111156125d1576125d0611f25565b5b6125dd87828801612538565b91505092959194509250565b60008060408385031215612600576125ff611f20565b5b600061260e8582860161216d565b925050602061261f8582860161216d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061267057607f821691505b60208210810361268357612682612629565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006126e5602183611ff0565b91506126f082612689565b604082019050919050565b60006020820190508181036000830152612714816126d8565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000612777603d83611ff0565b91506127828261271b565b604082019050919050565b600060208201905081810360008301526127a68161276a565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000612809602d83611ff0565b9150612814826127ad565b604082019050919050565b60006020820190508181036000830152612838816127fc565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612875601883611ff0565b91506128808261283f565b602082019050919050565b600060208201905081810360008301526128a481612868565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612907602983611ff0565b9150612912826128ab565b604082019050919050565b60006020820190508181036000830152612936816128fa565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612999602683611ff0565b91506129a48261293d565b604082019050919050565b600060208201905081810360008301526129c88161298c565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612a05602083611ff0565b9150612a10826129cf565b602082019050919050565b60006020820190508181036000830152612a34816129f8565b9050919050565b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b6000612a97602e83611ff0565b9150612aa282612a3b565b604082019050919050565b60006020820190508181036000830152612ac681612a8a565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302612b2f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612af2565b612b398683612af2565b95508019841693508086168417925050509392505050565b6000819050919050565b6000612b76612b71612b6c84612097565b612b51565b612097565b9050919050565b6000819050919050565b612b9083612b5b565b612ba4612b9c82612b7d565b848454612aff565b825550505050565b600090565b612bb9612bac565b612bc4818484612b87565b505050565b5b81811015612be857612bdd600082612bb1565b600181019050612bca565b5050565b601f821115612c2d57612bfe81612acd565b612c0784612ae2565b81016020851015612c16578190505b612c2a612c2285612ae2565b830182612bc9565b50505b505050565b600082821c905092915050565b6000612c5060001984600802612c32565b1980831691505092915050565b6000612c698383612c3f565b9150826002028217905092915050565b612c8282611fe5565b67ffffffffffffffff811115612c9b57612c9a6121cc565b5b612ca58254612658565b612cb0828285612bec565b600060209050601f831160018114612ce35760008415612cd1578287015190505b612cdb8582612c5d565b865550612d43565b601f198416612cf186612acd565b60005b82811015612d1957848901518255600182019150602085019450602081019050612cf4565b86831015612d365784890151612d32601f891682612c3f565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000612da7602583611ff0565b9150612db282612d4b565b604082019050919050565b60006020820190508181036000830152612dd681612d9a565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612e39602483611ff0565b9150612e4482612ddd565b604082019050919050565b60006020820190508181036000830152612e6881612e2c565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000612ea5602083611ff0565b9150612eb082612e6f565b602082019050919050565b60006020820190508181036000830152612ed481612e98565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000612f11601c83611ff0565b9150612f1c82612edb565b602082019050919050565b60006020820190508181036000830152612f4081612f04565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000612f7d601983611ff0565b9150612f8882612f47565b602082019050919050565b60006020820190508181036000830152612fac81612f70565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061300f603283611ff0565b915061301a82612fb3565b604082019050919050565b6000602082019050818103600083015261303e81613002565b9050919050565b600081905092915050565b600061305b82611fe5565b6130658185613045565b9350613075818560208601612001565b80840191505092915050565b600061308d8285613050565b91506130998284613050565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006130df82612097565b91506130ea83612097565b9250828203905081811115613102576131016130a5565b5b92915050565b600061311382612097565b915061311e83612097565b9250828201905080821115613136576131356130a5565b5b92915050565b600081519050919050565b600082825260208201905092915050565b60006131638261313c565b61316d8185613147565b935061317d818560208601612001565b6131868161202b565b840191505092915050565b60006080820190506131a6600083018761212c565b6131b3602083018661212c565b6131c0604083018561242f565b81810360608301526131d28184613158565b905095945050505050565b6000815190506131ec81611f56565b92915050565b60006020828403121561320857613207611f20565b5b6000613216848285016131dd565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fdfea2646970667358221220964e08f7025388cece8676d280578e30e7bf535adfbf0b5bc411df6e70548c9b64736f6c63430008120033