6060604052600436106100db576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806309dfdc71146100f0578063253459e3146101855780634229616d146101ae57806357d4021b146101d157806367f809e9146101fa578063686f2c901461020f5780636fbaaa1e146102245780638a5fb3ca146102b95780639dbc4f9b1461034e578063a26dbf26146103b8578063a6f9dae1146103e1578063b40229501461041a578063ced926701461043d578063d11f13df14610460578063fae1419214610489575b34156100e657600080fd5b6100ee6104ac565b005b34156100fb57600080fd5b610103610507565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561014957808201518184015260208101905061012e565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b341561019057600080fd5b61019861054a565b6040518082815260200191505060405180910390f35b34156101b957600080fd5b6101cf6004808035906020019091905050610567565b005b34156101dc57600080fd5b6101e461065a565b6040518082815260200191505060405180910390f35b341561020557600080fd5b61020d610697565b005b341561021a57600080fd5b6102226106da565b005b341561022f57600080fd5b6102376107a5565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561027d578082015181840152602081019050610262565b50505050905090810190601f1680156102aa5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34156102c457600080fd5b6102cc6107d7565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103125780820151818401526020810190506102f7565b50505050905090810190601f16801561033f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b341561035957600080fd5b61036f6004808035906020019091905050610806565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34156103c357600080fd5b6103cb610896565b6040518082815260200191505060405180910390f35b34156103ec57600080fd5b610418600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506108a3565b005b341561042557600080fd5b61043b600480803590602001909190505061093e565b005b341561044857600080fd5b61045e6004808035906020019091905050610a30565b005b341561046b57600080fd5b610473610aab565b6040518082815260200191505060405180910390f35b341561049457600080fd5b6104aa6004808035906020019091905050610abc565b005b6000670de0b6b3a76400003410156104d35734600160008282540192505081905550610504565b60025490506802b5e3af16b1880000341015156104fa576002818115156104f657fe5b0490505b61050381610b2b565b5b50565b6000610511610d6b565b670de0b6b3a764000060005481151561052657fe5b0491506101006040519081016040528060ca8152602001610e8460ca913990509091565b6000670de0b6b3a764000060015481151561056157fe5b04905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561065657600060015414806105d05750606482115b156105da57600080fd5b8160646001548115156105e957fe5b04029050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505050806001600082825403925050819055505b5050565b6000670de0b6b3a7640000600660045481548110151561067657fe5b90600052602060002090600202016001015481151561069157fe5b04905090565b33600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156107a3576000600154141561074057600080fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6001549081150290604051600060405180830381858888f193505050505060006001819055505b565b60006107af610d6b565b60035491506101406040519081016040528061011f8152602001610f4e61011f913990509091565b60006107e1610d6b565b600254915060c06040519081016040528060848152602001610e006084913990509091565b600080600680549050831115156108915760068381548110151561082657fe5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150670de0b6b3a764000060068481548110151561087257fe5b90600052602060002090600202016001015481151561088d57fe5b0490505b915091565b6000600680549050905090565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561093b5780600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610a2d57670de0b6b3a7640000810290506001548111156109b4576109b36106da565b5b600060015414156109c457600080fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505050806001600082825403925050819055505b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610aa85761012c811180610a965750607881105b15610aa057600080fd5b806003819055505b50565b600060045460068054905003905090565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610b2857600a811115610b2057600080fd5b806002819055505b50565b600060068054806001018281610b419190610d7f565b9160005260206000209060020201600060408051908101604052803373ffffffffffffffffffffffffffffffffffffffff16815260200160646003543402811515610b8857fe5b04815250909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155505050600a6006805490501415610c005760c8600381905550610c18565b60196006805490501415610c175760966003819055505b5b6064826064033402811515610c2957fe5b0460008082825401925050819055506064823402811515610c4657fe5b046001600082825401925050819055505b6006600454815481101515610c6857fe5b9060005260206000209060020201600101546000541115610d67576006600454815481101515610c9457fe5b90600052602060002090600202016001015490506006600454815481101515610cb957fe5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050506006600454815481101515610d3157fe5b90600052602060002090600202016001015460008082825403925050819055506001600460008282540192505081905550610c57565b5050565b602060405190810160405280600081525090565b815481835581811511610dac57600202816002028360005260206000209182019101610dab9190610db1565b5b505050565b610dfc91905b80821115610df857600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550600201610db7565b5090565b90560053686f776e20696e202520666f726d2e204665652069732068616c766564283530252920666f7220616d6f756e747320657175616c206f722067726561746572207468616e203530206574686572732e2028466565206d6179206368616e67652c206275742069732063617070656420746f2061206d6178696d756d206f662031302529416c6c2062616c616e63652076616c75657320617265206d6561737572656420696e204574686572732c206e6f746520746861742064756520746f206e6f20646563696d616c20706c6163696e672c2074686573652076616c7565732073686f7720757020617320696e746567657273206f6e6c792c2077697468696e2074686520636f6e747261637420697473656c6620796f752077696c6c206765742074686520657861637420646563696d616c2076616c756520796f752061726520737570706f73656420746f54686973206d756c7469706c696572206170706c69657320746f20796f7520617320736f6f6e206173207472616e73616374696f6e2069732072656365697665642c206d6179206265206c6f776572656420746f2068617374656e207061796f757473206f7220696e63726561736564206966207061796f75747320617265206661737420656e6f7567682e2044756520746f206e6f20666c6f6174206f7220646563696d616c732c206d756c7469706c696572206973207831303020666f722061206672616374696f6e616c206d756c7469706c69657220652e672e203235302069732061637475616c6c79206120322e3578206d756c7469706c6965722e20436170706564206174203378206d617820616e6420312e3278206d696e2ea165627a7a7230582084499dccd7b71003c8d221facb3b62143a2535f5db6f56dd454bc823af90767b0029