60806040526b033b2e3c9fd0803ce800000060085560085460001962000026919062000bc3565b60001962000035919062000c2a565b6009556040518060400160405280600a81526020017f53454c454e4120494e5500000000000000000000000000000000000000000000815250600b90805190602001906200008592919062000ada565b506040518060400160405280600681526020017f53454c454e410000000000000000000000000000000000000000000000000000815250600c9080519060200190620000d392919062000ada565b506009600d60006101000a81548160ff021916908360ff1602179055506002600e556008600f556002601055604b601155602160125560226013556021601455600e54601555600f546016556001601860156101000a81548160ff02191690831515021790555069d3c21bcecceda100000060195569152d02c7e14af6800000601a557372b75111d243cba98c8746ce261e390366616aa9601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073800c3c9b2b132543917cbb5a54a6e99d47e39a7b601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507316ce829696166c382e1dbbb5a1e23e4203bd06d1601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620002a557600080fd5b506000620002b862000aa960201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600954600160006200036d62000aa960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160056000620003c162000ab160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560006200042862000aa960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016005600073c633d6733b26fdf9f2209a91994f236291ae91b273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000732b2386f6da3784b6941c52b77fd313124b2af7b273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000737a38ed4b61f5484b28e75505dd019c94a1537fed73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160066000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506007601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200088f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008b5919062000ccf565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200091d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000943919062000ccf565b6040518363ffffffff1660e01b81526004016200096292919062000d12565b6020604051808303816000875af115801562000982573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009a8919062000ccf565b601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000a3962000aa960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60085460405162000a9a919062000d50565b60405180910390a35062000dd2565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b82805462000ae89062000d9c565b90600052602060002090601f01602090048101928262000b0c576000855562000b58565b82601f1062000b2757805160ff191683800117855562000b58565b8280016001018555821562000b58579182015b8281111562000b5757825182559160200191906001019062000b3a565b5b50905062000b67919062000b6b565b5090565b5b8082111562000b8657600081600090555060010162000b6c565b5090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000bd08262000b8a565b915062000bdd8362000b8a565b92508262000bf05762000bef62000b94565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000c378262000b8a565b915062000c448362000b8a565b92508282101562000c5a5762000c5962000bfb565b5b828203905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000c978262000c6a565b9050919050565b62000ca98162000c8a565b811462000cb557600080fd5b50565b60008151905062000cc98162000c9e565b92915050565b60006020828403121562000ce85762000ce762000c65565b5b600062000cf88482850162000cb8565b91505092915050565b62000d0c8162000c8a565b82525050565b600060408201905062000d29600083018562000d01565b62000d38602083018462000d01565b9392505050565b62000d4a8162000b8a565b82525050565b600060208201905062000d67600083018462000d3f565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000db557607f821691505b6020821081141562000dcc5762000dcb62000d6d565b5b50919050565b615e288062000de26000396000f3fe6080604052600436106102b25760003560e01c80637ca2ea4411610175578063a9059cbb116100dc578063dd62ed3e11610095578063eaeddcc51161006f578063eaeddcc514610ad5578063ec28438a14610b00578063f2fde38b14610b29578063fce589d814610b52576102b9565b8063dd62ed3e14610a30578063e7dad4f914610a6d578063e884269a14610aaa576102b9565b8063a9059cbb14610920578063b202886b1461095d578063b6fa37bc14610988578063c49b9a80146109b3578063d12a7688146109dc578063dcda6af314610a07576102b9565b80638ea5220f1161012e5780638ea5220f1461080e57806395d89b411461083957806398118cb4146108645780639b0e2e861461088f578063a071dcf4146108b8578063a457c2d7146108e3576102b9565b80637ca2ea44146107125780637d1db4a51461073b57806385141a771461076657806385d4787b1461079157806386f6c3c1146107ba5780638da5cb5b146107e3576102b9565b8063436560d0116102195780635342acb4116101d25780635342acb41461060457806370a0823114610641578063715018a61461067e57806371b9189c1461069557806375cb1bd1146106be57806375f0a874146106e7576102b9565b8063436560d0146105065780634549b0391461053157806348c54b9d1461056e57806349bd5a5e146105855780634a74bb02146105b05780634bf2c7c9146105db576102b9565b806323b872dd1161026b57806323b872dd146103d05780632d8381191461040d578063313ce5671461044a578063317d94531461047557806339509351146104a05780633bd5d173146104dd576102b9565b8063024022f7146102be57806306fdde03146102e7578063095ea7b31461031257806313114a9d1461034f5780631694505e1461037a57806318160ddd146103a5576102b9565b366102b957005b600080fd5b3480156102ca57600080fd5b506102e560048036038101906102e09190614887565b610b7d565b005b3480156102f357600080fd5b506102fc610c22565b604051610309919061496d565b60405180910390f35b34801561031e57600080fd5b5061033960048036038101906103349190614a23565b610cb4565b6040516103469190614a7e565b60405180910390f35b34801561035b57600080fd5b50610364610cd2565b6040516103719190614aa8565b60405180910390f35b34801561038657600080fd5b5061038f610cdc565b60405161039c9190614b22565b60405180910390f35b3480156103b157600080fd5b506103ba610d02565b6040516103c79190614aa8565b60405180910390f35b3480156103dc57600080fd5b506103f760048036038101906103f29190614b3d565b610d0c565b6040516104049190614a7e565b60405180910390f35b34801561041957600080fd5b50610434600480360381019061042f9190614b90565b610de5565b6040516104419190614aa8565b60405180910390f35b34801561045657600080fd5b5061045f610e53565b60405161046c9190614bd9565b60405180910390f35b34801561048157600080fd5b5061048a610e6a565b6040516104979190614aa8565b60405180910390f35b3480156104ac57600080fd5b506104c760048036038101906104c29190614a23565b610e7a565b6040516104d49190614a7e565b60405180910390f35b3480156104e957600080fd5b5061050460048036038101906104ff9190614b90565b610f2d565b005b34801561051257600080fd5b5061051b6110a8565b6040516105289190614aa8565b60405180910390f35b34801561053d57600080fd5b5061055860048036038101906105539190614c20565b6110ae565b6040516105659190614aa8565b60405180910390f35b34801561057a57600080fd5b50610583611132565b005b34801561059157600080fd5b5061059a6111e0565b6040516105a79190614c6f565b60405180910390f35b3480156105bc57600080fd5b506105c5611206565b6040516105d29190614a7e565b60405180910390f35b3480156105e757600080fd5b5061060260048036038101906105fd9190614b90565b611219565b005b34801561061057600080fd5b5061062b60048036038101906106269190614c8a565b6112b8565b6040516106389190614a7e565b60405180910390f35b34801561064d57600080fd5b5061066860048036038101906106639190614c8a565b61130e565b6040516106759190614aa8565b60405180910390f35b34801561068a57600080fd5b506106936113f9565b005b3480156106a157600080fd5b506106bc60048036038101906106b79190614887565b61154c565b005b3480156106ca57600080fd5b506106e560048036038101906106e09190614cb7565b6115f1565b005b3480156106f357600080fd5b506106fc61174e565b6040516107099190614c6f565b60405180910390f35b34801561071e57600080fd5b5061073960048036038101906107349190614b90565b611774565b005b34801561074757600080fd5b50610750611822565b60405161075d9190614aa8565b60405180910390f35b34801561077257600080fd5b5061077b611828565b6040516107889190614c6f565b60405180910390f35b34801561079d57600080fd5b506107b860048036038101906107b39190614e48565b61184e565b005b3480156107c657600080fd5b506107e160048036038101906107dc9190614e91565b6118f1565b005b3480156107ef57600080fd5b506107f8611a1f565b6040516108059190614c6f565b60405180910390f35b34801561081a57600080fd5b50610823611a48565b6040516108309190614c6f565b60405180910390f35b34801561084557600080fd5b5061084e611a6e565b60405161085b919061496d565b60405180910390f35b34801561087057600080fd5b50610879611b00565b6040516108869190614aa8565b60405180910390f35b34801561089b57600080fd5b506108b660048036038101906108b19190614e48565b611b06565b005b3480156108c457600080fd5b506108cd611ba9565b6040516108da9190614aa8565b60405180910390f35b3480156108ef57600080fd5b5061090a60048036038101906109059190614a23565b611baf565b6040516109179190614a7e565b60405180910390f35b34801561092c57600080fd5b5061094760048036038101906109429190614a23565b611c7c565b6040516109549190614a7e565b60405180910390f35b34801561096957600080fd5b50610972611c9a565b60405161097f9190614aa8565b60405180910390f35b34801561099457600080fd5b5061099d611ca0565b6040516109aa9190614c6f565b60405180910390f35b3480156109bf57600080fd5b506109da60048036038101906109d59190614f1e565b611cc6565b005b3480156109e857600080fd5b506109f1611daf565b6040516109fe9190614aa8565b60405180910390f35b348015610a1357600080fd5b50610a2e6004803603810190610a299190614fa1565b611db5565b005b348015610a3c57600080fd5b50610a576004803603810190610a529190615022565b611f1e565b604051610a649190614aa8565b60405180910390f35b348015610a7957600080fd5b50610a946004803603810190610a8f9190614c8a565b611fa5565b604051610aa19190614a7e565b60405180910390f35b348015610ab657600080fd5b50610abf611ffb565b604051610acc9190614aa8565b60405180910390f35b348015610ae157600080fd5b50610aea612001565b604051610af79190614aa8565b60405180910390f35b348015610b0c57600080fd5b50610b276004803603810190610b229190614b90565b612007565b005b348015610b3557600080fd5b50610b506004803603810190610b4b9190614c8a565b6120b5565b005b348015610b5e57600080fd5b50610b67612277565b604051610b749190614aa8565b60405180910390f35b610b8561227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c09906150ae565b60405180910390fd5b610c1e82826000612285565b5050565b6060600b8054610c31906150fd565b80601f0160208091040260200160405190810160405280929190818152602001828054610c5d906150fd565b8015610caa5780601f10610c7f57610100808354040283529160200191610caa565b820191906000526020600020905b815481529060010190602001808311610c8d57829003601f168201915b5050505050905090565b6000610cc8610cc161227d565b8484612330565b6001905092915050565b6000600a54905090565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600854905090565b6000610d198484846124fb565b610dda84610d2561227d565b610dd585604051806060016040528060288152602001615da660289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610d8b61227d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b959092919063ffffffff16565b612330565b600190509392505050565b6000600954821115610e2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e23906151a1565b60405180910390fd5b6000610e36612bf9565b9050610e4b8184612c2490919063ffffffff16565b915050919050565b6000600d60009054906101000a900460ff16905090565b6000610e753061130e565b905090565b6000610f23610e8761227d565b84610f1e8560036000610e9861227d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b612330565b6001905092915050565b6000610f3761227d565b9050600660008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610fc6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbd90615233565b60405180910390fd5b6000610fd183612ccc565b5050505050905061102a81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061108281600954612d2890919063ffffffff16565b60098190555061109d83600a54612c6e90919063ffffffff16565b600a81905550505050565b60135481565b60006008548311156110f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ec9061529f565b60405180910390fd5b8161111557600061110584612ccc565b505050505090508091505061112c565b600061112084612ccc565b50505050915050809150505b92915050565b61113a61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111be906150ae565b60405180910390fd5b60006111d23061130e565b90506111dd81612d72565b50565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601860159054906101000a900460ff1681565b61122161227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a5906150ae565b60405180910390fd5b8060108190555050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156113a957600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506113f4565b6113f1600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610de5565b90505b919050565b61140161227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461148e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611485906150ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61155461227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d8906150ae565b60405180910390fd5b6115ed82826001612285565b5050565b6115f961227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167d906150ae565b60405180910390fd5b82601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61177c61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611809576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611800906150ae565b60405180910390fd5b633b9aca008161181991906152ee565b601a8190555050565b60195481565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61185661227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146118e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118da906150ae565b60405180910390fd5b6118ee816001612f7c565b50565b6118f961227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197d906150ae565b60405180910390fd5b60646119ad8361199f8688612c6e90919063ffffffff16565b612c6e90919063ffffffff16565b146119ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e490615394565b60405180910390fd5b85600e8190555083601281905550826013819055508160148190555084600f8190555080601181905550505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600c8054611a7d906150fd565b80601f0160208091040260200160405190810160405280929190818152602001828054611aa9906150fd565b8015611af65780601f10611acb57610100808354040283529160200191611af6565b820191906000526020600020905b815481529060010190602001808311611ad957829003601f168201915b5050505050905090565b600f5481565b611b0e61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b92906150ae565b60405180910390fd5b611ba6816000612f7c565b50565b600e5481565b6000611c72611bbc61227d565b84611c6d85604051806060016040528060258152602001615dce6025913960036000611be661227d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b959092919063ffffffff16565b612330565b6001905092915050565b6000611c90611c8961227d565b84846124fb565b6001905092915050565b60115481565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611cce61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d52906150ae565b60405180910390fd5b80601860156101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15981604051611da49190614a7e565b60405180910390a150565b601a5481565b611dbd61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e41906150ae565b60405180910390fd5b6000828290508585905014611e94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8b90615400565b60405180910390fd5b5b84849050811015611f1757611f03611eab61227d565b868684818110611ebe57611ebd615420565b5b9050602002016020810190611ed39190614c8a565b633b9aca00868686818110611eeb57611eea615420565b5b90506020020135611efc91906152ee565b6000613073565b600181611f10919061544f565b9050611e95565b5050505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60145481565b60125481565b61200f61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461209c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612093906150ae565b60405180910390fd5b633b9aca00816120ac91906152ee565b60198190555050565b6120bd61227d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461214a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612141906150ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156121ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121b190615517565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60105481565b600033905090565b60005b8383905081101561232a5760008484838181106122a8576122a7615420565b5b90506020020160208101906122bd9190614c8a565b905082600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050808061232290615537565b915050612288565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156123a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612397906155f2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612410576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240790615684565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516124ee9190614aa8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561256b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256290615716565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156125db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125d2906157a8565b60405180910390fd5b6000811161261e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126159061583a565b60405180910390fd5b612626611a1f565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156126945750612664611a1f565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156126ee5750601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561273957601954811115612738576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161272f906158cc565b60405180910390fd5b5b60006127443061130e565b905060195481106127555760195490505b601a5481101580156127745750601860149054906101000a900460ff16155b80156127ce5750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156127e65750601860159054906101000a900460ff165b1561285c57601a5481106127fa57601a5490505b600061282460646128166011548561338490919063ffffffff16565b612c2490919063ffffffff16565b9050600061283b8284612d2890919063ffffffff16565b905060008111156128505761284f816133ff565b5b61285982612d72565b50505b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146129cc57600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561293e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129359061595e565b60405180910390fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156129cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c29061595e565b60405180910390fd5b5b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612a725750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612ab15750612a81611a1f565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015612af05750612ac0611a1f565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b9050808015612b0157506000601054115b15612b81576000606460105485612b1891906152ee565b612b2291906159ad565b90506000811115612b5d57612b5c86601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000613073565b5b612b7b8686612b758488612d2890919063ffffffff16565b85613073565b50612b8e565b612b8d85858584613073565b5b5050505050565b6000838311158290612bdd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bd4919061496d565b60405180910390fd5b5060008385612bec91906159de565b9050809150509392505050565b6000806000612c066134d5565b91509150612c1d8183612c2490919063ffffffff16565b9250505090565b6000612c6683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613788565b905092915050565b6000808284612c7d919061544f565b905083811015612cc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb990615a5e565b60405180910390fd5b8091505092915050565b6000806000806000806000806000612ce38a6137eb565b9250925092506000806000612d018d8686612cfc612bf9565b613845565b9250925092508282828888889b509b509b509b509b509b5050505050505091939550919395565b6000612d6a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612b95565b905092915050565b6001601860146101000a81548160ff021916908315150217905550612d96816138ce565b60004790506000612dc56064612db76012548561338490919063ffffffff16565b612c2490919063ffffffff16565b90506000612df16064612de36013548661338490919063ffffffff16565b612c2490919063ffffffff16565b90506000612e1d6064612e0f6014548761338490919063ffffffff16565b612c2490919063ffffffff16565b9050601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015612e87573d6000803e3d6000fd5b50601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612ef0573d6000803e3d6000fd5b50601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612f59573d6000803e3d6000fd5b50505050506000601860146101000a81548160ff02191690831515021790555050565b60005b825181101561306e576000838281518110612f9d57612f9c615420565b5b60200260200101519050821561300a576001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061305a565b600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690555b50808061306690615537565b915050612f7f565b505050565b8061308157613080613b11565b5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156131245750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561313957613134848484613b54565b613370565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156131dc5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156131f1576131ec848484613db4565b61336f565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156132955750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156132aa576132a5848484614014565b61336e565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561334c5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156133615761335c8484846141df565b61336d565b61336c848484614014565b5b5b5b5b8061337e5761337d6144d4565b5b50505050565b60008083141561339757600090506133f9565b600082846133a591906152ee565b90508284826133b491906159ad565b146133f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133eb90615af0565b60405180910390fd5b809150505b92915050565b6001601860146101000a81548160ff0219169083151502179055506000613430600283612c2490919063ffffffff16565b905060006134478284612d2890919063ffffffff16565b90506000479050613457836138ce565b600061346c8247612d2890919063ffffffff16565b905061347883826144e8565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618482856040516134ab93929190615b10565b60405180910390a1505050506000601860146101000a81548160ff02191690831515021790555050565b600080600060095490506000600854905060005b60078054905081101561374b5782600160006007848154811061350f5761350e615420565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411806135fd575081600260006007848154811061359557613594615420565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b156136145760095460085494509450505050613784565b6136a4600160006007848154811061362f5761362e615420565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612d2890919063ffffffff16565b925061373660026000600784815481106136c1576136c0615420565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612d2890919063ffffffff16565b9150808061374390615537565b9150506134e9565b50613763600854600954612c2490919063ffffffff16565b82101561377b57600954600854935093505050613784565b81819350935050505b9091565b600080831182906137cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137c6919061496d565b60405180910390fd5b50600083856137de91906159ad565b9050809150509392505050565b6000806000806137fa856145cd565b90506000613807866145fe565b9050600061383082613822858a612d2890919063ffffffff16565b612d2890919063ffffffff16565b90508083839550955095505050509193909250565b60008060008061385e858961338490919063ffffffff16565b90506000613875868961338490919063ffffffff16565b9050600061388c878961338490919063ffffffff16565b905060006138b5826138a78587612d2890919063ffffffff16565b612d2890919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000600267ffffffffffffffff8111156138eb576138ea614d0a565b5b6040519080825280602002602001820160405280156139195781602001602082028036833780820191505090505b509050308160008151811061393157613930615420565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139fc9190615b5c565b81600181518110613a1057613a0f615420565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613a7730601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612330565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613adb959493929190615c82565b600060405180830381600087803b158015613af557600080fd5b505af1158015613b09573d6000803e3d6000fd5b505050505050565b6000600e54148015613b2557506000600f54145b15613b2f57613b52565b600e54601581905550600f546016819055506000600e819055506000600f819055505b565b600080600080600080613b6687612ccc565b955095509550955095509550613bc487600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c5986600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613cee85600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613d3a8161462f565b613d4484836147d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051613da19190614aa8565b60405180910390a3505050505050505050565b600080600080600080613dc687612ccc565b955095509550955095509550613e2486600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613eb983600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613f4e85600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613f9a8161462f565b613fa484836147d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516140019190614aa8565b60405180910390a3505050505050505050565b60008060008060008061402687612ccc565b95509550955095509550955061408486600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061411985600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506141658161462f565b61416f84836147d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516141cc9190614aa8565b60405180910390a3505050505050505050565b6000806000806000806141f187612ccc565b95509550955095509550955061424f87600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506142e486600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d2890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061437983600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061440e85600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061445a8161462f565b61446484836147d4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516144c19190614aa8565b60405180910390a3505050505050505050565b601554600e81905550601654600f81905550565b61451530601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612330565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080614561611a1f565b426040518863ffffffff1660e01b815260040161458396959493929190615cdc565b60606040518083038185885af11580156145a1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906145c69190615d52565b5050505050565b60006145f760646145e9600e548561338490919063ffffffff16565b612c2490919063ffffffff16565b9050919050565b6000614628606461461a600f548561338490919063ffffffff16565b612c2490919063ffffffff16565b9050919050565b6000614639612bf9565b90506000614650828461338490919063ffffffff16565b90506146a481600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156147cf5761478b83600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c6e90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050565b6147e982600954612d2890919063ffffffff16565b60098190555061480481600a54612c6e90919063ffffffff16565b600a819055505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261484757614846614822565b5b8235905067ffffffffffffffff81111561486457614863614827565b5b6020830191508360208202830111156148805761487f61482c565b5b9250929050565b6000806020838503121561489e5761489d614818565b5b600083013567ffffffffffffffff8111156148bc576148bb61481d565b5b6148c885828601614831565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561490e5780820151818401526020810190506148f3565b8381111561491d576000848401525b50505050565b6000601f19601f8301169050919050565b600061493f826148d4565b61494981856148df565b93506149598185602086016148f0565b61496281614923565b840191505092915050565b600060208201905081810360008301526149878184614934565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006149ba8261498f565b9050919050565b6149ca816149af565b81146149d557600080fd5b50565b6000813590506149e7816149c1565b92915050565b6000819050919050565b614a00816149ed565b8114614a0b57600080fd5b50565b600081359050614a1d816149f7565b92915050565b60008060408385031215614a3a57614a39614818565b5b6000614a48858286016149d8565b9250506020614a5985828601614a0e565b9150509250929050565b60008115159050919050565b614a7881614a63565b82525050565b6000602082019050614a936000830184614a6f565b92915050565b614aa2816149ed565b82525050565b6000602082019050614abd6000830184614a99565b92915050565b6000819050919050565b6000614ae8614ae3614ade8461498f565b614ac3565b61498f565b9050919050565b6000614afa82614acd565b9050919050565b6000614b0c82614aef565b9050919050565b614b1c81614b01565b82525050565b6000602082019050614b376000830184614b13565b92915050565b600080600060608486031215614b5657614b55614818565b5b6000614b64868287016149d8565b9350506020614b75868287016149d8565b9250506040614b8686828701614a0e565b9150509250925092565b600060208284031215614ba657614ba5614818565b5b6000614bb484828501614a0e565b91505092915050565b600060ff82169050919050565b614bd381614bbd565b82525050565b6000602082019050614bee6000830184614bca565b92915050565b614bfd81614a63565b8114614c0857600080fd5b50565b600081359050614c1a81614bf4565b92915050565b60008060408385031215614c3757614c36614818565b5b6000614c4585828601614a0e565b9250506020614c5685828601614c0b565b9150509250929050565b614c69816149af565b82525050565b6000602082019050614c846000830184614c60565b92915050565b600060208284031215614ca057614c9f614818565b5b6000614cae848285016149d8565b91505092915050565b600080600060608486031215614cd057614ccf614818565b5b6000614cde868287016149d8565b9350506020614cef868287016149d8565b9250506040614d00868287016149d8565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b614d4282614923565b810181811067ffffffffffffffff82111715614d6157614d60614d0a565b5b80604052505050565b6000614d7461480e565b9050614d808282614d39565b919050565b600067ffffffffffffffff821115614da057614d9f614d0a565b5b602082029050602081019050919050565b6000614dc4614dbf84614d85565b614d6a565b90508083825260208201905060208402830185811115614de757614de661482c565b5b835b81811015614e105780614dfc88826149d8565b845260208401935050602081019050614de9565b5050509392505050565b600082601f830112614e2f57614e2e614822565b5b8135614e3f848260208601614db1565b91505092915050565b600060208284031215614e5e57614e5d614818565b5b600082013567ffffffffffffffff811115614e7c57614e7b61481d565b5b614e8884828501614e1a565b91505092915050565b60008060008060008060c08789031215614eae57614ead614818565b5b6000614ebc89828a01614a0e565b9650506020614ecd89828a01614a0e565b9550506040614ede89828a01614a0e565b9450506060614eef89828a01614a0e565b9350506080614f0089828a01614a0e565b92505060a0614f1189828a01614a0e565b9150509295509295509295565b600060208284031215614f3457614f33614818565b5b6000614f4284828501614c0b565b91505092915050565b60008083601f840112614f6157614f60614822565b5b8235905067ffffffffffffffff811115614f7e57614f7d614827565b5b602083019150836020820283011115614f9a57614f9961482c565b5b9250929050565b60008060008060408587031215614fbb57614fba614818565b5b600085013567ffffffffffffffff811115614fd957614fd861481d565b5b614fe587828801614831565b9450945050602085013567ffffffffffffffff8111156150085761500761481d565b5b61501487828801614f4b565b925092505092959194509250565b6000806040838503121561503957615038614818565b5b6000615047858286016149d8565b9250506020615058858286016149d8565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006150986020836148df565b91506150a382615062565b602082019050919050565b600060208201905081810360008301526150c78161508b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061511557607f821691505b60208210811415615129576151286150ce565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600061518b602a836148df565b91506151968261512f565b604082019050919050565b600060208201905081810360008301526151ba8161517e565b9050919050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b600061521d602c836148df565b9150615228826151c1565b604082019050919050565b6000602082019050818103600083015261524c81615210565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000615289601f836148df565b915061529482615253565b602082019050919050565b600060208201905081810360008301526152b88161527c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006152f9826149ed565b9150615304836149ed565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561533d5761533c6152bf565b5b828202905092915050565b7f4665652070657263656e74616765206d75737420657175616c20313030000000600082015250565b600061537e601d836148df565b915061538982615348565b602082019050919050565b600060208201905081810360008301526153ad81615371565b9050919050565b7f6d757374206265207468652073616d65206c656e677468000000000000000000600082015250565b60006153ea6017836148df565b91506153f5826153b4565b602082019050919050565b60006020820190508181036000830152615419816153dd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061545a826149ed565b9150615465836149ed565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561549a576154996152bf565b5b828201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006155016026836148df565b915061550c826154a5565b604082019050919050565b60006020820190508181036000830152615530816154f4565b9050919050565b6000615542826149ed565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415615575576155746152bf565b5b600182019050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006155dc6024836148df565b91506155e782615580565b604082019050919050565b6000602082019050818103600083015261560b816155cf565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061566e6022836148df565b915061567982615612565b604082019050919050565b6000602082019050818103600083015261569d81615661565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006157006025836148df565b915061570b826156a4565b604082019050919050565b6000602082019050818103600083015261572f816156f3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006157926023836148df565b915061579d82615736565b604082019050919050565b600060208201905081810360008301526157c181615785565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006158246029836148df565b915061582f826157c8565b604082019050919050565b6000602082019050818103600083015261585381615817565b9050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b60006158b66028836148df565b91506158c18261585a565b604082019050919050565b600060208201905081810360008301526158e5816158a9565b9050919050565b7f626f747320617265206e6f7420616c6c6f77656420746f2073656c6c206f722060008201527f7472616e7366657220746f6b656e730000000000000000000000000000000000602082015250565b6000615948602f836148df565b9150615953826158ec565b604082019050919050565b600060208201905081810360008301526159778161593b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006159b8826149ed565b91506159c3836149ed565b9250826159d3576159d261597e565b5b828204905092915050565b60006159e9826149ed565b91506159f4836149ed565b925082821015615a0757615a066152bf565b5b828203905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000615a48601b836148df565b9150615a5382615a12565b602082019050919050565b60006020820190508181036000830152615a7781615a3b565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000615ada6021836148df565b9150615ae582615a7e565b604082019050919050565b60006020820190508181036000830152615b0981615acd565b9050919050565b6000606082019050615b256000830186614a99565b615b326020830185614a99565b615b3f6040830184614a99565b949350505050565b600081519050615b56816149c1565b92915050565b600060208284031215615b7257615b71614818565b5b6000615b8084828501615b47565b91505092915050565b6000819050919050565b6000615bae615ba9615ba484615b89565b614ac3565b6149ed565b9050919050565b615bbe81615b93565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615bf9816149af565b82525050565b6000615c0b8383615bf0565b60208301905092915050565b6000602082019050919050565b6000615c2f82615bc4565b615c398185615bcf565b9350615c4483615be0565b8060005b83811015615c75578151615c5c8882615bff565b9750615c6783615c17565b925050600181019050615c48565b5085935050505092915050565b600060a082019050615c976000830188614a99565b615ca46020830187615bb5565b8181036040830152615cb68186615c24565b9050615cc56060830185614c60565b615cd26080830184614a99565b9695505050505050565b600060c082019050615cf16000830189614c60565b615cfe6020830188614a99565b615d0b6040830187615bb5565b615d186060830186615bb5565b615d256080830185614c60565b615d3260a0830184614a99565b979650505050505050565b600081519050615d4c816149f7565b92915050565b600080600060608486031215615d6b57615d6a614818565b5b6000615d7986828701615d3d565b9350506020615d8a86828701615d3d565b9250506040615d9b86828701615d3d565b915050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220613e39d4cc9972a9ac985f57499e507ab68e889ca3b7c061cf4d1130e353e7f964736f6c634300080a0033