0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6133d580620000f46000396000f3fe6080604052600436106102515760003560e01c80638952f10811610139578063cce7ec13116100b6578063d547741f1161007a578063d547741f1461073f578063d6037aba1461075f578063e25a1a0c1461077f578063e985e9c514610794578063ec3829ef146107dd578063f0098e5f146107f857600080fd5b8063cce7ec1314610691578063ce40b03f146106a4578063cf4f31c7146106bb578063d3ccf5f2146106db578063d53913931461071d57600080fd5b80639c5e8d9c116100fd5780639c5e8d9c146105fc578063a217fddf1461061c578063a22cb46514610631578063b88d4fde14610651578063c87b56dd1461067157600080fd5b80638952f1081461056757806391b7f5ed1461058757806391d14854146105a757806395d89b41146105c75780639b099055146105dc57600080fd5b8063248a9ca3116101d2578063340b309811610196578063340b30981461049457806336568abe146104ab57806342842e0e146104cb57806354fd4d50146104eb5780636352211e1461052757806370a082311461054757600080fd5b8063248a9ca3146103c5578063248b71fc146103f55780632a55205a146104155780632b280ef0146104545780632f2ff15d1461047457600080fd5b806316b32eaa1161021957806316b32eaa1461031c57806318160ddd146103415780631e75bd1a1461035757806320b92bf61461038557806323b872dd146103a557600080fd5b806301ffc9a71461025657806306fdde031461028b578063081812fc146102ad578063095ea7b3146102e557806315702c4e14610307575b600080fd5b34801561026257600080fd5b50610276610271366004612874565b610813565b60405190151581526020015b60405180910390f35b34801561029757600080fd5b506102a0610833565b60405161028291906128e9565b3480156102b957600080fd5b506102cd6102c83660046128fc565b6108c5565b6040516001600160a01b039091168152602001610282565b3480156102f157600080fd5b50610305610300366004612931565b6108ec565b005b34801561031357600080fd5b506102a0610a07565b34801561032857600080fd5b5061033361012e5481565b604051908152602001610282565b34801561034d57600080fd5b5061012f54610333565b34801561036357600080fd5b5061033361037236600461295b565b6101356020526000908152604090205481565b34801561039157600080fd5b506103336103a03660046128fc565b610a96565b3480156103b157600080fd5b506103056103c0366004612976565b610aa7565b3480156103d157600080fd5b506103336103e03660046128fc565b60009081526065602052604090206001015490565b34801561040157600080fd5b50610305610410366004612931565b610ad8565b34801561042157600080fd5b506104356104303660046129b2565b610afa565b604080516001600160a01b039093168352602083019190915201610282565b34801561046057600080fd5b5061030561046f3660046128fc565b610ba6565b34801561048057600080fd5b5061030561048f3660046129d4565b610bdb565b3480156104a057600080fd5b506103336101345481565b3480156104b757600080fd5b506103056104c63660046129d4565b610c00565b3480156104d757600080fd5b506103056104e6366004612976565b610c7e565b3480156104f757600080fd5b506040805180820190915260138152724c53524e6674436f6c6c656374696f6e20763160681b60208201526102a0565b34801561053357600080fd5b506102cd6105423660046128fc565b610c99565b34801561055357600080fd5b5061033361056236600461295b565b610cf9565b34801561057357600080fd5b5061033361058236600461295b565b610d7f565b34801561059357600080fd5b506103056105a23660046128fc565b610db9565b3480156105b357600080fd5b506102766105c23660046129d4565b610e28565b3480156105d357600080fd5b506102a0610e53565b3480156105e857600080fd5b506103056105f7366004612af8565b610e62565b34801561060857600080fd5b50610305610617366004612d04565b610e77565b34801561062857600080fd5b50610333600081565b34801561063d57600080fd5b5061030561064c366004612e2c565b6112b9565b34801561065d57600080fd5b5061030561066c366004612e56565b6112c4565b34801561067d57600080fd5b506102a061068c3660046128fc565b6112fc565b61030561069f366004612931565b6113d5565b3480156106b057600080fd5b506103336101325481565b3480156106c757600080fd5b506103056106d6366004612ed2565b611506565b3480156106e757600080fd5b506106fb6106f63660046128fc565b611550565b604080516001600160a01b03909316835261ffff909116602083015201610282565b34801561072957600080fd5b5061033360008051602061338083398151915281565b34801561074b57600080fd5b5061030561075a3660046129d4565b611587565b34801561076b57600080fd5b5061030561077a3660046128fc565b6115ac565b34801561078b57600080fd5b50610333611634565b3480156107a057600080fd5b506102766107af366004612eed565b6001600160a01b03918216600090815260ce6020908152604080832093909416825291909152205460ff1690565b3480156107e957600080fd5b50610131546102769060ff1681565b34801561080457600080fd5b50610133546102769060ff1681565b600061081e8261164d565b8061082d575061082d82611682565b92915050565b606060c9805461084290612f17565b80601f016020809104026020016040519081016040528092919081815260200182805461086e90612f17565b80156108bb5780601f10610890576101008083540402835291602001916108bb565b820191906000526020600020905b81548152906001019060200180831161089e57829003601f168201915b5050505050905090565b60006108d08261168d565b50600090815260cd60205260409020546001600160a01b031690565b60006108f782610c99565b9050806001600160a01b0316836001600160a01b0316141561096a5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b0382161480610986575061098681336107af565b6109f85760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610961565b610a0283836116ef565b505050565b6101308054610a1590612f17565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4190612f17565b8015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505081565b6000610132548261082d9190612f68565b610ab1338261175d565b610acd5760405162461bcd60e51b815260040161096190612f87565b610a028383836117dc565b600080516020613380833981519152610af08161194d565b610a028383611957565b60008281526098602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046001600160601b0316928201929092528291610b6f5750604080518082019091526097546001600160a01b0381168252600160a01b90046001600160601b031660208201525b602081015160009061271090610b8e906001600160601b031687612f68565b610b989190612fea565b915196919550909350505050565b6000610bb18161194d565b81610134541415610bd45760405162461bcd60e51b815260040161096190612ffe565b5061013455565b600082815260656020526040902060010154610bf68161194d565b610a028383611a00565b6001600160a01b0381163314610c705760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610961565b610c7a8282611a6c565b5050565b610a02838383604051806020016040528060008152506112c4565b600081815260cb60205260408120546001600160a01b03168061082d5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610961565b60006001600160a01b038216610d635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610961565b506001600160a01b0316600090815260cc602052604090205490565b600061082d610d8c611634565b610134546001600160a01b03851660009081526101356020526040902054610db49190611adc565b611af7565b6000610dc48161194d565b81610dfe5760405162461bcd60e51b815260206004820152600a6024820152695a65726f20707269636560b01b6044820152606401610961565b81610132541415610e215760405162461bcd60e51b815260040161096190612ffe565b5061013255565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060ca805461084290612f17565b6000610e6d8161194d565b610a028383611b0e565b600054610100900460ff1615808015610e975750600054600160ff909116105b80610eb15750303b158015610eb1575060005460ff166001145b610f145760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610961565b6000805460ff191660011790558015610f37576000805461ff0019166101001790555b610f418c8c611b77565b610f4c60008b611a00565b610f646000805160206133808339815191528b611a00565b60005b89518161ffff161015610fb957610fa96000805160206133808339815191528b8361ffff1681518110610f9c57610f9c613024565b6020026020010151611a00565b610fb28161303a565b9050610f67565b506000805b895181101561114d5760006001600160a01b03168a8281518110610fe457610fe4613024565b6020026020010151600001516001600160a01b031614156110475760405162461bcd60e51b815260206004820152601860248201527f5a65726f207368617265686f6c646572206164647265737300000000000000006044820152606401610961565b89818151811061105957611059613024565b60200260200101516020015161ffff16600014156110a65760405162461bcd60e51b815260206004820152600a6024820152695a65726f20736861726560b01b6044820152606401610961565b61012d8a82815181106110bb576110bb613024565b6020908102919091018101518254600181018455600093845292829020815193018054919092015161ffff16600160a01b026001600160b01b03199091166001600160a01b039093169290921791909117905589518a908290811061112257611122613024565b60200260200101516020015182611139919061305c565b91508061114581613082565b915050610fbe565b508061ffff166127101461119a5760405162461bcd60e51b8152602060048201526014602482015273496e76616c696420746f74616c2073686172657360601b6044820152606401610961565b876111e75760405162461bcd60e51b815260206004820152601e60248201527f5a65726f206d617820706f737369626c6520746f74616c20737570706c7900006044820152606401610961565b61012e889055610134879055855160208701516112049190611b0e565b8461123e5760405162461bcd60e51b815260206004820152600a6024820152695a65726f20707269636560b01b6044820152606401610961565b610132859055835160208501516112559190611ba8565b50610133805460ff191683151517905580156112ab576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050505050565b610c7a338383611ca5565b6112ce338361175d565b6112ea5760405162461bcd60e51b815260040161096190612f87565b6112f684848484611d74565b50505050565b60606113078261168d565b6101315460ff166113a357610130805461132090612f17565b80601f016020809104026020016040519081016040528092919081815260200182805461134c90612f17565b80156113995780601f1061136e57610100808354040283529160200191611399565b820191906000526020600020905b81548152906001019060200180831161137c57829003601f168201915b505050505061082d565b6101306113af83611da7565b6040516020016113c09291906130b9565b60405160208183030381529060405292915050565b6101335460ff166114165760405162461bcd60e51b815260206004820152600b60248201526a14d85b19481c185d5cd95960aa1b6044820152606401610961565b806114565760405162461bcd60e51b815260206004820152601060248201526f16995c9bc81b5a5b9d08185b5bdd5b9d60821b6044820152606401610961565b610134546001600160a01b0383166000908152610135602052604090205461147f908390613174565b11156114c45760405162461bcd60e51b8152602060048201526014602482015273115e18d95959195908189d5e595c881b1a5b5a5d60621b6044820152606401610961565b6001600160a01b03821660009081526101356020526040812080548392906114ed908490613174565b909155506114fc905081611ea5565b610c7a8282611957565b60006115118161194d565b6101335460ff161515821515141561153b5760405162461bcd60e51b815260040161096190612ffe565b50610133805460ff1916911515919091179055565b61012d818154811061156157600080fd5b6000918252602090912001546001600160a01b0381169150600160a01b900461ffff1682565b6000828152606560205260409020600101546115a28161194d565b610a028383611a6c565b60006115b78161194d565b8161012e5414156115da5760405162461bcd60e51b815260040161096190612ffe565b61012f5482101561162d5760405162461bcd60e51b815260206004820152601a60248201527f4e657720737570706c79206c696d697420746f6f20736d616c6c0000000000006044820152606401610961565b5061012e55565b600061012f5461012e54611648919061318c565b905090565b60006001600160e01b03198216637965db0b60e01b148061082d57506301ffc9a760e01b6001600160e01b031983161461082d565b600061082d8261200d565b600081815260cb60205260409020546001600160a01b03166116ec5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610961565b50565b600081815260cd6020526040902080546001600160a01b0319166001600160a01b038416908117909155819061172482610c99565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061176983610c99565b9050806001600160a01b0316846001600160a01b031614806117b057506001600160a01b03808216600090815260ce602090815260408083209388168352929052205460ff165b806117d45750836001600160a01b03166117c9846108c5565b6001600160a01b0316145b949350505050565b826001600160a01b03166117ef82610c99565b6001600160a01b0316146118155760405162461bcd60e51b8152600401610961906131a3565b6001600160a01b0382166118775760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610961565b611884838383600161204d565b826001600160a01b031661189782610c99565b6001600160a01b0316146118bd5760405162461bcd60e51b8152600401610961906131a3565b600081815260cd6020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260cc855283862080546000190190559087168086528386208054600101905586865260cb90945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6116ec81336120d5565b61012f5461012e546119698383613174565b11156119c25760405162461bcd60e51b815260206004820152602260248201527f4578636565646564206d617820706f737369626c6520746f74616c20737570706044820152616c7960f01b6064820152608401610961565b6119cc8282613174565b61012f5560005b828110156112f6576119f0846119e884613082565b93508361212e565b6119f981613082565b90506119d3565b6001600160a01b038116611a625760405162461bcd60e51b8152602060048201526024808201527f556e61626c6520746f206772616e7420726f6c6520746f207a65726f206164646044820152637265737360e01b6064820152608401610961565b610c7a8282612148565b6001600160a01b038116611ad25760405162461bcd60e51b815260206004820152602760248201527f556e61626c6520746f207265766f6b6520726f6c652066726f6d207a65726f206044820152666164647265737360c81b6064820152608401610961565b610c7a82826121ce565b6000818311611aec576000611af0565b8183035b9392505050565b600081831115611b075781611af0565b5090919050565b8151611b4d5760405162461bcd60e51b815260206004820152600e60248201526d456d70747920626173652055524960901b6044820152606401610961565b8151611b61906101309060208501906127c5565b50610131805460ff191691151591909117905550565b600054610100900460ff16611b9e5760405162461bcd60e51b8152600401610961906131e8565b610c7a8282612235565b6127106001600160601b0382161115611c165760405162461bcd60e51b815260206004820152602a60248201527f455243323938313a20726f79616c7479206665652077696c6c206578636565646044820152692073616c65507269636560b01b6064820152608401610961565b6001600160a01b038216611c6c5760405162461bcd60e51b815260206004820152601960248201527f455243323938313a20696e76616c6964207265636569766572000000000000006044820152606401610961565b604080518082019091526001600160a01b039092168083526001600160601b039091166020909201829052600160a01b90910217609755565b816001600160a01b0316836001600160a01b03161415611d075760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610961565b6001600160a01b03838116600081815260ce6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611d7f8484846117dc565b611d8b84848484612283565b6112f65760405162461bcd60e51b815260040161096190613233565b606081611dcb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115611df55780611ddf81613082565b9150611dee9050600a83612fea565b9150611dcf565b60008167ffffffffffffffff811115611e1057611e10612a00565b6040519080825280601f01601f191660200182016040528015611e3a576020820181803683370190505b5090505b84156117d457611e4f60018361318c565b9150611e5c600a86613285565b611e67906030613174565b60f81b818381518110611e7c57611e7c613024565b60200101906001600160f81b031916908160001a905350611e9e600a86612fea565b9450611e3e565b60006101325482611eb69190612f68565b9050803414611f075760405162461bcd60e51b815260206004820152601760248201527f5061796d656e7420616d6f756e74206d69736d617463680000000000000000006044820152606401610961565b61012d54600080805b611f1b60018561318c565b8161ffff161015611fc05761271061012d8261ffff1681548110611f4157611f41613024565b600091825260209091200154611f6290600160a01b900461ffff1687612f68565b611f6c9190612fea565b9250611f788383613174565b9150611fb061012d8261ffff1681548110611f9557611f95613024565b6000918252602090912001546001600160a01b031684612390565b611fb98161303a565b9050611f10565b5061200661012d611fd260018661318c565b81548110611fe257611fe2613024565b6000918252602090912001546001600160a01b0316612001838761318c565b612390565b5050505050565b60006001600160e01b031982166380ac58cd60e01b148061203e57506001600160e01b03198216635b5e139f60e01b145b8061082d575061082d82612426565b60018111156112f6576001600160a01b03841615612093576001600160a01b038416600090815260cc60205260408120805483929061208d90849061318c565b90915550505b6001600160a01b038316156112f6576001600160a01b038316600090815260cc6020526040812080548392906120ca908490613174565b909155505050505050565b6120df8282610e28565b610c7a576120ec8161244b565b6120f783602061245d565b604051602001612108929190613299565b60408051601f198184030181529082905262461bcd60e51b8252610961916004016128e9565b610c7a8282604051806020016040528060008152506125f9565b6121528282610e28565b610c7a5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561218a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6121d88282610e28565b15610c7a5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661225c5760405162461bcd60e51b8152600401610961906131e8565b815161226f9060c99060208501906127c5565b508051610a029060ca9060208401906127c5565b60006001600160a01b0384163b1561238557604051630a85bd0160e11b81526001600160a01b0385169063150b7a02906122c790339089908890889060040161330e565b602060405180830381600087803b1580156122e157600080fd5b505af1925050508015612311575060408051601f3d908101601f1916820190925261230e9181019061334b565b60015b61236b573d80801561233f576040519150601f19603f3d011682016040523d82523d6000602084013e612344565b606091505b5080516123635760405162461bcd60e51b815260040161096190613233565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506117d4565b506001949350505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146123dd576040519150601f19603f3d011682016040523d82523d6000602084013e6123e2565b606091505b5050905080610a025760405162461bcd60e51b815260206004820152601060248201526f10dbda5b881cd95b990819985a5b195960821b6044820152606401610961565b60006001600160e01b0319821663152a902d60e11b148061082d575061082d8261164d565b606061082d6001600160a01b03831660145b6060600061246c836002612f68565b612477906002613174565b67ffffffffffffffff81111561248f5761248f612a00565b6040519080825280601f01601f1916602001820160405280156124b9576020820181803683370190505b509050600360fc1b816000815181106124d4576124d4613024565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061250357612503613024565b60200101906001600160f81b031916908160001a9053506000612527846002612f68565b612532906001613174565b90505b60018111156125aa576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061256657612566613024565b1a60f81b82828151811061257c5761257c613024565b60200101906001600160f81b031916908160001a90535060049490941c936125a381613368565b9050612535565b508315611af05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610961565b612603838361262c565b6126106000848484612283565b610a025760405162461bcd60e51b815260040161096190613233565b6001600160a01b0382166126825760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610961565b600081815260cb60205260409020546001600160a01b0316156126e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610961565b6126f560008383600161204d565b600081815260cb60205260409020546001600160a01b03161561275a5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610961565b6001600160a01b038216600081815260cc602090815260408083208054600101905584835260cb90915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b8280546127d190612f17565b90600052602060002090601f0160209004810192826127f35760008555612839565b82601f1061280c57805160ff1916838001178555612839565b82800160010185558215612839579182015b8281111561283957825182559160200191906001019061281e565b50612845929150612849565b5090565b5b80821115612845576000815560010161284a565b6001600160e01b0319811681146116ec57600080fd5b60006020828403121561288657600080fd5b8135611af08161285e565b60005b838110156128ac578181015183820152602001612894565b838111156112f65750506000910152565b600081518084526128d5816020860160208601612891565b601f01601f19169290920160200192915050565b602081526000611af060208301846128bd565b60006020828403121561290e57600080fd5b5035919050565b80356001600160a01b038116811461292c57600080fd5b919050565b6000806040838503121561294457600080fd5b61294d83612915565b946020939093013593505050565b60006020828403121561296d57600080fd5b611af082612915565b60008060006060848603121561298b57600080fd5b61299484612915565b92506129a260208501612915565b9150604084013590509250925092565b600080604083850312156129c557600080fd5b50508035926020909101359150565b600080604083850312156129e757600080fd5b823591506129f760208401612915565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715612a3957612a39612a00565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612a6857612a68612a00565b604052919050565b600067ffffffffffffffff831115612a8a57612a8a612a00565b612a9d601f8401601f1916602001612a3f565b9050828152838383011115612ab157600080fd5b828260208301376000602084830101529392505050565b600082601f830112612ad957600080fd5b611af083833560208501612a70565b8035801515811461292c57600080fd5b60008060408385031215612b0b57600080fd5b823567ffffffffffffffff811115612b2257600080fd5b612b2e85828601612ac8565b9250506129f760208401612ae8565b600067ffffffffffffffff821115612b5757612b57612a00565b5060051b60200190565b600082601f830112612b7257600080fd5b81356020612b87612b8283612b3d565b612a3f565b82815260059290921b84018101918181019086841115612ba657600080fd5b8286015b84811015612bc857612bbb81612915565b8352918301918301612baa565b509695505050505050565b600082601f830112612be457600080fd5b81356020612bf4612b8283612b3d565b82815260069290921b84018101918181019086841115612c1357600080fd5b8286015b84811015612bc85760408189031215612c305760008081fd5b612c38612a16565b612c4182612915565b81528482013561ffff81168114612c585760008081fd5b81860152835291830191604001612c17565b600060408284031215612c7c57600080fd5b612c84612a16565b9050813567ffffffffffffffff811115612c9d57600080fd5b612ca984828501612ac8565b825250612cb860208301612ae8565b602082015292915050565b600060408284031215612cd557600080fd5b612cdd612a16565b9050612ce882612915565b815260208201356001600160601b0381168114612cb857600080fd5b60008060008060008060008060008060006101808c8e031215612d2657600080fd5b67ffffffffffffffff808d351115612d3d57600080fd5b612d4a8e8e358f01612ac8565b9b508060208e01351115612d5d57600080fd5b612d6d8e60208f01358f01612ac8565b9a50612d7b60408e01612915565b99508060608e01351115612d8e57600080fd5b612d9e8e60608f01358f01612b61565b98508060808e01351115612db157600080fd5b612dc18e60808f01358f01612bd3565b975060a08d0135965060c08d013595508060e08e01351115612de257600080fd5b50612df38d60e08e01358e01612c6a565b93506101008c01359250612e0b8d6101208e01612cc3565b9150612e1a6101608d01612ae8565b90509295989b509295989b9093969950565b60008060408385031215612e3f57600080fd5b612e4883612915565b91506129f760208401612ae8565b60008060008060808587031215612e6c57600080fd5b612e7585612915565b9350612e8360208601612915565b925060408501359150606085013567ffffffffffffffff811115612ea657600080fd5b8501601f81018713612eb757600080fd5b612ec687823560208401612a70565b91505092959194509250565b600060208284031215612ee457600080fd5b611af082612ae8565b60008060408385031215612f0057600080fd5b612f0983612915565b91506129f760208401612915565b600181811c90821680612f2b57607f821691505b60208210811415612f4c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615612f8257612f82612f52565b500290565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082612ff957612ff9612fd4565b500490565b6020808252600c908201526b416c726561647920646f6e6560a01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600061ffff8083168181141561305257613052612f52565b6001019392505050565b600061ffff80831681851680830382111561307957613079612f52565b01949350505050565b600060001982141561309657613096612f52565b5060010190565b600081516130af818560208601612891565b9290920192915050565b600080845481600182811c9150808316806130d557607f831692505b60208084108214156130f557634e487b7160e01b86526022600452602486fd5b818015613109576001811461311a57613147565b60ff19861689528489019650613147565b60008b81526020902060005b8681101561313f5781548b820152908501908301613126565b505084890196505b50505050505061316b61315a828661309d565b64173539b7b760d91b815260050190565b95945050505050565b6000821982111561318757613187612f52565b500190565b60008282101561319e5761319e612f52565b500390565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60008261329457613294612fd4565b500690565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516132d1816017850160208801612891565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351613302816028840160208801612891565b01602801949350505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090613341908301846128bd565b9695505050505050565b60006020828403121561335d57600080fd5b8151611af08161285e565b60008161337757613377612f52565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a26469706673582212203bc8b1e81cde592bb527cea4d92cee6b75e1866e124372179fa4fe4f7c947a7164736f6c63430008090033