60c06040526040518060400160405280600b81526020017f205733322e4d79646f6f6d000000000000000000000000000000000000000000815250600190805190602001906200005192919062001119565b506040518060400160405280600981526020017f5733324d59444f4f4d0000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062001119565b506012600360006101000a81548160ff021916908360ff16021790555073f7719a26977a63db57da0dd05e34837ab9f3cf8c600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b815250600073ffffffffffffffffffffffffffffffffffffffff1660a09073ffffffffffffffffffffffffffffffffffffffff1660601b8152506127106008556040518060800160405280600360009054906101000a900460ff1660ff1681526020016008548152602001600360009054906101000a900460ff1660ff168152602001600854815250600990600462000223929190620011a0565b50600360009054906101000a900460ff1660ff16600a0a620f4240026011556200027a6103e862000266600160115462000eb760201b620019f91790919060201c565b62000f4260201b62001a7f1790919060201c565b601255620002b56103e8620002a1601960115462000eb760201b620019f91790919060201c565b62000f4260201b62001a7f1790919060201c565b601355620002f06103e8620002dc601960115462000eb760201b620019f91790919060201c565b62000f4260201b62001a7f1790919060201c565b6014556000601660156101000a81548160ff02191690831515021790555060016016806101000a81548160ff0219169083151502179055506000601755600360185560006019556000601a556003601b556000601c556000601d556000601e553480156200035d57600080fd5b5060006200037062000f9460201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200046e57600080fd5b505afa15801562000483573d6000803e3d6000fd5b505050506040513d60208110156200049a57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200050e57600080fd5b505afa15801562000523573d6000803e3d6000fd5b505050506040513d60208110156200053a57600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b158015620005b557600080fd5b505af1158015620005ca573d6000803e3d6000fd5b505050506040513d6020811015620005e157600080fd5b8101908080519060200190929190505050601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600019600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600d60006200072e62000f9c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000620008e162000f9c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016010600062000b0e62000f9c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000ce4601c5462000cd0601b54601a5462000fc560201b62001ac91790919060201c565b62000fc560201b62001ac91790919060201c565b601f8190555062000d2360195462000d0f60185460175462000fc560201b62001ac91790919060201c565b62000fc560201b62001ac91790919060201c565b6020819055506001600e6000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555033600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506011546006600062000dfb62000f9460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000e4962000f9460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6011546040518082815260200191505060405180910390a35062001204565b60008083141562000ecc576000905062000f3c565b600082840290508284828162000ede57fe5b041462000f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180620040226021913960400191505060405180910390fd5b809150505b92915050565b600062000f8c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200104e60201b60201c565b905092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008082840190508381101562001044576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008083118290620010fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620010c2578082015181840152602081019050620010a5565b50505050905090810190601f168015620010f05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816200110b57fe5b049050809150509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200115c57805160ff19168380011785556200118d565b828001600101855582156200118d579182015b828111156200118c5782518255916020019190600101906200116f565b5b5090506200119c9190620011e5565b5090565b8260048101928215620011d2579160200282015b82811115620011d1578251825591602001919060010190620011b4565b5b509050620011e19190620011e5565b5090565b5b8082111562001200576000816000905550600101620011e6565b5090565b60805160601c60a05160601c612dea6200123860003980610f8b52806111095250806110dd52806111355250612dea6000f3fe60806040526004361061026a5760003560e01c80637d1db4a511610144578063c5d24189116100b6578063dc44b6a01161007a578063dc44b6a014610d3d578063dd62ed3e14610d68578063f0cd1dac14610ded578063f2fde38b14610e18578063f680f79914610e69578063f872858a14610e9457610271565b8063c5d2418914610c12578063c816841b14610c3d578063c867d60b14610c7e578063d2d7ad8314610ce5578063da00097d14610d1057610271565b80638da5cb5b116101085780638da5cb5b146109dd57806395d89b4114610a1e57806398e944c814610aae578063a457c2d714610aef578063a9059cbb14610b60578063b115e4df14610bd157610271565b80637d1db4a5146108ca578063807c2d9c146108f557806382eefb431461092057806388790a681461094b5780638b42507f1461097657610271565b806339509351116101dd5780635342acb4116101a15780635342acb414610714578063701cf6f41461077b5780637095d275146107a657806370a08231146107f5578063715018a61461085a5780637ae2b5c71461087157610271565b806339509351146105bb5780633ecad2711461062c5780634362d3c6146106935780634a92d4c0146106be5780635194f9bf146106e957610271565b806318160ddd1161022f57806318160ddd1461043a57806323555d571461046557806323b872dd1461049057806327c8f835146105215780632b112e4914610562578063313ce5671461058d57610271565b8062851fb31461027657806306fdde03146102b75780630930907b14610347578063095ea7b3146103885780631694505e146103f957610271565b3661027157005b600080fd5b34801561028257600080fd5b5061028b610ec1565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102c357600080fd5b506102cc610ee7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561030c5780820151818401526020810190506102f1565b50505050905090810190601f1680156103395780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561035357600080fd5b5061035c610f89565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561039457600080fd5b506103e1600480360360408110156103ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fad565b60405180821515815260200191505060405180910390f35b34801561040557600080fd5b5061040e610fcb565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044657600080fd5b5061044f610ff1565b6040518082815260200191505060405180910390f35b34801561047157600080fd5b5061047a610ffb565b6040518082815260200191505060405180910390f35b34801561049c57600080fd5b50610509600480360360608110156104b357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611001565b60405180821515815260200191505060405180910390f35b34801561052d57600080fd5b506105366110db565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561056e57600080fd5b506105776110ff565b6040518082815260200191505060405180910390f35b34801561059957600080fd5b506105a261117d565b604051808260ff16815260200191505060405180910390f35b3480156105c757600080fd5b50610614600480360360408110156105de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611194565b60405180821515815260200191505060405180910390f35b34801561063857600080fd5b5061067b6004803603602081101561064f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611247565b60405180821515815260200191505060405180910390f35b34801561069f57600080fd5b506106a8611267565b6040518082815260200191505060405180910390f35b3480156106ca57600080fd5b506106d361126d565b6040518082815260200191505060405180910390f35b3480156106f557600080fd5b506106fe611273565b6040518082815260200191505060405180910390f35b34801561072057600080fd5b506107636004803603602081101561073757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611279565b60405180821515815260200191505060405180910390f35b34801561078757600080fd5b50610790611299565b6040518082815260200191505060405180910390f35b3480156107b257600080fd5b506107df600480360360208110156107c957600080fd5b810190808035906020019092919050505061129f565b6040518082815260200191505060405180910390f35b34801561080157600080fd5b506108446004803603602081101561081857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112b7565b6040518082815260200191505060405180910390f35b34801561086657600080fd5b5061086f611300565b005b34801561087d57600080fd5b506108b46004803603604081101561089457600080fd5b810190808035906020019092919080359060200190929190505050611488565b6040518082815260200191505060405180910390f35b3480156108d657600080fd5b506108df6114a4565b6040518082815260200191505060405180910390f35b34801561090157600080fd5b5061090a6114aa565b6040518082815260200191505060405180910390f35b34801561092c57600080fd5b506109356114b0565b6040518082815260200191505060405180910390f35b34801561095757600080fd5b506109606114b6565b6040518082815260200191505060405180910390f35b34801561098257600080fd5b506109c56004803603602081101561099957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506114bc565b60405180821515815260200191505060405180910390f35b3480156109e957600080fd5b506109f26114dc565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a2a57600080fd5b50610a33611505565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a73578082015181840152602081019050610a58565b50505050905090810190601f168015610aa05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610aba57600080fd5b50610ac36115a7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610afb57600080fd5b50610b4860048036036040811015610b1257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115cd565b60405180821515815260200191505060405180910390f35b348015610b6c57600080fd5b50610bb960048036036040811015610b8357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061169a565b60405180821515815260200191505060405180910390f35b348015610bdd57600080fd5b50610be66116b9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c1e57600080fd5b50610c276116df565b6040518082815260200191505060405180910390f35b348015610c4957600080fd5b50610c526116e5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c8a57600080fd5b50610ccd60048036036020811015610ca157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061170b565b60405180821515815260200191505060405180910390f35b348015610cf157600080fd5b50610cfa61172b565b6040518082815260200191505060405180910390f35b348015610d1c57600080fd5b50610d25611731565b60405180821515815260200191505060405180910390f35b348015610d4957600080fd5b50610d52611744565b6040518082815260200191505060405180910390f35b348015610d7457600080fd5b50610dd760048036036040811015610d8b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061174a565b6040518082815260200191505060405180910390f35b348015610df957600080fd5b50610e026117d1565b6040518082815260200191505060405180910390f35b348015610e2457600080fd5b50610e6760048036036020811015610e3b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117d7565b005b348015610e7557600080fd5b50610e7e6119e2565b6040518082815260200191505060405180910390f35b348015610ea057600080fd5b50610ea96119e8565b60405180821515815260200191505060405180910390f35b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7f5780601f10610f5457610100808354040283529160200191610f7f565b820191906000526020600020905b815481529060010190602001808311610f6257829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610fc1610fba611b51565b8484611b59565b6001905092915050565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601154905090565b601c5481565b600061100e848484611d50565b506110d08461101b611b51565b6110cb85604051806060016040528060288152602001612d1f60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000611081611b51565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123c09092919063ffffffff16565b611b59565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600061117861112d7f00000000000000000000000000000000000000000000000000000000000000006112b7565b61116a6111597f00000000000000000000000000000000000000000000000000000000000000006112b7565b60115461248090919063ffffffff16565b61248090919063ffffffff16565b905090565b6000600360009054906101000a900460ff16905090565b600061123d6111a1611b51565b8461123885600760006111b2611b51565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ac990919063ffffffff16565b611b59565b6001905092915050565b600e6020528060005260406000206000915054906101000a900460ff1681565b601d5481565b601e5481565b60195481565b600d6020528060005260406000206000915054906101000a900460ff1681565b60185481565b600981600481106112ac57fe5b016000915090505481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611308611b51565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b61dead73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a361dead6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008183111561149a5781905061149e565b8290505b92915050565b60135481565b60145481565b60205481565b60175481565b60106020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561159d5780601f106115725761010080835404028352916020019161159d565b820191906000526020600020905b81548152906001019060200180831161158057829003601f168201915b5050505050905090565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006116906115da611b51565b8461168b85604051806060016040528060258152602001612d906025913960076000611604611b51565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123c09092919063ffffffff16565b611b59565b6001905092915050565b60006116ae6116a7611b51565b8484611d50565b506001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601b5481565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f6020528060005260406000206000915054906101000a900460ff1681565b60125481565b601660159054906101000a900460ff1681565b601a5481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601f5481565b6117df611b51565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461189f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611925576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612c696026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60085481565b60168054906101000a900460ff1681565b600080831415611a0c5760009050611a79565b6000828402905082848281611a1d57fe5b0414611a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612cfe6021913960400191505060405180910390fd5b809150505b92915050565b6000611ac183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506124ca565b905092915050565b600080828401905083811015611b47576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611bdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612d6c6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612c8f6022913960400191505060405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611dd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612d476025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611e5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612c466023913960400191505060405180910390fd5b601660149054906101000a900460ff1615611e8457611e7d848484612590565b90506123b9565b601060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611f285750601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611f8957601354821115611f88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526028815260200180612cd66028913960400191505060405180910390fd5b5b6000611f94306112b7565b905060006012548210159050808015611fba5750601660149054906101000a900460ff16155b80156120105750600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561203a57601660159054906101000a900460ff16156120305760125491505b61203982612887565b5b60168054906101000a900460ff16801561209e5750600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612141576014546120e96120d26103e86120c4602054896119f990919063ffffffff16565b611a7f90919063ffffffff16565b6120db886112b7565b611ac990919063ffffffff16565b1115612140576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612cb16025913960400191505060405180910390fd5b5b61219361216d6103e861215f602054886119f990919063ffffffff16565b611a7f90919063ffffffff16565b7ffffffffffffffffffffffffd54dd998267f3034289f54db120685e6a7fffffff611488565b60096003600481106121a157fe5b01819055506121fa6121d26103e86121c4602054886119f990919063ffffffff16565b611a7f90919063ffffffff16565b85037ffffffffffffffffffffffffd54dd998267f3034289f54db120685e6a7fffffff611488565b600960026004811061220857fe5b0181905550601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615806122b05750601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b806123585750600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123575750600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b5b156123745761044d601d600082825401925050819055506123a6565b625343d6601e541461238d57612388612942565b6123a5565b610842601d600082825401925050819055601e819055505b5b6123b1868686612590565b506001925050505b9392505050565b600083831115829061246d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612432578082015181840152602081019050612417565b50505050905090810190601f16801561245f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60006124c283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506123c0565b905092915050565b60008083118290612576576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561253b578082015181840152602081019050612520565b50505050905090810190601f1680156125685780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161258257fe5b049050809150509392505050565b600061261b826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123c09092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601660149054906101000a900460ff161561269d576000600960036004811061268357fe5b018190555081600960026004811061269757fe5b01819055505b60006126db60096002600481106126b057fe5b01546064017ffffffffffffffffffffffffd54dd998267f3034289f54db120685e6a7fffffff611488565b905061272f81600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ac990919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506127d3600960036004811061278357fe5b0154600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ac990919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b6001601660146101000a81548160ff0219169083151502179055506128ab81612980565b6000479050600081111561292357600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612921573d6000803e3d6000fd5b505b506000601660146101000a81548160ff02191690831515021790555050565b601d54600a601d5460bb010301601e819055506b014ae8786070f1c78dba55dc600960036004811061297057fe5b0160008282540192505081905550565b6060600267ffffffffffffffff8111801561299a57600080fd5b506040519080825280602002602001820160405280156129c95781602001602082028036833780820191505090505b509050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612a3457600080fd5b505afa158015612a48573d6000803e3d6000fd5b505050506040513d6020811015612a5e57600080fd5b810190808051906020019092919050505081600181518110612a7c57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503081600081518110612ac457fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612b2b30601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611b59565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015612bef578082015181840152602081019050612bd4565b505050509050019650505050505050600060405180830381600087803b158015612c1857600080fd5b505af1158015612c2c573d6000803e3d6000fd5b50505050601d54601e819055506011601d81905550505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373416d6f756e74204578636565642046726f6d204d61782057616c6c6574204c696d697421215472616e7366657220616d6f756e74206578636565647320746865206d61785478416d6f756e742e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122012e3b191aae9eaa0307adc2556ccbb5e1d110970de84fcb855fb1a9bf5d912fd64736f6c63430007020033536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77