60806040526040805190810160405280600781526020017f4d4d545f302e32000000000000000000000000000000000000000000000000008152506004908051906020019062000051929190620001e1565b503480156200005f57600080fd5b506000806040805190810160405280600981526020017f4c6f6769546f6b656e000000000000000000000000000000000000000000000081525060126040805190810160405280600481526020017f4c4f4749000000000000000000000000000000000000000000000000000000008152506000858585858585336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001908051906020019062000131929190620001e1565b5082600260006101000a81548160ff021916908360ff160217905550816003908051906020019062000165929190620001e1565b5085600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508460068190555080600b60006101000a81548160ff0219169083151502179055504360078190555050505050505050505050505062000290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200022457805160ff191683800117855562000255565b8280016001018555821562000255579182015b828111156200025457825182559160200191906001019062000237565b5b50905062000264919062000268565b5090565b6200028d91905b80821115620002895760008160009055506001016200026f565b5090565b90565b612f2f80620002a06000396000f30060806040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146102a4578063095ea7b314610334578063176345141461039957806318160ddd146103c457806323b872dd146103ef578063313ce567146104745780633cebb823146104a55780634000aea0146104e85780634ee2cd7e1461059357806354fd4d50146105f457806370a08231146106845780637d64bcb4146106db57806380a54001146106f2578063827f32c01461074957806395d89b41146107ae578063981b24d01461083e578063a9059cbb1461087f578063adeb8dec146108e4578063bef97c871461098d578063c5bcc4f1146109bc578063c7b6d432146109e7578063cae9ca5114610a3e578063d3ce77fe14610ae9578063d5abeb0114610b4e578063dd62ed3e14610b79578063df8de3e714610bf0578063f41e60c514610c33578063f77c479114610c62575b6101946000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610cb9565b151561019f57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f48c305434336040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019150506020604051808303818588803b15801561025b57600080fd5b505af115801561026f573d6000803e3d6000fd5b50505050506040513d602081101561028657600080fd5b810190808051906020019092919050505015156102a257600080fd5b005b3480156102b057600080fd5b506102b9610cf5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102f95780820151818401526020810190506102de565b50505050905090810190601f1680156103265780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561034057600080fd5b5061037f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d93565b604051808215151515815260200191505060405180910390f35b3480156103a557600080fd5b506103ae6110a4565b6040518082815260200191505060405180910390f35b3480156103d057600080fd5b506103d96110aa565b6040518082815260200191505060405180910390f35b3480156103fb57600080fd5b5061045a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110ba565b604051808215151515815260200191505060405180910390f35b34801561048057600080fd5b50610489611120565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104b157600080fd5b506104e6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611133565b005b3480156104f457600080fd5b50610579600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506111d1565b604051808215151515815260200191505060405180910390f35b34801561059f57600080fd5b506105de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113fc565b6040518082815260200191505060405180910390f35b34801561060057600080fd5b50610609611688565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561064957808201518184015260208101905061062e565b50505050905090810190601f1680156106765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561069057600080fd5b506106c5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611726565b6040518082815260200191505060405180910390f35b3480156106e757600080fd5b506106f0611739565b005b3480156106fe57600080fd5b506107076117d8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561075557600080fd5b50610794600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117fe565b604051808215151515815260200191505060405180910390f35b3480156107ba57600080fd5b506107c3611948565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108035780820151818401526020810190506107e8565b50505050905090810190601f1680156108305780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561084a57600080fd5b50610869600480360381019080803590602001909291905050506119e6565b6040518082815260200191505060405180910390f35b34801561088b57600080fd5b506108ca600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b86565b604051808215151515815260200191505060405180910390f35b3480156108f057600080fd5b5061098b6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611bea565b005b34801561099957600080fd5b506109a2611dcb565b604051808215151515815260200191505060405180910390f35b3480156109c857600080fd5b506109d1611dde565b6040518082815260200191505060405180910390f35b3480156109f357600080fd5b50610a28600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611de4565b6040518082815260200191505060405180910390f35b348015610a4a57600080fd5b50610acf600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611dfc565b604051808215151515815260200191505060405180910390f35b348015610af557600080fd5b50610b34600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611f89565b604051808215151515815260200191505060405180910390f35b348015610b5a57600080fd5b50610b636120cf565b6040518082815260200191505060405180910390f35b348015610b8557600080fd5b50610bda600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506120ee565b6040518082815260200191505060405180910390f35b348015610bfc57600080fd5b50610c31600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612175565b005b348015610c3f57600080fd5b50610c606004803603810190808035151590602001909291905050506124dd565b005b348015610c6e57600080fd5b50610c77612555565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008060008373ffffffffffffffffffffffffffffffffffffffff161415610ce45760009150610cef565b823b90506000811191505b50919050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d8b5780601f10610d6057610100808354040283529160200191610d8b565b820191906000526020600020905b815481529060010190602001808311610d6e57829003601f168201915b505050505081565b6000600b60009054906101000a900460ff161515610db057600080fd5b6000821480610e3b57506000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b1515610e4657600080fd5b610e706000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610cb9565b15610fb4576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663da682aeb3385856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610f6d57600080fd5b505af1158015610f81573d6000803e3d6000fd5b505050506040513d6020811015610f9757600080fd5b81019080805190602001909291905050501515610fb357600080fd5b5b81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60075481565b60006110b5436119e6565b905090565b600083600c60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054421015151561110b57600080fd5b61111685858561257a565b9150509392505050565b600260009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561118e57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006111dd8484611b86565b15156111e857600080fd5b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1685856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561127f578082015181840152602081019050611264565b50505050905090810190601f1680156112ac5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a36112c384610cb9565b156113f1578373ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3385856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561138a57808201518184015260208101905061136f565b50505050905090810190601f1680156113b75780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156113d857600080fd5b505af11580156113ec573d6000803e3d6000fd5b505050505b600190509392505050565b600080600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905014806114d5575081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548110151561149757fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff16115b15611637576000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561162e57600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634ee2cd7e8461156785600654612719565b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156115ec57600080fd5b505af1158015611600573d6000803e3d6000fd5b505050506040513d602081101561161657600080fd5b81019080805190602001909291905050509050611682565b60009050611682565b61167f600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083612732565b90505b92915050565b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561171e5780601f106116f35761010080835404028352916020019161171e565b820191906000526020600020905b81548152906001019060200180831161170157829003601f168201915b505050505081565b600061173282436113fc565b9050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561179457600080fd5b600260009054906101000a900460ff1660ff16600a0a6305f5e100026117b86110aa565b111515156117c257fe5b6117cc60016124dd565b6117d66000611133565b565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561185e57600080fd5b6118666110aa565b9150818483011015151561187957600080fd5b61188285611726565b9050808482011015151561189557600080fd5b6118a2600a858401612941565b6118ec600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020858301612941565b8473ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a360019250505092915050565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119de5780601f106119b3576101008083540402835291602001916119de565b820191906000526020600020905b8154815290600101906020018083116119c157829003601f168201915b505050505081565b600080600a805490501480611a45575081600a6000815481101515611a0757fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff16115b15611b73576000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611b6a57600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663981b24d0611ad684600654612719565b6040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015611b2857600080fd5b505af1158015611b3c573d6000803e3d6000fd5b505050506040513d6020811015611b5257600080fd5b81019080805190602001909291905050509050611b81565b60009050611b81565b611b7e600a83612732565b90505b919050565b600033600c60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020544210151515611bd757600080fd5b611be18484612ab5565b91505092915050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c4a57600080fd5b83518551141515611c5a57600080fd5b60ff8551101515611c6a57600080fd5b60001515600b60009054906101000a900460ff161515141515611c8c57600080fd5b600092505b84518360ff161015611dc457848360ff16815181101515611cae57fe5b906020019060200201519150838360ff16815181101515611ccb57fe5b9060200190602002015190506000600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141515611d2557600080fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167faba75e9d686db672a426b00d4c2ff5936ed818c76db969459d39c41dbc9503f0826040518082815260200191505060405180910390a28280600101935050611c91565b5050505050565b600b60009054906101000a900460ff1681565b60065481565b600c6020528060005260406000206000915090505481565b6000611e088484610d93565b1515611e1357600080fd5b611e1c84610cb9565b15611f7e578373ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611f16578082015181840152602081019050611efb565b50505050905090810190601f168015611f435780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015611f6557600080fd5b505af1158015611f79573d6000803e3d6000fd5b505050505b600190509392505050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fe957600080fd5b611ff16110aa565b915083821015151561200257600080fd5b61200b85611726565b905083811015151561201c57600080fd5b612029600a858403612941565b612073600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020858303612941565b60008573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a360019250505092915050565b600260009054906101000a900460ff1660ff16600a0a6305f5e1000281565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156121d357600080fd5b60008373ffffffffffffffffffffffffffffffffffffffff161415612276576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015612270573d6000803e3d6000fd5b506124d8565b8291508173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561231457600080fd5b505af1158015612328573d6000803e3d6000fd5b505050506040513d602081101561233e57600080fd5b810190808051906020019092919050505090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561241557600080fd5b505af1158015612429573d6000803e3d6000fd5b505050506040513d602081101561243f57600080fd5b8101908080519060200190929190505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c836040518082815260200191505060405180910390a35b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561253857600080fd5b80600b60006101000a81548160ff02191690831515021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561270357600b60009054906101000a900460ff1615156125ed57600080fd5b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561267857600080fd5b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b61270e848484612ae7565b600190509392505050565b6000818310612728578161272a565b825b905092915050565b60008060008060008680549050141561274e5760009350612938565b85600187805490500381548110151561276357fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff16851015156127ff578560018780549050038154811015156127bc57fe5b9060005260206000200160000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff169350612938565b85600081548110151561280e57fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1685101561285a5760009350612938565b60009250600186805490500391505b828211156128eb57600260018484010181151561288257fe5b04905084868281548110151561289457fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161115156128df578092506128e6565b6001810391505b612869565b85838154811015156128f957fe5b9060005260206000200160000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1693505b50505092915050565b6000806000848054905014806129a657504384600186805490500381548110151561296857fe5b9060005260206000200160000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff16105b15612a5257838480548091906001016129bf9190612e72565b8154811015156129cb57fe5b906000526020600020019150438260000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550828260000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550612aaf565b836001858054905003815481101515612a6757fe5b906000526020600020019050828160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055505b50505050565b6000600b60009054906101000a900460ff161515612ad257600080fd5b612add338484612ae7565b6001905092915050565b6000806000831415612b5d578373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3612e6b565b43600654101515612b6d57600080fd5b60008473ffffffffffffffffffffffffffffffffffffffff1614158015612bc057503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1515612bcb57600080fd5b612bd585436113fc565b9150828210151515612be657600080fd5b612c106000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610cb9565b15612d54576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a3931498686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015612d0d57600080fd5b505af1158015612d21573d6000803e3d6000fd5b505050506040513d6020811015612d3757600080fd5b81019080805190602001909291905050501515612d5357600080fd5b5b612d9e600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848403612941565b612da884436113fc565b90508083820110151515612dbb57600080fd5b612e05600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848301612941565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b5050505050565b815481835581811115612e9957818360005260206000209182019101612e989190612e9e565b5b505050565b612f0091905b80821115612efc57600080820160006101000a8154906fffffffffffffffffffffffffffffffff02191690556000820160106101000a8154906fffffffffffffffffffffffffffffffff021916905550600101612ea4565b5090565b905600a165627a7a72305820708529f63fd4a7c0a7cb7e35ad804eacd0c6167c45744b18e6abf4118160d5090029