6080604052606060405190810160405280604081526020017f616333396166343739333131396565343662626666333531643863623662356681526020017f32336461363032323231323661646434323638653236313139396132393231628152506000908051906020019062000078929190620001fe565b506040805190810160405280600f81526020017f5365626143727970746f50756e6b73000000000000000000000000000000000081525060029080519060200190620000c6929190620001fe565b5060006007556001600860006101000a81548160ff021916908315150217905550600060095533600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620186a06006819055506006546009819055506040805190810160405280601081526020017f534542412d43525950544f50554e4b5300000000000000000000000000000000815250600390805190602001906200018d929190620001fe565b506040805190810160405280600281526020017fcfbe00000000000000000000000000000000000000000000000000000000000081525060049080519060200190620001db929190620001fe565b506000600560006101000a81548160ff021916908360ff160217905550620002ad565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200024157805160ff191683800117855562000272565b8280016001018555821562000272579182015b828111156200027157825182559160200191906001019062000254565b5b50905062000281919062000285565b5090565b620002aa91905b80821115620002a65760008160009055506001016200028c565b5090565b90565b612f8180620002bd6000396000f30060806040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610164578063088f11f3146101f4578063091dbfd2146102ad57806318160ddd146102cd57806323165b75146102f8578063313ce5671461032f57806339c5dde6146103605780633ccfd60b1461040957806351605d801461042057806352f29a25146104b057806358178168146104db5780635a3b7e42146105485780636e743fa9146105d857806370a082311461065e5780637ecedac9146106b55780638126c38a146106cc5780638264fe98146106fb5780638b72a2ec1461071b57806395d89b4114610768578063979bc638146107f8578063a75a904914610825578063bf31196f14610872578063c0d6ce63146108c9578063c44193c3146108f4578063c81d1d5b1461092b578063f3f4370314610958578063f6eeff1e146109af575b600080fd5b34801561017057600080fd5b506101796109dc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b957808201518184015260208101905061019e565b50505050905090810190601f1680156101e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020057600080fd5b5061021f60048036038101908080359060200190929190505050610a7a565b60405180861515151581526020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390f35b6102cb60048036038101908080359060200190929190505050610afd565b005b3480156102d957600080fd5b506102e2610dc5565b6040518082815260200191505060405180910390f35b34801561030457600080fd5b5061032d6004803603810190808035906020019092919080359060200190929190505050610dcb565b005b34801561033b57600080fd5b50610344611373565b604051808260ff1660ff16815260200191505060405180910390f35b34801561036c57600080fd5b506104076004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611386565b005b34801561041557600080fd5b5061041e611441565b005b34801561042c57600080fd5b5061043561152f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561047557808201518184015260208101905061045a565b50505050905090810190601f1680156104a25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104bc57600080fd5b506104c56115cd565b6040518082815260200191505060405180910390f35b3480156104e757600080fd5b50610506600480360381019080803590602001909291905050506115d3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561055457600080fd5b5061055d611606565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561059d578082015181840152602081019050610582565b50505050905090810190601f1680156105ca5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105e457600080fd5b50610603600480360381019080803590602001909291905050506116a4565b60405180851515151581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200194505050505060405180910390f35b34801561066a57600080fd5b5061069f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611701565b6040518082815260200191505060405180910390f35b3480156106c157600080fd5b506106ca611719565b005b3480156106d857600080fd5b506106e1611792565b604051808215151515815260200191505060405180910390f35b610719600480360381019080803590602001909291905050506117a5565b005b34801561072757600080fd5b50610766600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d1c565b005b34801561077457600080fd5b5061077d612138565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156107bd5780820151818401526020810190506107a2565b50505050905090810190601f1680156107ea5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561080457600080fd5b50610823600480360381019080803590602001909291905050506121d6565b005b34801561083157600080fd5b50610870600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506124af565b005b34801561087e57600080fd5b506108c76004803603810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612781565b005b3480156108d557600080fd5b506108de61299d565b6040518082815260200191505060405180910390f35b34801561090057600080fd5b5061092960048036038101908080359060200190929190803590602001909291905050506129a3565b005b34801561093757600080fd5b5061095660048036038101908080359060200190929190505050612baa565b005b34801561096457600080fd5b50610999600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d43565b6040518082815260200191505060405180910390f35b3480156109bb57600080fd5b506109da60048036038101908080359060200190929190505050612d5b565b005b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a725780601f10610a4757610100808354040283529160200191610a72565b820191906000526020600020905b815481529060010190602001808311610a5557829003601f168201915b505050505081565b600c6020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030154908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905085565b6000620186a082101515610b1057600080fd5b600860009054906101000a900460ff161515610b2b57600080fd5b6000600a600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610b8257600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610bee57600080fd5b6000341415610bfc57600080fd5b600d60008381526020019081526020016000209050806003015434111515610c2357600080fd5b600081600301541115610ca6578060030154600e60008360020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b6080604051908101604052806001151581526020018381526020013373ffffffffffffffffffffffffffffffffffffffff16815260200134815250600d600084815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050503373ffffffffffffffffffffffffffffffffffffffff16827f5b859394fabae0c1ba88baffe67e751ab5248d2e879028b8c8d6897b0519f56a346040518082815260200191505060405180910390a35050565b60065481565b6000806000620186a085101515610de157600080fd5b600860009054906101000a900460ff161515610dfc57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610e6957600080fd5b339250600d60008681526020019081526020016000209150600082600301541415610e9357600080fd5b8382600301541015610ea457600080fd5b8160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600a600087815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600190039190505550600b60008360020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055508160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60016040518082815260200191505060405180910390a360a0604051908101604052806000151581526020018681526020018360020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff16815250600c600087815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506060820151816003015560808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555090505081600301549050608060405190810160405280600015158152602001868152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815250600d600087815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506060820151816003015590505080600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16867f58e5d5a525e3b40bc15abaa38b5882678db1ee68befd2f60bafe3a7fd06db9e385600301546040518082815260200191505060405180910390a45050505050565b600560009054906101000a900460ff1681565b600080600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113e557600080fd5b83519150600090505b8181101561143b5761142e848281518110151561140757fe5b90602001906020020151848381518110151561141f57fe5b906020019060200201516124af565b80806001019150506113ee565b50505050565b6000600860009054906101000a900460ff16151561145e57600080fd5b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561152b573d6000803e3d6000fd5b5050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115c55780601f1061159a576101008083540402835291602001916115c5565b820191906000526020600020905b8154815290600101906020018083116115a857829003601f168201915b505050505081565b60075481565b600a6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561169c5780601f106116715761010080835404028352916020019161169c565b820191906000526020600020905b81548152906001019060200180831161167f57829003601f168201915b505050505081565b600d6020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030154905084565b600b6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561177557600080fd5b6001600860006101000a81548160ff021916908315150217905550565b600860009054906101000a900460ff1681565b6000806000600860009054906101000a900460ff1615156117c557600080fd5b600c60008581526020019081526020016000209250620186a0841015156117eb57600080fd5b8260000160009054906101000a900460ff16151561180857600080fd5b60008360040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141580156118a357503373ffffffffffffffffffffffffffffffffffffffff168360040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156118ad57600080fd5b82600301543410156118be57600080fd5b600a600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168360020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561194f57600080fd5b8260020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915033600a600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600190039190505550600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60016040518082815260200191505060405180910390a3611ad684612d5b565b34600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16857f58e5d5a525e3b40bc15abaa38b5882678db1ee68befd2f60bafe3a7fd06db9e3346040518082815260200191505060405180910390a4600d600085815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611d16578060030154600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550608060405190810160405280600015158152602001858152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815250600d600086815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050505b50505050565b6000600860009054906101000a900460ff161515611d3957600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611da657600080fd5b620186a082101515611db757600080fd5b600c600083815260200190815260200160002060000160009054906101000a900460ff1615611dea57611de982612d5b565b5b82600a600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600190039190505550600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60016040518082815260200191505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f05af636b70da6819000c49f85b21fa82081c632069bb626f30932034099107d8846040518082815260200191505060405180910390a3600d600083815260200190815260200160002090508273ffffffffffffffffffffffffffffffffffffffff168160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415612133578060030154600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550608060405190810160405280600015158152602001838152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815250600d600084815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050505b505050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156121ce5780601f106121a3576101008083540402835291602001916121ce565b820191906000526020600020905b8154815290600101906020018083116121b157829003601f168201915b505050505081565b600080620186a0831015156121ea57600080fd5b600860009054906101000a900460ff16151561220557600080fd5b6000600a600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561225c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156122c857600080fd5b600d600084815260200190815260200160002091503373ffffffffffffffffffffffffffffffffffffffff168260020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561233b57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16837f6f30e1ee4d81dcc7a8a478577f65d2ed2edb120565960ac45fe7c50551c8793284600301546040518082815260200191505060405180910390a381600301549050608060405190810160405280600015158152602001848152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815250600d600085815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156124a9573d6000803e3d6000fd5b50505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561250b57600080fd5b600860009054906101000a900460ff161561252557600080fd5b620186a08110151561253657600080fd5b8173ffffffffffffffffffffffffffffffffffffffff16600a600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561277d576000600a600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561267957600b6000600a600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060019003919050555061268d565b600960008154809291906001900391905055505b81600a600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055508173ffffffffffffffffffffffffffffffffffffffff167f8a0e37b73a0d9c82e205d4d1a3ff3d0b57ce5f4d7bccf6bac03336dc101cb7ba826040518082815260200191505060405180910390a25b5050565b600860009054906101000a900460ff16151561279c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561280957600080fd5b620186a08310151561281a57600080fd5b60a0604051908101604052806001151581526020018481526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018273ffffffffffffffffffffffffffffffffffffffff16815250600c600085815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506060820151816003015560808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050508073ffffffffffffffffffffffffffffffffffffffff16837f3c7b682d5da98001a9b8cbda6c647d2c63d698a4184fd1d55e2ce7b66f5d21eb846040518082815260200191505060405180910390a3505050565b60095481565b600860009054906101000a900460ff1615156129be57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515612a2b57600080fd5b620186a082101515612a3c57600080fd5b60a0604051908101604052806001151581526020018381526020013373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001600073ffffffffffffffffffffffffffffffffffffffff16815250600c600084815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506060820151816003015560808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050506000827f3c7b682d5da98001a9b8cbda6c647d2c63d698a4184fd1d55e2ce7b66f5d21eb836040518082815260200191505060405180910390a35050565b600860009054906101000a900460ff161515612bc557600080fd5b60006009541415612bd557600080fd5b6000600a600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515612c2d57600080fd5b620186a081101515612c3e57600080fd5b33600a600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001019190505550600960008154809291906001900391905055503373ffffffffffffffffffffffffffffffffffffffff167f8a0e37b73a0d9c82e205d4d1a3ff3d0b57ce5f4d7bccf6bac03336dc101cb7ba826040518082815260200191505060405180910390a250565b600e6020528060005260406000206000915090505481565b600860009054906101000a900460ff161515612d7657600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16600a600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515612de357600080fd5b620186a081101515612df457600080fd5b60a0604051908101604052806000151581526020018281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff16815250600c600083815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506060820151816003015560808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550905050807fb0e0a660b4e50f26f0b7ce75c24655fc76cc66e3334a54ff410277229fa10bd460405160405180910390a2505600a165627a7a7230582085aa73a102e38a061093aa0c6024a72c91764a8a769da0da0eeda91b25cb8b630029