60806040523480156200001157600080fd5b50604051620034f0380380620034f0833981810160405260808110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b838201915060208201858111156200006f57600080fd5b82518660018202830111640100000000821117156200008d57600080fd5b8083526020830192505050908051906020019080838360005b83811015620000c3578082015181840152602081019050620000a6565b50505050905090810190601f168015620000f15780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011557600080fd5b838201915060208201858111156200012c57600080fd5b82518660018202830111640100000000821117156200014a57600080fd5b8083526020830192505050908051906020019080838360005b838110156200018057808201518184015260208101905062000163565b50505050905090810190601f168015620001ae5780820380516001836020036101000a031916815260200191505b506040526020018051906020019092919080516040519392919084640100000000821115620001dc57600080fd5b83820191506020820185811115620001f357600080fd5b82518660018202830111640100000000821117156200021157600080fd5b8083526020830192505050908051906020019080838360005b83811015620002475780820151818401526020810190506200022a565b50505050905090810190601f168015620002755780820380516001836020036101000a031916815260200191505b50604052505050838383600062000291620003cd60201b60201c565b905080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350826004908051906020019062000348929190620003f1565b50816005908051906020019062000361929190620003f1565b5080600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050600081511115620003c357620003c281620003d560201b60201c565b5b50505050620004a0565b600033905090565b8060079080519060200190620003ed929190620003f1565b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200043457805160ff191683800117855562000465565b8280016001018555821562000465579182015b828111156200046457825182559160200191906001019062000447565b5b50905062000474919062000478565b5090565b6200049d91905b80821115620004995760008160009055506001016200047f565b5090565b90565b61304080620004b06000396000f3fe608060405234801561001057600080fd5b50600436106101365760003560e01c80638da5cb5b116100b8578063bd85b0391161007c578063bd85b03914610bf4578063c311c52314610c36578063cd7c032614610c58578063e985e9c514610ca2578063f242432a14610d1e578063f2fde38b14610e2d57610136565b80638da5cb5b146108b25780638f32d59b146108fc57806395d89b411461091e578063a22cb465146109a1578063b48ab8b6146109f157610136565b80634060b25e116100ff5780634060b25e1461054f5780634e1273f4146105d25780634f558e7914610773578063715018a6146107b9578063731133e9146107c357610136565b8062fdd58e1461013b57806301ffc9a71461019d57806306fdde03146102025780630e89341c146102855780632eb2c2d61461032c575b600080fd5b6101876004803603604081101561015157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e71565b6040518082815260200191505060405180910390f35b6101e8600480360360208110156101b357600080fd5b8101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610eb9565b604051808215151515815260200191505060405180910390f35b61020a610f6a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561024a57808201518184015260208101905061022f565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102b16004803603602081101561029b57600080fd5b8101908080359060200190929190505050611008565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102f15780820151818401526020810190506102d6565b50505050905090810190601f16801561031e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61054d600480360360a081101561034257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561039f57600080fd5b8201836020820111156103b157600080fd5b803590602001918460208302840111640100000000831117156103d357600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561043357600080fd5b82018360208201111561044557600080fd5b8035906020019184602083028401116401000000008311171561046757600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156104c757600080fd5b8201836020820111156104d957600080fd5b803590602001918460018302840111640100000000831117156104fb57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611108565b005b6105576111b9565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561059757808201518184015260208101905061057c565b50505050905090810190601f1680156105c45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61071c600480360360408110156105e857600080fd5b810190808035906020019064010000000081111561060557600080fd5b82018360208201111561061757600080fd5b8035906020019184602083028401116401000000008311171561063957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561069957600080fd5b8201836020820111156106ab57600080fd5b803590602001918460208302840111640100000000831117156106cd57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050506111f6565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561075f578082015181840152602081019050610744565b505050509050019250505060405180910390f35b61079f6004803603602081101561078957600080fd5b810190808035906020019092919050505061133c565b604051808215151515815260200191505060405180910390f35b6107c161135b565b005b6108b0600480360360808110156107d957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019064010000000081111561082a57600080fd5b82018360208201111561083c57600080fd5b8035906020019184600183028401116401000000008311171561085e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611481565b005b6108ba611559565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610904611583565b604051808215151515815260200191505060405180910390f35b6109266115e2565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561096657808201518184015260208101905061094b565b50505050905090810190601f1680156109935780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6109ef600480360360408110156109b757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611680565b005b610bf260048036036080811015610a0757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190640100000000811115610a4457600080fd5b820183602082011115610a5657600080fd5b80359060200191846020830284011164010000000083111715610a7857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190640100000000811115610ad857600080fd5b820183602082011115610aea57600080fd5b80359060200191846020830284011164010000000083111715610b0c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190640100000000811115610b6c57600080fd5b820183602082011115610b7e57600080fd5b80359060200191846001830284011164010000000083111715610ba057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611781565b005b610c2060048036036020811015610c0a57600080fd5b810190808035906020019092919050505061189c565b6040518082815260200191505060405180910390f35b610c3e6118b9565b604051808215151515815260200191505060405180910390f35b610c606118c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610d0460048036036040811015610cb857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118e8565b604051808215151515815260200191505060405180910390f35b610e2b600480360360a0811015610d3457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919080359060200190640100000000811115610da557600080fd5b820183602082011115610db757600080fd5b80359060200191846001830284011164010000000083111715610dd957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050611915565b005b610e6f60048036036020811015610e4357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061197b565b005b600080610e7e84846119ec565b9050610e8a8385611a46565b610e945780610eb0565b610eaf610ea084611a59565b82611a9c90919063ffffffff16565b5b91505092915050565b60006301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610f52575063d9b67a2660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610f605760019050610f65565b600090505b919050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110005780601f10610fd557610100808354040283529160200191611000565b820191906000526020600020905b815481529060010190602001808311610fe357829003601f168201915b505050505081565b6060600761101583611b24565b60405160200180838054600181600116156101000203166002900480156110735780601f10611051576101008083540402835291820191611073565b820191906000526020600020905b81548152906001019060200180831161105f575b505082805190602001908083835b602083106110a45780518252602082019150602081019050602083039250611081565b6001836020036101000a038019825116818451168082178552505050505050905001807f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600501925050506040516020818303038152906040529050919050565b8151835114611162576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612ebd6040913960400191505060405180910390fd5b60008090505b83518110156111b1576111a4868686848151811061118257fe5b602002602001015186858151811061119657fe5b602002602001015186611915565b8080600101915050611168565b505050505050565b60606040518060400160405280600581526020017f322e302e32000000000000000000000000000000000000000000000000000000815250905090565b60608151835114611252576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612f2d602c913960400191505060405180910390fd5b606083516040519080825280602002602001820160405280156112845781602001602082028038833980820191505090505b50905060008090505b8451811015611331576000808683815181106112a557fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106112f557fe5b602002602001015181526020019081526020016000205482828151811061131857fe5b602002602001018181525050808060010191505061128d565b508091505092915050565b6000806006600084815260200190815260200160002054119050919050565b61136b611366611c2e565b611c36565b6113c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612e8f602e913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61149161148c611c2e565b611c36565b6114e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612e8f602e913960400191505060405180910390fd5b6114ef83611a59565b821115611547576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526035815260200180612dd36035913960400191505060405180910390fd5b61155384848484611c8d565b50505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166115c6611c2e565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156116785780601f1061164d57610100808354040283529160200191611678565b820191906000526020600020905b81548152906001019060200180831161165b57829003601f168201915b505050505081565b80600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051808215151515815260200191505060405180910390a35050565b61179161178c611c2e565b611c36565b6117e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612e8f602e913960400191505060405180910390fd5b60008090505b83518110156118895761181184828151811061180457fe5b6020026020010151611a59565b83828151811061181d57fe5b6020026020010151111561187c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612fd2603a913960400191505060405180910390fd5b80806001019150506117ec565b5061189684848484611e25565b50505050565b600060066000838152602001908152602001600020549050919050565b60006001905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006118f4838361219b565b15611902576001905061190f565b61190c83836121dc565b90505b92915050565b600061192186856119ec565b905082811015611965576119498585611943848761227090919063ffffffff16565b85611481565b60008111156119605761195f86868684866122f9565b5b611973565b61197286868686866122f9565b5b505050505050565b61198b611986611c2e565b611c36565b6119e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612e8f602e913960400191505060405180910390fd5b6119e981612435565b50565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6000611a5182611c36565b905092915050565b600080821480611a6a575061045782115b15611a785760009050611a97565b611a94611a848361189c565b600161227090919063ffffffff16565b90505b919050565b600080828401905083811015611b1a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f536166654d617468236164643a204f564552464c4f570000000000000000000081525060200191505060405180910390fd5b8091505092915050565b60606000821415611b6c576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611c29565b600082905060606040518060400160405280600481526020017f303030300000000000000000000000000000000000000000000000000000000081525090506000600182510390505b60008314611c2257600a8381611bc757fe5b0660300160f81b82828060019003935081518110611be157fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8381611c1a57fe5b049250611bb5565b8193505050505b919050565b600033905090565b60008173ffffffffffffffffffffffffffffffffffffffff16611c57611559565b73ffffffffffffffffffffffffffffffffffffffff161480611c865750611c85611c7f611559565b8361219b565b5b9050919050565b611cef826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086815260200190815260200160002054611a9c90919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002081905550611d68826006600086815260200190815260200160002054611a9c90919063ffffffff16565b60066000858152602001908152602001600020819055506000611d8a8461257b565b90508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628787604051808381526020018281526020019250505060405180910390a4611e1e818686865a8761258c565b5050505050565b8151835114611e7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526030815260200180612efd6030913960400191505060405180910390fd5b6000835190506000611ea485600081518110611e9757fe5b602002602001015161257b565b905060008090505b8281101561207e576000868281518110611ec257fe5b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff16611eec8261257b565b73ffffffffffffffffffffffffffffffffffffffff1614611f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526037815260200180612e586037913960400191505060405180910390fd5b611fcd868381518110611f6757fe5b60200260200101516000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054611a9c90919063ffffffff16565b6000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000208190555061205986838151811061202f57fe5b60200260200101516006600084815260200190815260200160002054611a9c90919063ffffffff16565b6006600083815260200190815260200160002081905550508080600101915050611eac565b508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8888604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561212e578082015181840152602081019050612113565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015612170578082015181840152602081019050612155565b5050505090500194505050505060405180910390a4612193818787875a886127c8565b505050505050565b60008173ffffffffffffffffffffffffffffffffffffffff166121bd84612a86565b73ffffffffffffffffffffffffffffffffffffffff1614905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000828211156122e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f536166654d617468237375623a20554e444552464c4f5700000000000000000081525060200191505060405180910390fd5b600082840390508091505092915050565b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480612339575061233885336118e8565b5b61238e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612e2e602a913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612414576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180612da8602b913960400191505060405180910390fd5b61242085858585612b6e565b61242e858585855a8661258c565b5050505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156124bb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612e086026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000612585611559565b9050919050565b6125ab8573ffffffffffffffffffffffffffffffffffffffff16612d62565b156127c05760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612693578082015181840152602081019050612678565b50505050905090810190601f1680156126c05780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600088803b1580156126e357600080fd5b5087f11580156126f7573d6000803e3d6000fd5b50505050506040513d602081101561270e57600080fd5b8101908080519060200190929190505050905063f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146127be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612f98603a913960400191505060405180910390fd5b505b505050505050565b6127e78573ffffffffffffffffffffffffffffffffffffffff16612d62565b15612a7e5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b838110156128ce5780820151818401526020810190506128b3565b50505050905001848103835286818151815260200191508051906020019060200280838360005b838110156129105780820151818401526020810190506128f5565b50505050905001848103825285818151815260200191508051906020019080838360005b8381101561294f578082015181840152602081019050612934565b50505050905090810190601f16801561297c5780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600088803b1580156129a157600080fd5b5087f11580156129b5573d6000803e3d6000fd5b50505050506040513d60208110156129cc57600080fd5b8101908080519060200190929190505050905063bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614612a7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603f815260200180612f59603f913960400191505060405180910390fd5b505b505050505050565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663c4552791846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612b2b57600080fd5b505afa158015612b3f573d6000803e3d6000fd5b505050506040513d6020811015612b5557600080fd5b8101908080519060200190929190505050915050919050565b612bd0816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008581526020019081526020016000205461227090919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550612c85816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002054611a9c90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051808381526020018281526020019250505060405180910390a450505050565b600080823f90506000801b8114158015612d9f57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b8114155b91505091905056fe4552433131353523736166655472616e7366657246726f6d3a20494e56414c49445f524543495049454e544173736574436f6e7472616374236d696e743a205155414e544954595f455843454544535f544f4b454e5f535550504c595f4341504f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734552433131353523736166655472616e7366657246726f6d3a20494e56414c49445f4f50455241544f52455243313135355472616461626c652362617463684d696e743a204d554c5449504c455f4f524947494e535f4e4f545f414c4c4f574544455243313135355472616461626c65236f6e6c794f776e65723a2043414c4c45525f49535f4e4f545f4f574e45524173736574436f6e7472616374536861726564237361666542617463685472616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e475448455243313135355472616461626c652362617463684d696e743a20494e56414c49445f4152524159535f4c454e475448455243313135352362616c616e63654f6642617463683a20494e56414c49445f41525241595f4c454e47544845524331313535235f63616c6c6f6e45524331313535426174636852656365697665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474545524331313535235f63616c6c6f6e4552433131353552656365697665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147454173736574436f6e74726163742362617463684d696e743a205155414e544954595f455843454544535f544f4b454e5f535550504c595f434150a265627a7a72315820ab6bf7a6000078e1623b36cab60be0e88fa95e5e283a49ba2bac48ad65cc2a2364736f6c63430005110032000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000a5409ec958c83c3f309868babaca7c86dcb077c10000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001431313131206279204b6576696e2041626f73636800000000000000000000000000000000000000000000000000000000000000000000000000000000000000043131313100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007a68747470733a2f2f357667776236736d6a75377564756570786272756172347061616933786675746a6b7375676836376e736178793567656a7136712e617277656176652e6e65742f375531672d6b784e503048516a37686a51456550414247376c704e4b70554d6633327942664854455444302f313131312d000000000000