60e060405260016006556040518060400160405280601e8152602001601e815250600760008201518160000155602082015181600101555050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000be919062000514565b73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff168152503373ffffffffffffffffffffffffffffffffffffffff1660c09073ffffffffffffffffffffffffffffffffffffffff168152506000600960006101000a81548160ff0219169083151502179055506000600960016101000a81548160ff0219169083151502179055506001600960026101000a81548160ff0219169083151502179055503480156200018157600080fd5b506000339050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000283573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a9919062000514565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396306080516040518363ffffffff1660e01b8152600401620002e792919062000557565b6020604051808303816000875af115801562000307573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032d919062000514565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506009600a620003c891906200071e565b6305f5e100620003d991906200076f565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200047c91906200071e565b6305f5e1006200048d91906200076f565b6040516200049c9190620007cb565b60405180910390a3620007e8565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004dc82620004af565b9050919050565b620004ee81620004cf565b8114620004fa57600080fd5b50565b6000815190506200050e81620004e3565b92915050565b6000602082840312156200052d576200052c620004aa565b5b60006200053d84828501620004fd565b91505092915050565b6200055181620004cf565b82525050565b60006040820190506200056e600083018562000546565b6200057d602083018462000546565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200061257808604811115620005ea57620005e962000584565b5b6001851615620005fa5780820291505b80810290506200060a85620005b3565b9450620005ca565b94509492505050565b6000826200062d576001905062000700565b816200063d576000905062000700565b8160018114620006565760028114620006615762000697565b600191505062000700565b60ff84111562000676576200067562000584565b5b8360020a91508482111562000690576200068f62000584565b5b5062000700565b5060208310610133831016604e8410600b8410161715620006d15782820a905083811115620006cb57620006ca62000584565b5b62000700565b620006e08484846001620005c0565b92509050818404811115620006fa57620006f962000584565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200072b8262000707565b9150620007388362000711565b9250620007677fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200061b565b905092915050565b60006200077c8262000707565b9150620007898362000707565b9250828202620007998162000707565b91508282048414831517620007b357620007b262000584565b5b5092915050565b620007c58162000707565b82525050565b6000602082019050620007e26000830184620007ba565b92915050565b60805160a05160c05161346d620008506000396000818161059401528181610609015281816108960152818161128c01528181611545015261182e015260008181610dcd015281816119a201528181612070015261219601526000611da3015261346d6000f3fe6080604052600436106101445760003560e01c80638129fc1c116100b6578063aa4bde281161006f578063aa4bde2814610442578063c9567bf91461046d578063dd62ed3e14610484578063f1f5cd91146104c1578063f318bbfe146104ec578063f8d982b2146105155761014b565b80638129fc1c146103465780638da5cb5b1461035d57806395d89b41146103885780639686d322146103b35780639c0db5f3146103dc578063a9059cbb146104055761014b565b806323b872dd1161010857806323b872dd146102355780633049b58014610272578063313ce5671461029b57806370a08231146102c6578063715018a614610303578063743781321461031a5761014b565b806306fdde0314610150578063095ea7b31461017b57806309fb5639146101b85780630b78f9c0146101e157806318160ddd1461020a5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b5061016561053e565b604051610172919061232b565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d91906123eb565b61057b565b6040516101af9190612446565b60405180910390f35b3480156101c457600080fd5b506101df60048036038101906101da919061248d565b610592565b005b3480156101ed57600080fd5b50610208600480360381019061020391906124ba565b610607565b005b34801561021657600080fd5b5061021f610707565b60405161022c9190612509565b60405180910390f35b34801561024157600080fd5b5061025c60048036038101906102579190612524565b61072b565b6040516102699190612446565b60405180910390f35b34801561027e57600080fd5b5061029960048036038101906102949190612577565b610894565b005b3480156102a757600080fd5b506102b0610945565b6040516102bd91906125c0565b60405180910390f35b3480156102d257600080fd5b506102ed60048036038101906102e891906125db565b61094e565b6040516102fa9190612509565b60405180910390f35b34801561030f57600080fd5b50610318610997565b005b34801561032657600080fd5b5061032f610ae3565b60405161033d929190612608565b60405180910390f35b34801561035257600080fd5b5061035b610af5565b005b34801561036957600080fd5b50610372610ba8565b60405161037f9190612640565b60405180910390f35b34801561039457600080fd5b5061039d610bd1565b6040516103aa919061232b565b60405180910390f35b3480156103bf57600080fd5b506103da60048036038101906103d5919061265b565b610c0e565b005b3480156103e857600080fd5b5061040360048036038101906103fe9190612700565b610d2f565b005b34801561041157600080fd5b5061042c600480360381019061042791906123eb565b610fb4565b6040516104399190612446565b60405180910390f35b34801561044e57600080fd5b50610457610fcb565b6040516104649190612509565b60405180910390f35b34801561047957600080fd5b50610482610fea565b005b34801561049057600080fd5b506104ab60048036038101906104a69190612760565b61110c565b6040516104b89190612509565b60405180910390f35b3480156104cd57600080fd5b506104d6611193565b6040516104e39190612509565b60405180910390f35b3480156104f857600080fd5b50610513600480360381019061050e91906127f6565b611198565b005b34801561052157600080fd5b5061053c60048036038101906105379190612577565b61128a565b005b60606040518060400160405280600581526020017f454c4f4e41000000000000000000000000000000000000000000000000000000815250905090565b6000610588338484611363565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105ea57600080fd5b80600960026101000a81548160ff02191690831515021790555050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461065f57600080fd5b6007600001548211156106a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069e906128c8565b60405180910390fd5b6007600101548111156106ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106e6906128c8565b60405180910390fd5b81600760000181905550806007600101819055505050565b60006009600a6107179190612a4a565b6305f5e1006107269190612a95565b905090565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e390612b49565b60405180910390fd5b61087e843384600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108799190612b69565b611363565b61088984848461152c565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108ec57600080fd5b6000811180156108fc5750600481105b61093b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093290612c0f565b60405180910390fd5b8060068190555050565b60006009905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1c90612c7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60078060000154908060010154905082565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7a90612c7b565b60405180910390fd5b6002600b6000815480929190610b9890612c9b565b9190505510610ba657600080fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f24454c4f4e410000000000000000000000000000000000000000000000000000815250905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9390612c7b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cd457600080fd5b80600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db490612c7b565b60405180910390fd5b60005b83839050811015610fae577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16848483818110610e1557610e14612ce3565b5b9050602002016020810190610e2a91906125db565b73ffffffffffffffffffffffffffffffffffffffff1614158015610eb55750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff16848483818110610e8757610e86612ce3565b5b9050602002016020810190610e9c91906125db565b73ffffffffffffffffffffffffffffffffffffffff1614155b8015610f1457503073ffffffffffffffffffffffffffffffffffffffff16848483818110610ee657610ee5612ce3565b5b9050602002016020810190610efb91906125db565b73ffffffffffffffffffffffffffffffffffffffff1614155b610f1d57600080fd5b8160036000868685818110610f3557610f34612ce3565b5b9050602002016020810190610f4a91906125db565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610fa690612c9b565b915050610dc0565b50505050565b6000610fc133848461152c565b6001905092915050565b6009600a610fd99190612a4a565b621e8481610fe79190612a95565b81565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611078576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106f90612c7b565b60405180910390fd5b6002600b541480156110975750600960009054906101000a900460ff16155b6110d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cd90612d5e565b60405180910390fd5b43600a60008282546110e89190612d7e565b925050819055506001600960006101000a81548160ff021916908315150217905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b603181565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611226576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121d90612c7b565b60405180910390fd5b6002600b54108015611247575060026001600b546112449190612d7e565b10155b61125457611253612db2565b5b600b600081548092919061126790612c9b565b919050555080600a600082825461127e9190612d7e565b92505081905550505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112e257600080fd5b8060001080156112f3575060648111155b611332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132990612e53565b60405180910390fd5b6000606461133f3061094e565b8361134a9190612a95565b6113549190612ea2565b905061135f81611c7d565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c990612f45565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611441576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143890612fd7565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161151f9190612509565b60405180910390a3505050565b82600960009054906101000a900460ff168061159357507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b806115dd575073379a1f9981dc44ebbf12ade39ae5bddd3eaf9fa273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6115e657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611655576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164c90613069565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036116c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bb906130fb565b60405180910390fd5b60008211611707576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fe9061318d565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546117569190612b69565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117d9575073379a1f9981dc44ebbf12ade39ae5bddd3eaf9fa273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611825575073379a1f9981dc44ebbf12ade39ae5bddd3eaf9fa273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561187d57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611bbc57600960029054906101000a900460ff1680156118e85750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561193e5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119a057600061194f8585611f22565b905061195a81611f68565b43600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611a3b5750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ab2576009600a611a4e9190612a4a565b621e8481611a5c9190612a95565b82611a668561094e565b611a709190612d7e565b1115611ab1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa89061321f565b60405180910390fd5b5b6000611abd3061094e565b9050611ac98582612054565b15611ad857611ad781611c7d565b5b6000611ae48685612107565b90506000811115611bb9578084611afb9190612b69565b935080600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b4c9190612d7e565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611bb09190612509565b60405180910390a35b50505b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c0b9190612d7e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611c6f9190612509565b60405180910390a350505050565b6001600960016101000a81548160ff021916908315150217905550611ca18161221f565b905080611cc230737a250d5630b4cf539739df2c5dacb4c659f2488d61110c565b1015611d0457611d0330737a250d5630b4cf539739df2c5dacb4c659f2488d6009600a611cef9190612a4a565b6305f5e100611cfe9190612a95565b611363565b5b6000600267ffffffffffffffff811115611d2157611d2061323f565b5b604051908082528060200260200182016040528015611d4f5781602001602082028036833780820191505090505b5090503081600081518110611d6757611d66612ce3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611dd657611dd5612ce3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e66959493929190613371565b600060405180830381600087803b158015611e8057600080fd5b505af1158015611e94573d6000803e3d6000fd5b5050505060004790506000811115611f025773379a1f9981dc44ebbf12ade39ae5bddd3eaf9fa273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f00573d6000803e3d6000fd5b505b50506000600960016101000a81548160ff02191690831515021790555050565b6000611f2d83612288565b1580611f3f5750611f3d82612288565b155b611f4857600080fd5b611f5183612288565b15611f5e57819050611f62565b8290505b92915050565b600080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054148061200e5750600143611fbf9190612d7e565b600654600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461200c9190612d7e565b105b905080612050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204790613417565b60405180910390fd5b5050565b6000600960019054906101000a900460ff161580156120bf57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156120e557506009600a6120d49190612a4a565b620f42416120e29190612a95565b82115b80156120ff575043600a5460016120fc9190612d7e565b11155b905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806121635750600a544311155b156121885760646031836121779190612a95565b6121819190612ea2565b9050612219565b60646000600a54146121fe577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146121f2576007600101546121f9565b6007600001545b612201565b60195b8361220c9190612a95565b6122169190612ea2565b90505b92915050565b60006009600a61222f9190612a4a565b621e848161223d9190612a95565b8211612264576009600a6122519190612a4a565b620f424161225f9190612a95565b612281565b6009600a6122729190612a4a565b621e84816122809190612a95565b5b9050919050565b600080823b905060008111915050919050565b600081519050919050565b600082825260208201905092915050565b60005b838110156122d55780820151818401526020810190506122ba565b60008484015250505050565b6000601f19601f8301169050919050565b60006122fd8261229b565b61230781856122a6565b93506123178185602086016122b7565b612320816122e1565b840191505092915050565b6000602082019050818103600083015261234581846122f2565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061238282612357565b9050919050565b61239281612377565b811461239d57600080fd5b50565b6000813590506123af81612389565b92915050565b6000819050919050565b6123c8816123b5565b81146123d357600080fd5b50565b6000813590506123e5816123bf565b92915050565b600080604083850312156124025761240161234d565b5b6000612410858286016123a0565b9250506020612421858286016123d6565b9150509250929050565b60008115159050919050565b6124408161242b565b82525050565b600060208201905061245b6000830184612437565b92915050565b61246a8161242b565b811461247557600080fd5b50565b60008135905061248781612461565b92915050565b6000602082840312156124a3576124a261234d565b5b60006124b184828501612478565b91505092915050565b600080604083850312156124d1576124d061234d565b5b60006124df858286016123d6565b92505060206124f0858286016123d6565b9150509250929050565b612503816123b5565b82525050565b600060208201905061251e60008301846124fa565b92915050565b60008060006060848603121561253d5761253c61234d565b5b600061254b868287016123a0565b935050602061255c868287016123a0565b925050604061256d868287016123d6565b9150509250925092565b60006020828403121561258d5761258c61234d565b5b600061259b848285016123d6565b91505092915050565b600060ff82169050919050565b6125ba816125a4565b82525050565b60006020820190506125d560008301846125b1565b92915050565b6000602082840312156125f1576125f061234d565b5b60006125ff848285016123a0565b91505092915050565b600060408201905061261d60008301856124fa565b61262a60208301846124fa565b9392505050565b61263a81612377565b82525050565b60006020820190506126556000830184612631565b92915050565b600080604083850312156126725761267161234d565b5b6000612680858286016123a0565b925050602061269185828601612478565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f8401126126c0576126bf61269b565b5b8235905067ffffffffffffffff8111156126dd576126dc6126a0565b5b6020830191508360208202830111156126f9576126f86126a5565b5b9250929050565b6000806000604084860312156127195761271861234d565b5b600084013567ffffffffffffffff81111561273757612736612352565b5b612743868287016126aa565b9350935050602061275686828701612478565b9150509250925092565b600080604083850312156127775761277661234d565b5b6000612785858286016123a0565b9250506020612796858286016123a0565b9150509250929050565b60008083601f8401126127b6576127b561269b565b5b8235905067ffffffffffffffff8111156127d3576127d26126a0565b5b6020830191508360208202830111156127ef576127ee6126a5565b5b9250929050565b60008060006040848603121561280f5761280e61234d565b5b600084013567ffffffffffffffff81111561282d5761282c612352565b5b612839868287016127a0565b9350935050602061284c868287016123d6565b9150509250925092565b7f546f6b656e3a206f6e6c792066656520726564756374696f6e207065726d697460008201527f7465640000000000000000000000000000000000000000000000000000000000602082015250565b60006128b26023836122a6565b91506128bd82612856565b604082019050919050565b600060208201905081810360008301526128e1816128a5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561296e5780860481111561294a576129496128e8565b5b60018516156129595780820291505b808102905061296785612917565b945061292e565b94509492505050565b6000826129875760019050612a43565b816129955760009050612a43565b81600181146129ab57600281146129b5576129e4565b6001915050612a43565b60ff8411156129c7576129c66128e8565b5b8360020a9150848211156129de576129dd6128e8565b5b50612a43565b5060208310610133831016604e8410600b8410161715612a195782820a905083811115612a1457612a136128e8565b5b612a43565b612a268484846001612924565b92509050818404811115612a3d57612a3c6128e8565b5b81810290505b9392505050565b6000612a55826123b5565b9150612a60836125a4565b9250612a8d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612977565b905092915050565b6000612aa0826123b5565b9150612aab836123b5565b9250828202612ab9816123b5565b91508282048414831517612ad057612acf6128e8565b5b5092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612b336028836122a6565b9150612b3e82612ad7565b604082019050919050565b60006020820190508181036000830152612b6281612b26565b9050919050565b6000612b74826123b5565b9150612b7f836123b5565b9250828203905081811115612b9757612b966128e8565b5b92915050565b7f546f6b656e3a206f6e6c7920747261646520636f6f6c646f776e2076616c756560008201527f7320696e2072616e67652028302c3429207065726d69737369626c6500000000602082015250565b6000612bf9603c836122a6565b9150612c0482612b9d565b604082019050919050565b60006020820190508181036000830152612c2881612bec565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c656020836122a6565b9150612c7082612c2f565b602082019050919050565b60006020820190508181036000830152612c9481612c58565b9050919050565b6000612ca6826123b5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612cd857612cd76128e8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f546f6b656e3a2074726164696e6720616c7265616479206f70656e0000000000600082015250565b6000612d48601b836122a6565b9150612d5382612d12565b602082019050919050565b60006020820190508181036000830152612d7781612d3b565b9050919050565b6000612d89826123b5565b9150612d94836123b5565b9250828201905080821115612dac57612dab6128e8565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f546f6b656e3a206f6e6c792070657263656e742076616c75657320696e20726160008201527f6e67652028302c3130305d207065726d69737369626c65000000000000000000602082015250565b6000612e3d6037836122a6565b9150612e4882612de1565b604082019050919050565b60006020820190508181036000830152612e6c81612e30565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612ead826123b5565b9150612eb8836123b5565b925082612ec857612ec7612e73565b5b828204905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f2f6024836122a6565b9150612f3a82612ed3565b604082019050919050565b60006020820190508181036000830152612f5e81612f22565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612fc16022836122a6565b9150612fcc82612f65565b604082019050919050565b60006020820190508181036000830152612ff081612fb4565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006130536025836122a6565b915061305e82612ff7565b604082019050919050565b6000602082019050818103600083015261308281613046565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006130e56023836122a6565b91506130f082613089565b604082019050919050565b60006020820190508181036000830152613114816130d8565b9050919050565b7f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760008201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b60006131776030836122a6565b91506131828261311b565b604082019050919050565b600060208201905081810360008301526131a68161316a565b9050919050565b7f546f6b656e3a207472616e7366657220696d706c6965732076696f6c6174696f60008201527f6e206f66206d61782077616c6c65740000000000000000000000000000000000602082015250565b6000613209602f836122a6565b9150613214826131ad565b604082019050919050565b60006020820190508181036000830152613238816131fc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000819050919050565b6000819050919050565b600061329d6132986132938461326e565b613278565b6123b5565b9050919050565b6132ad81613282565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6132e881612377565b82525050565b60006132fa83836132df565b60208301905092915050565b6000602082019050919050565b600061331e826132b3565b61332881856132be565b9350613333836132cf565b8060005b8381101561336457815161334b88826132ee565b975061335683613306565b925050600181019050613337565b5085935050505092915050565b600060a08201905061338660008301886124fa565b61339360208301876132a4565b81810360408301526133a58186613313565b90506133b46060830185612631565b6133c160808301846124fa565b9695505050505050565b7f4d6178207478206672657175656e637920657863656564656421000000000000600082015250565b6000613401601a836122a6565b915061340c826133cb565b602082019050919050565b60006020820190508181036000830152613430816133f4565b905091905056fea2646970667358221220027d7358adf8ea557a6cb4666fbcfd3bf08e2204f49904d09651fc8ce0fdc50664736f6c63430008120033