60806040526040516101f03803806101f08339818101604052604081101561002657600080fd5b81516020830180516040519294929383019291908464010000000082111561004d57600080fd5b90830190602082018581111561006257600080fd5b825164010000000081118282018810171561007c57600080fd5b82525081516020918201929091019080838360005b838110156100a9578181015183820152602001610091565b50505050905090810190601f1680156100d65780820380516001836020036101000a031916815260200191505b506040525050506000826001600160a01b0316826040518082805190602001908083835b602083106101195780518252601f1990920191602091820191016100fa565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610179576040519150601f19603f3d011682016040523d82523d6000602084013e61017e565b606091505b5050905080610191573d6000803e3d6000fd5b6040805169363d3d373d3d3d363d7360b01b6020808301919091526001600160601b0319606087901b16602a8301526e5af43d82803e903d91602b57fd5bf360881b603e8301528251602d81840381018252604d9093019093528201f3fe000000000000000000000000e86ed59e7ccc44e545d2fc4b100cc0349f153469000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e4f630df340000000000000000000000001e31f2dcbad4dc572004eae6355fb18f9615cbe4000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000000000000000000000000000000000000fd51da8000000000000000000000000000000000000000000000000000000000060014b80000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000