0x60806040523480156200001157600080fd5b506040518060400160405280600881526020017f4372617a794e46540000000000000000000000000000000000000000000000008152506040518060400160405280600881526020017f4372617a794e465400000000000000000000000000000000000000000000000081525081600090816200008f91906200042d565b508060019081620000a191906200042d565b5050506000600760006101000a81548160ff021916908315150217905550620000df620000d3620000e560201b60201c565b620000ed60201b60201c565b62000514565b600033905090565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200023557607f821691505b6020821081036200024b576200024a620001ed565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620002b57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000276565b620002c1868362000276565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200030e620003086200030284620002d9565b620002e3565b620002d9565b9050919050565b6000819050919050565b6200032a83620002ed565b62000342620003398262000315565b84845462000283565b825550505050565b600090565b620003596200034a565b620003668184846200031f565b505050565b5b818110156200038e57620003826000826200034f565b6001810190506200036c565b5050565b601f821115620003dd57620003a78162000251565b620003b28462000266565b81016020851015620003c2578190505b620003da620003d18562000266565b8301826200036b565b50505b505050565b600082821c905092915050565b60006200040260001984600802620003e2565b1980831691505092915050565b60006200041d8383620003ef565b9150826002028217905092915050565b6200043882620001b3565b67ffffffffffffffff811115620004545762000453620001be565b5b6200046082546200021c565b6200046d82828562000392565b600060209050601f831160018114620004a5576000841562000490578287015190505b6200049c85826200040f565b8655506200050c565b601f198416620004b58662000251565b60005b82811015620004df57848901518255600182019150602085019450602081019050620004b8565b86831015620004ff5784890151620004fb601f891682620003ef565b8355505b6001600288020188555050505b505050505050565b61340f80620005246000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806370a08231116100b8578063a22cb4651161007c578063a22cb46514610302578063b88d4fde1461031e578063c87b56dd1461033a578063cd279c7c1461036a578063e985e9c514610386578063f2fde38b146103b657610137565b806370a0823114610282578063715018a6146102b25780638456cb59146102bc5780638da5cb5b146102c657806395d89b41146102e457610137565b80633f4ba83a116100ff5780633f4ba83a146101f257806342842e0e146101fc57806342966c68146102185780635c975abb146102345780636352211e1461025257610137565b806301ffc9a71461013c57806306fdde031461016c578063081812fc1461018a578063095ea7b3146101ba57806323b872dd146101d6575b600080fd5b61015660048036038101906101519190612115565b6103d2565b604051610163919061215d565b60405180910390f35b6101746103e4565b6040516101819190612208565b60405180910390f35b6101a4600480360381019061019f9190612260565b610476565b6040516101b191906122ce565b60405180910390f35b6101d460048036038101906101cf9190612315565b6104bc565b005b6101f060048036038101906101eb9190612355565b6105d3565b005b6101fa610633565b005b61021660048036038101906102119190612355565b610645565b005b610232600480360381019061022d9190612260565b610665565b005b61023c6106c1565b604051610249919061215d565b60405180910390f35b61026c60048036038101906102679190612260565b6106d8565b60405161027991906122ce565b60405180910390f35b61029c600480360381019061029791906123a8565b61075e565b6040516102a991906123e4565b60405180910390f35b6102ba610815565b005b6102c4610829565b005b6102ce61083b565b6040516102db91906122ce565b60405180910390f35b6102ec610865565b6040516102f99190612208565b60405180910390f35b61031c6004803603810190610317919061242b565b6108f7565b005b610338600480360381019061033391906125a0565b61090d565b005b610354600480360381019061034f9190612260565b61096f565b6040516103619190612208565b60405180910390f35b610384600480360381019061037f91906126c4565b610981565b005b6103a0600480360381019061039b9190612733565b6109a2565b6040516103ad919061215d565b60405180910390f35b6103d060048036038101906103cb91906123a8565b610a36565b005b60006103dd82610ab9565b9050919050565b6060600080546103f3906127a2565b80601f016020809104026020016040519081016040528092919081815260200182805461041f906127a2565b801561046c5780601f106104415761010080835404028352916020019161046c565b820191906000526020600020905b81548152906001019060200180831161044f57829003601f168201915b5050505050905090565b600061048182610b1a565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104c7826106d8565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052e90612845565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610556610b65565b73ffffffffffffffffffffffffffffffffffffffff16148061058557506105848161057f610b65565b6109a2565b5b6105c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bb906128d7565b60405180910390fd5b6105ce8383610b6d565b505050565b6105e46105de610b65565b82610c26565b610623576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061a90612969565b60405180910390fd5b61062e838383610cbb565b505050565b61063b610fb4565b610643611032565b565b6106608383836040518060200160405280600081525061090d565b505050565b610676610670610b65565b82610c26565b6106b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ac90612969565b60405180910390fd5b6106be81611095565b50565b6000600760009054906101000a900460ff16905090565b6000806106e4836110a1565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610755576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074c906129d5565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c590612a67565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61081d610fb4565b61082760006110de565b565b610831610fb4565b6108396111a4565b565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610874906127a2565b80601f01602080910402602001604051908101604052809291908181526020018280546108a0906127a2565b80156108ed5780601f106108c2576101008083540402835291602001916108ed565b820191906000526020600020905b8154815290600101906020018083116108d057829003601f168201915b5050505050905090565b610909610902610b65565b8383611207565b5050565b61091e610918610b65565b83610c26565b61095d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095490612969565b60405180910390fd5b61096984848484611373565b50505050565b606061097a826113cf565b9050919050565b610989610fb4565b61099383836114e1565b61099d82826114ff565b505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610a3e610fb4565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa490612af9565b60405180910390fd5b610ab6816110de565b50565b6000634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610b135750610b12826115a3565b5b9050919050565b610b2381611685565b610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b59906129d5565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610be0836106d8565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610c32836106d8565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c745750610c7381856109a2565b5b80610cb257508373ffffffffffffffffffffffffffffffffffffffff16610c9a84610476565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610cdb826106d8565b73ffffffffffffffffffffffffffffffffffffffff1614610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2890612b8b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610da0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9790612c1d565b60405180910390fd5b610dad83838360016116c6565b8273ffffffffffffffffffffffffffffffffffffffff16610dcd826106d8565b73ffffffffffffffffffffffffffffffffffffffff1614610e23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1a90612b8b565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610faf83838360016116e0565b505050565b610fbc610b65565b73ffffffffffffffffffffffffffffffffffffffff16610fda61083b565b73ffffffffffffffffffffffffffffffffffffffff1614611030576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102790612c89565b60405180910390fd5b565b61103a6116e6565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61107e610b65565b60405161108b91906122ce565b60405180910390a1565b61109e8161172f565b50565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6111ac611782565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586111f0610b65565b6040516111fd91906122ce565b60405180910390a1565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611275576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126c90612cf5565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611366919061215d565b60405180910390a3505050565b61137e848484610cbb565b61138a848484846117cc565b6113c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c090612d87565b60405180910390fd5b50505050565b60606113da82610b1a565b60006006600084815260200190815260200160002080546113fa906127a2565b80601f0160208091040260200160405190810160405280929190818152602001828054611426906127a2565b80156114735780601f1061144857610100808354040283529160200191611473565b820191906000526020600020905b81548152906001019060200180831161145657829003601f168201915b505050505090506000611484611953565b905060008151036114995781925050506114dc565b6000825111156114ce5780826040516020016114b6929190612de3565b604051602081830303815290604052925050506114dc565b6114d78461196a565b925050505b919050565b6114fb8282604051806020016040528060008152506119d2565b5050565b61150882611685565b611547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153e90612e79565b60405180910390fd5b806006600084815260200190815260200160002090816115679190613045565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161159791906123e4565b60405180910390a15050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061166e57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061167e575061167d82611a2d565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166116a7836110a1565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6116ce611782565b6116da84848484611a97565b50505050565b50505050565b6116ee6106c1565b61172d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172490613163565b60405180910390fd5b565b61173881611a9d565b6000600660008381526020019081526020016000208054611758906127a2565b90501461177f5760066000828152602001908152602001600020600061177e919061204c565b5b50565b61178a6106c1565b156117ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c1906131cf565b60405180910390fd5b565b60006117ed8473ffffffffffffffffffffffffffffffffffffffff16611beb565b15611946578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611816610b65565b8786866040518563ffffffff1660e01b81526004016118389493929190613244565b6020604051808303816000875af192505050801561187457506040513d601f19601f8201168201806040525081019061187191906132a5565b60015b6118f6573d80600081146118a4576040519150601f19603f3d011682016040523d82523d6000602084013e6118a9565b606091505b5060008151036118ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e590612d87565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061194b565b600190505b949350505050565b606060405180602001604052806000815250905090565b606061197582610b1a565b600061197f611953565b9050600081511161199f57604051806020016040528060008152506119ca565b806119a984611c0e565b6040516020016119ba929190612de3565b6040516020818303038152906040525b915050919050565b6119dc8383611cdc565b6119e960008484846117cc565b611a28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1f90612d87565b60405180910390fd5b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b6000611aa8826106d8565b9050611ab88160008460016116c6565b611ac1826106d8565b90506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611be78160008460016116e0565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b606060006001611c1d84611ef9565b01905060008167ffffffffffffffff811115611c3c57611c3b612475565b5b6040519080825280601f01601f191660200182016040528015611c6e5781602001600182028036833780820191505090505b509050600082602001820190505b600115611cd1578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611cc557611cc46132d2565b5b04945060008503611c7c575b819350505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d429061334d565b60405180910390fd5b611d5481611685565b15611d94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8b906133b9565b60405180910390fd5b611da26000838360016116c6565b611dab81611685565b15611deb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de2906133b9565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611ef56000838360016116e0565b5050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611f57577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611f4d57611f4c6132d2565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611f94576d04ee2d6d415b85acef81000000008381611f8a57611f896132d2565b5b0492506020810190505b662386f26fc100008310611fc357662386f26fc100008381611fb957611fb86132d2565b5b0492506010810190505b6305f5e1008310611fec576305f5e1008381611fe257611fe16132d2565b5b0492506008810190505b6127108310612011576127108381612007576120066132d2565b5b0492506004810190505b60648310612034576064838161202a576120296132d2565b5b0492506002810190505b600a8310612043576001810190505b80915050919050565b508054612058906127a2565b6000825580601f1061206a5750612089565b601f016020900490600052602060002090810190612088919061208c565b5b50565b5b808211156120a557600081600090555060010161208d565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6120f2816120bd565b81146120fd57600080fd5b50565b60008135905061210f816120e9565b92915050565b60006020828403121561212b5761212a6120b3565b5b600061213984828501612100565b91505092915050565b60008115159050919050565b61215781612142565b82525050565b6000602082019050612172600083018461214e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156121b2578082015181840152602081019050612197565b60008484015250505050565b6000601f19601f8301169050919050565b60006121da82612178565b6121e48185612183565b93506121f4818560208601612194565b6121fd816121be565b840191505092915050565b6000602082019050818103600083015261222281846121cf565b905092915050565b6000819050919050565b61223d8161222a565b811461224857600080fd5b50565b60008135905061225a81612234565b92915050565b600060208284031215612276576122756120b3565b5b60006122848482850161224b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122b88261228d565b9050919050565b6122c8816122ad565b82525050565b60006020820190506122e360008301846122bf565b92915050565b6122f2816122ad565b81146122fd57600080fd5b50565b60008135905061230f816122e9565b92915050565b6000806040838503121561232c5761232b6120b3565b5b600061233a85828601612300565b925050602061234b8582860161224b565b9150509250929050565b60008060006060848603121561236e5761236d6120b3565b5b600061237c86828701612300565b935050602061238d86828701612300565b925050604061239e8682870161224b565b9150509250925092565b6000602082840312156123be576123bd6120b3565b5b60006123cc84828501612300565b91505092915050565b6123de8161222a565b82525050565b60006020820190506123f960008301846123d5565b92915050565b61240881612142565b811461241357600080fd5b50565b600081359050612425816123ff565b92915050565b60008060408385031215612442576124416120b3565b5b600061245085828601612300565b925050602061246185828601612416565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6124ad826121be565b810181811067ffffffffffffffff821117156124cc576124cb612475565b5b80604052505050565b60006124df6120a9565b90506124eb82826124a4565b919050565b600067ffffffffffffffff82111561250b5761250a612475565b5b612514826121be565b9050602081019050919050565b82818337600083830152505050565b600061254361253e846124f0565b6124d5565b90508281526020810184848401111561255f5761255e612470565b5b61256a848285612521565b509392505050565b600082601f8301126125875761258661246b565b5b8135612597848260208601612530565b91505092915050565b600080600080608085870312156125ba576125b96120b3565b5b60006125c887828801612300565b94505060206125d987828801612300565b93505060406125ea8782880161224b565b925050606085013567ffffffffffffffff81111561260b5761260a6120b8565b5b61261787828801612572565b91505092959194509250565b600067ffffffffffffffff82111561263e5761263d612475565b5b612647826121be565b9050602081019050919050565b600061266761266284612623565b6124d5565b90508281526020810184848401111561268357612682612470565b5b61268e848285612521565b509392505050565b600082601f8301126126ab576126aa61246b565b5b81356126bb848260208601612654565b91505092915050565b6000806000606084860312156126dd576126dc6120b3565b5b60006126eb86828701612300565b93505060206126fc8682870161224b565b925050604084013567ffffffffffffffff81111561271d5761271c6120b8565b5b61272986828701612696565b9150509250925092565b6000806040838503121561274a576127496120b3565b5b600061275885828601612300565b925050602061276985828601612300565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806127ba57607f821691505b6020821081036127cd576127cc612773565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600061282f602183612183565b915061283a826127d3565b604082019050919050565b6000602082019050818103600083015261285e81612822565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b60006128c1603d83612183565b91506128cc82612865565b604082019050919050565b600060208201905081810360008301526128f0816128b4565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000612953602d83612183565b915061295e826128f7565b604082019050919050565b6000602082019050818103600083015261298281612946565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006129bf601883612183565b91506129ca82612989565b602082019050919050565b600060208201905081810360008301526129ee816129b2565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612a51602983612183565b9150612a5c826129f5565b604082019050919050565b60006020820190508181036000830152612a8081612a44565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612ae3602683612183565b9150612aee82612a87565b604082019050919050565b60006020820190508181036000830152612b1281612ad6565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000612b75602583612183565b9150612b8082612b19565b604082019050919050565b60006020820190508181036000830152612ba481612b68565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612c07602483612183565b9150612c1282612bab565b604082019050919050565b60006020820190508181036000830152612c3681612bfa565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c73602083612183565b9150612c7e82612c3d565b602082019050919050565b60006020820190508181036000830152612ca281612c66565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000612cdf601983612183565b9150612cea82612ca9565b602082019050919050565b60006020820190508181036000830152612d0e81612cd2565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000612d71603283612183565b9150612d7c82612d15565b604082019050919050565b60006020820190508181036000830152612da081612d64565b9050919050565b600081905092915050565b6000612dbd82612178565b612dc78185612da7565b9350612dd7818560208601612194565b80840191505092915050565b6000612def8285612db2565b9150612dfb8284612db2565b91508190509392505050565b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b6000612e63602e83612183565b9150612e6e82612e07565b604082019050919050565b60006020820190508181036000830152612e9281612e56565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302612efb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612ebe565b612f058683612ebe565b95508019841693508086168417925050509392505050565b6000819050919050565b6000612f42612f3d612f388461222a565b612f1d565b61222a565b9050919050565b6000819050919050565b612f5c83612f27565b612f70612f6882612f49565b848454612ecb565b825550505050565b600090565b612f85612f78565b612f90818484612f53565b505050565b5b81811015612fb457612fa9600082612f7d565b600181019050612f96565b5050565b601f821115612ff957612fca81612e99565b612fd384612eae565b81016020851015612fe2578190505b612ff6612fee85612eae565b830182612f95565b50505b505050565b600082821c905092915050565b600061301c60001984600802612ffe565b1980831691505092915050565b6000613035838361300b565b9150826002028217905092915050565b61304e82612178565b67ffffffffffffffff81111561306757613066612475565b5b61307182546127a2565b61307c828285612fb8565b600060209050601f8311600181146130af576000841561309d578287015190505b6130a78582613029565b86555061310f565b601f1984166130bd86612e99565b60005b828110156130e5578489015182556001820191506020850194506020810190506130c0565b8683101561310257848901516130fe601f89168261300b565b8355505b6001600288020188555050505b505050505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b600061314d601483612183565b915061315882613117565b602082019050919050565b6000602082019050818103600083015261317c81613140565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006131b9601083612183565b91506131c482613183565b602082019050919050565b600060208201905081810360008301526131e8816131ac565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000613216826131ef565b61322081856131fa565b9350613230818560208601612194565b613239816121be565b840191505092915050565b600060808201905061325960008301876122bf565b61326660208301866122bf565b61327360408301856123d5565b8181036060830152613285818461320b565b905095945050505050565b60008151905061329f816120e9565b92915050565b6000602082840312156132bb576132ba6120b3565b5b60006132c984828501613290565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000613337602083612183565b915061334282613301565b602082019050919050565b600060208201905081810360008301526133668161332a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006133a3601c83612183565b91506133ae8261336d565b602082019050919050565b600060208201905081810360008301526133d281613396565b905091905056fea26469706673582212206fa3748ef8d86ed1543c4c2aad22a723ed3430f6396510cc821ab72b483288d064736f6c63430008120033