60c06040526001600660156101000a81548160ff0219169083151502179055506000600660166101000a81548160ff0219169083151502179055503480156200004757600080fd5b506040518060400160405280600d81526020017f5055535345204f4e2042415345000000000000000000000000000000000000008152506040518060400160405280600581526020017f5055535345000000000000000000000000000000000000000000000000000000815250620000c46200066e60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600490816200018f919062000ac8565b508060059081620001a1919062000ac8565b505050734752ba5dbc23f44d87826276bf6fd6b1c372ad2473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200023a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000260919062000c19565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060805173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f0919062000c19565b6040518363ffffffff1660e01b81526004016200030f92919062000c5c565b6020604051808303816000875af11580156200032f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000355919062000c19565b600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055504260088190555042600781905550620004757fd57fad7b1074d80e615e63d982aa6be04bcaca97d35e59fdc58684115e2a6c3060001b7fd57fad7b1074d80e615e63d982aa6be04bcaca97d35e59fdc58684115e2a6c3060001b6200067660201b60201c565b620004bc33734752ba5dbc23f44d87826276bf6fd6b1c372ad247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200067d60201b60201c565b6200050330734752ba5dbc23f44d87826276bf6fd6b1c372ad247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200067d60201b60201c565b60006012600a62000515919062000e19565b633b9aca0062000526919062000e6a565b90503373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000658919062000ec6565b60405180910390a3806003819055505062001024565b600033905090565b8181555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620006ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006e69062000f6a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007589062001002565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000841919062000ec6565b60405180910390a3505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620008d057607f821691505b602082108103620008e657620008e562000888565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620009507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000911565b6200095c868362000911565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620009a9620009a36200099d8462000974565b6200097e565b62000974565b9050919050565b6000819050919050565b620009c58362000988565b620009dd620009d482620009b0565b8484546200091e565b825550505050565b600090565b620009f4620009e5565b62000a01818484620009ba565b505050565b5b8181101562000a295762000a1d600082620009ea565b60018101905062000a07565b5050565b601f82111562000a785762000a4281620008ec565b62000a4d8462000901565b8101602085101562000a5d578190505b62000a7562000a6c8562000901565b83018262000a06565b50505b505050565b600082821c905092915050565b600062000a9d6000198460080262000a7d565b1980831691505092915050565b600062000ab8838362000a8a565b9150826002028217905092915050565b62000ad3826200084e565b67ffffffffffffffff81111562000aef5762000aee62000859565b5b62000afb8254620008b7565b62000b0882828562000a2d565b600060209050601f83116001811462000b40576000841562000b2b578287015190505b62000b37858262000aaa565b86555062000ba7565b601f19841662000b5086620008ec565b60005b8281101562000b7a5784890151825560018201915060208501945060208101905062000b53565b8683101562000b9a578489015162000b96601f89168262000a8a565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000be18262000bb4565b9050919050565b62000bf38162000bd4565b811462000bff57600080fd5b50565b60008151905062000c138162000be8565b92915050565b60006020828403121562000c325762000c3162000baf565b5b600062000c428482850162000c02565b91505092915050565b62000c568162000bd4565b82525050565b600060408201905062000c73600083018562000c4b565b62000c82602083018462000c4b565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000d175780860481111562000cef5762000cee62000c89565b5b600185161562000cff5780820291505b808102905062000d0f8562000cb8565b945062000ccf565b94509492505050565b60008262000d32576001905062000e05565b8162000d42576000905062000e05565b816001811462000d5b576002811462000d665762000d9c565b600191505062000e05565b60ff84111562000d7b5762000d7a62000c89565b5b8360020a91508482111562000d955762000d9462000c89565b5b5062000e05565b5060208310610133831016604e8410600b841016171562000dd65782820a90508381111562000dd05762000dcf62000c89565b5b62000e05565b62000de5848484600162000cc5565b9250905081840481111562000dff5762000dfe62000c89565b5b81810290505b9392505050565b600060ff82169050919050565b600062000e268262000974565b915062000e338362000e0c565b925062000e627fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000d20565b905092915050565b600062000e778262000974565b915062000e848362000974565b925082820262000e948162000974565b9150828204841483151762000eae5762000ead62000c89565b5b5092915050565b62000ec08162000974565b82525050565b600060208201905062000edd600083018462000eb5565b92915050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600062000f5260248362000ee3565b915062000f5f8262000ef4565b604082019050919050565b6000602082019050818103600083015262000f858162000f43565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600062000fea60228362000ee3565b915062000ff78262000f8c565b604082019050919050565b600060208201905081810360008301526200101d8162000fdb565b9050919050565b60805160a051612c116200105860003960006119150152600081816106ad0152818161179f015261187c0152612c116000f3fe60806040526004361061016a5760003560e01c8063715018a6116100d1578063a457c2d71161008a578063cabcc71811610064578063cabcc7181461053f578063dd62ed3e1461056a578063e8a60dfd146105a7578063f2fde38b146105d257610171565b8063a457c2d714610488578063a9059cbb146104c5578063c7b122b11461050257610171565b8063715018a6146103c2578063751039fc146103d95780638a8c523c146103f05780638da5cb5b1461040757806395d89b4114610432578063982aaf6b1461045d57610171565b80633950935111610123578063395093511461029c5780633ce2ad49146102d957806344489ad11461030457806349bd5a5e1461032f5780636ddd17131461035a57806370a082311461038557610171565b806306fdde0314610176578063095ea7b3146101a15780631694505e146101de57806318160ddd1461020957806323b872dd14610234578063313ce5671461027157610171565b3661017157005b600080fd5b34801561018257600080fd5b5061018b6105fb565b6040516101989190611dcd565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c39190611e88565b61068d565b6040516101d59190611ee3565b60405180910390f35b3480156101ea57600080fd5b506101f36106ab565b6040516102009190611f5d565b60405180910390f35b34801561021557600080fd5b5061021e6106cf565b60405161022b9190611f87565b60405180910390f35b34801561024057600080fd5b5061025b60048036038101906102569190611fa2565b6106d9565b6040516102689190611ee3565b60405180910390f35b34801561027d57600080fd5b50610286610791565b6040516102939190612011565b60405180910390f35b3480156102a857600080fd5b506102c360048036038101906102be9190611e88565b61079a565b6040516102d09190611ee3565b60405180910390f35b3480156102e557600080fd5b506102ee610846565b6040516102fb9190611f87565b60405180910390f35b34801561031057600080fd5b5061031961084c565b6040516103269190611ee3565b60405180910390f35b34801561033b57600080fd5b5061034461085f565b604051610351919061203b565b60405180910390f35b34801561036657600080fd5b5061036f610885565b60405161037c9190611ee3565b60405180910390f35b34801561039157600080fd5b506103ac60048036038101906103a79190612056565b610898565b6040516103b99190611f87565b60405180910390f35b3480156103ce57600080fd5b506103d76108e1565b005b3480156103e557600080fd5b506103ee610a34565b005b3480156103fc57600080fd5b50610405610ae6565b005b34801561041357600080fd5b5061041c610bc9565b604051610429919061203b565b60405180910390f35b34801561043e57600080fd5b50610447610bf2565b6040516104549190611dcd565b60405180910390f35b34801561046957600080fd5b50610472610c84565b60405161047f919061209c565b60405180910390f35b34801561049457600080fd5b506104af60048036038101906104aa9190611e88565b610caf565b6040516104bc9190611ee3565b60405180910390f35b3480156104d157600080fd5b506104ec60048036038101906104e79190611e88565b610d9a565b6040516104f99190611ee3565b60405180910390f35b34801561050e57600080fd5b5061052960048036038101906105249190612056565b610db8565b6040516105369190611ee3565b60405180910390f35b34801561054b57600080fd5b50610554610dd8565b604051610561919061203b565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c91906120b7565b610dde565b60405161059e9190611f87565b60405180910390f35b3480156105b357600080fd5b506105bc610e65565b6040516105c99190611f87565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f49190612056565b610e6b565b005b60606004805461060a90612126565b80601f016020809104026020016040519081016040528092919081815260200182805461063690612126565b80156106835780601f1061065857610100808354040283529160200191610683565b820191906000526020600020905b81548152906001019060200180831161066657829003601f168201915b5050505050905090565b60006106a161069a61102c565b8484611034565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600354905090565b60006106e68484846111fd565b610786846106f261102c565b84600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061073c61102c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107819190612186565b611034565b600190509392505050565b60006012905090565b600061083c6107a761102c565b8484600260006107b561102c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461083791906121ba565b611034565b6001905092915050565b60075481565b600660169054906101000a900460ff1681565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600660159054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108e961102c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610976576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096d9061223a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a3c61102c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ac9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac09061223a565b60405180910390fd5b6000600660166101000a81548160ff021916908315150217905550565b610aee61102c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b729061223a565b60405180910390fd5b600060075414610bc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb7906122a6565b60405180910390fd5b42600781905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610c0190612126565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2d90612126565b8015610c7a5780601f10610c4f57610100808354040283529160200191610c7a565b820191906000526020600020905b815481529060010190602001808311610c5d57829003601f168201915b5050505050905090565b60007fd57fad7b1074d80e615e63d982aa6be04bcaca97d35e59fdc58684115e2a6c3060001b905090565b60008060026000610cbe61102c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610d7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7290612338565b60405180910390fd5b610d8f610d8661102c565b85858403611034565b600191505092915050565b6000610dae610da761102c565b84846111fd565b6001905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b61dead81565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60085481565b610e7361102c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef79061223a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f66906123ca565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a9061245c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611112576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611109906124ee565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111f09190611f87565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361126c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126390612580565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d290612612565b60405180910390fd5b6000811161131e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113159061267e565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146113b9576000600754036113b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113af906126ea565b60405180910390fd5b5b6000806007541190508080156114195750600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561146f5750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561166e57600660169054906101000a900460ff16156114e05760286114936106cf565b61149d9190612739565b8211156114df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d6906127b6565b60405180910390fd5b5b6000600660159054906101000a900460ff16801561150b5750600660149054906101000a900460ff16155b15611552576001600660146101000a81548160ff0219169083151502179055506115368585836116ea565b6000600660146101000a81548160ff0219169083151502179055505b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156115ab5750600081115b156115cf57606481846115be91906127d6565b6115c89190612739565b9050611649565b6000811180156116285750600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611648576064818461163b91906127d6565b6116459190612739565b90505b5b600081111561165e5761165d853083611a08565b5b808361166a9190612186565b9250505b8080156116c45750600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116d8576116d38383611c74565b6116e4565b6116e3848484611a08565b5b50505050565b60008111156119115760006116fe30610898565b90506000600267ffffffffffffffff81111561171d5761171c612818565b5b60405190808252806020026020018201604052801561174b5781602001602082028036833780820191505090505b509050308160008151811061176357611762612847565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061182c919061288b565b816001815181106118405761183f612847565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016118dc9594939291906129b1565b600060405180830381600087803b1580156118f657600080fd5b505af115801561190a573d6000803e3d6000fd5b5050505050505b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1647858560405160200161195e929190612a53565b60405160208183030381529060405260405161197a9190612ac6565b60006040518083038185875af1925050503d80600081146119b7576040519150601f19603f3d011682016040523d82523d6000602084013e6119bc565b606091505b50508091505080611a02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f990612b29565b60405180910390fd5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6e90612580565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ae6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611add90612612565b60405180910390fd5b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611b6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6490612bbb565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c0291906121ba565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611c669190611f87565b60405180910390a350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ce3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cda90612612565b60405180910390fd5b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d3291906121ba565b925050819055505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d77578082015181840152602081019050611d5c565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d9f82611d3d565b611da98185611d48565b9350611db9818560208601611d59565b611dc281611d83565b840191505092915050565b60006020820190508181036000830152611de78184611d94565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611e1f82611df4565b9050919050565b611e2f81611e14565b8114611e3a57600080fd5b50565b600081359050611e4c81611e26565b92915050565b6000819050919050565b611e6581611e52565b8114611e7057600080fd5b50565b600081359050611e8281611e5c565b92915050565b60008060408385031215611e9f57611e9e611def565b5b6000611ead85828601611e3d565b9250506020611ebe85828601611e73565b9150509250929050565b60008115159050919050565b611edd81611ec8565b82525050565b6000602082019050611ef86000830184611ed4565b92915050565b6000819050919050565b6000611f23611f1e611f1984611df4565b611efe565b611df4565b9050919050565b6000611f3582611f08565b9050919050565b6000611f4782611f2a565b9050919050565b611f5781611f3c565b82525050565b6000602082019050611f726000830184611f4e565b92915050565b611f8181611e52565b82525050565b6000602082019050611f9c6000830184611f78565b92915050565b600080600060608486031215611fbb57611fba611def565b5b6000611fc986828701611e3d565b9350506020611fda86828701611e3d565b9250506040611feb86828701611e73565b9150509250925092565b600060ff82169050919050565b61200b81611ff5565b82525050565b60006020820190506120266000830184612002565b92915050565b61203581611e14565b82525050565b6000602082019050612050600083018461202c565b92915050565b60006020828403121561206c5761206b611def565b5b600061207a84828501611e3d565b91505092915050565b6000819050919050565b61209681612083565b82525050565b60006020820190506120b1600083018461208d565b92915050565b600080604083850312156120ce576120cd611def565b5b60006120dc85828601611e3d565b92505060206120ed85828601611e3d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061213e57607f821691505b602082108103612151576121506120f7565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061219182611e52565b915061219c83611e52565b92508282039050818111156121b4576121b3612157565b5b92915050565b60006121c582611e52565b91506121d083611e52565b92508282019050808211156121e8576121e7612157565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612224602083611d48565b915061222f826121ee565b602082019050919050565b6000602082019050818103600083015261225381612217565b9050919050565b7f54726164696e6720697320616c726561647920656e61626c6564000000000000600082015250565b6000612290601a83611d48565b915061229b8261225a565b602082019050919050565b600060208201905081810360008301526122bf81612283565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612322602583611d48565b915061232d826122c6565b604082019050919050565b6000602082019050818103600083015261235181612315565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006123b4602683611d48565b91506123bf82612358565b604082019050919050565b600060208201905081810360008301526123e3816123a7565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612446602483611d48565b9150612451826123ea565b604082019050919050565b6000602082019050818103600083015261247581612439565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006124d8602283611d48565b91506124e38261247c565b604082019050919050565b60006020820190508181036000830152612507816124cb565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061256a602583611d48565b91506125758261250e565b604082019050919050565b600060208201905081810360008301526125998161255d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006125fc602383611d48565b9150612607826125a0565b604082019050919050565b6000602082019050818103600083015261262b816125ef565b9050919050565b7f616d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b6000612668601d83611d48565b915061267382612632565b602082019050919050565b600060208201905081810360008301526126978161265b565b9050919050565b7f54726164696e67206e6f7420656e61626c656420796574000000000000000000600082015250565b60006126d4601783611d48565b91506126df8261269e565b602082019050919050565b60006020820190508181036000830152612703816126c7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061274482611e52565b915061274f83611e52565b92508261275f5761275e61270a565b5b828204905092915050565b7f5472616e73666572206c696d6974206578636565646564000000000000000000600082015250565b60006127a0601783611d48565b91506127ab8261276a565b602082019050919050565b600060208201905081810360008301526127cf81612793565b9050919050565b60006127e182611e52565b91506127ec83611e52565b92508282026127fa81611e52565b9150828204841483151761281157612810612157565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061288581611e26565b92915050565b6000602082840312156128a1576128a0611def565b5b60006128af84828501612876565b91505092915050565b6000819050919050565b60006128dd6128d86128d3846128b8565b611efe565b611e52565b9050919050565b6128ed816128c2565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61292881611e14565b82525050565b600061293a838361291f565b60208301905092915050565b6000602082019050919050565b600061295e826128f3565b61296881856128fe565b93506129738361290f565b8060005b838110156129a457815161298b888261292e565b975061299683612946565b925050600181019050612977565b5085935050505092915050565b600060a0820190506129c66000830188611f78565b6129d360208301876128e4565b81810360408301526129e58186612953565b90506129f4606083018561202c565b612a016080830184611f78565b9695505050505050565b60008160601b9050919050565b6000612a2382612a0b565b9050919050565b6000612a3582612a18565b9050919050565b612a4d612a4882611e14565b612a2a565b82525050565b6000612a5f8285612a3c565b601482019150612a6f8284612a3c565b6014820191508190509392505050565b600081519050919050565b600081905092915050565b6000612aa082612a7f565b612aaa8185612a8a565b9350612aba818560208601611d59565b80840191505092915050565b6000612ad28284612a95565b915081905092915050565b7f455448205472616e73666572206661696c656400000000000000000000000000600082015250565b6000612b13601383611d48565b9150612b1e82612add565b602082019050919050565b60006020820190508181036000830152612b4281612b06565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612ba5602683611d48565b9150612bb082612b49565b604082019050919050565b60006020820190508181036000830152612bd481612b98565b905091905056fea26469706673582212206a660f833f0da50fbeb9088955b30a58bbd9cf3d43ce87b191c429f7ff1ec36464736f6c63430008160033