0x000000000000000000000000000000000000000000000000000000000000000061014060405234801561001157600080fd5b50604051610de2380380610de283398101604081905261003091610140565b604080518082018252601681527f466c657869626c654e6f6e6365466f7277617264657200000000000000000000602080830191825283518085019094526005845264302e302e3160d81b908401528151902060e08190527fae209a0b48f21c054280f2455d32cf309387644879d9acbd8ffc1991638118856101008190524660a0529192917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6101268184846040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b6080523060c0526101205250505060019190915550610159565b60006020828403121561015257600080fd5b5051919050565b60805160a05160c05160e0516101005161012051610c3a6101a860003960006106c901526000610718015260006106f30152600061064c01526000610676015260006106a00152610c3a6000f3fe6080604052600436106100295760003560e01c80632d0335ab1461002e57806347153f8214610077575b600080fd5b34801561003a57600080fd5b506100646100493660046109b2565b6001600160a01b031660009081526020819052604090205490565b6040519081526020015b60405180910390f35b61008a6100853660046109e2565b610098565b60405161006e929190610ab1565b600060606100a785858561017f565b6000806100ba60408801602089016109b2565b6001600160a01b0316606088013560408901356100da60a08b018b610aed565b6100e760208d018d6109b2565b6040516020016100f993929190610b34565b60408051601f198184030181529082905261011391610b5a565b600060405180830381858888f193505050503d8060008114610151576040519150601f19603f3d011682016040523d82523d6000602084013e610156565b606091505b50909250905061016b603f6060890135610b76565b5a1161017357fe5b90969095509350505050565b600061029183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061028b92507fdd8f4b70b0f4393e889bd39128a30628a78b61816a9eb8199759e7a349657e4891506101ee905060208901896109b2565b6101fe60408a0160208b016109b2565b60408a013560608b013560808c013561021a60a08e018e610aed565b604051610228929190610b98565b6040805191829003822060208301989098526001600160a01b0396871690820152949093166060850152608084019190915260a083015260c082015260e081019190915261010001604051602081830303815290604052805190602001206105c7565b9061061b565b90506102a060208501856109b2565b6001600160a01b0316816001600160a01b0316146103305760405162461bcd60e51b815260206004820152604e6024820152600080516020610be583398151915260448201527f20666f72776172646564206973206e6f74207369676e6564206279207468652060648201526d3932b8bab2b9ba1039b2b73232b960911b608482015260a4015b60405180910390fd5b608084013560008061034560208801886109b2565b6001600160a01b0316815260208101919091526040016000205414156103d75761037460808501356001610ba8565b60008061038460208801886109b2565b6001600160a01b0316815260208082019290925260400160009081209290925543919081906103b5908801886109b2565b6001600160a01b03168152602081019190915260400160002060010155610544565b6000806103e760208701876109b2565b6001600160a01b03166001600160a01b031681526020019081526020016000206002016000856080013581526020019081526020016000206000018383604051610432929190610b98565b9081526040519081900360200190205460ff16156104a8576040805162461bcd60e51b8152602060048201526024810191909152600080516020610be583398151915260448201527f20666f727761726465642068617320616c7265616479206265656e207365656e6064820152608401610327565b6001546000806104bb60208801886109b2565b6001600160a01b03166001600160a01b03168152602001908152602001600020600101546104e99190610ba8565b4311156105445760405162461bcd60e51b81526020600482015260356024820152600080516020610be583398151915260448201527408199bdc9dd85c991959081a5cc81d1bdbc81bdb19605a1b6064820152608401610327565b600160008061055660208801886109b2565b6001600160a01b03166001600160a01b0316815260200190815260200160002060020160008660800135815260200190815260200160002060000184846040516105a1929190610b98565b908152604051908190036020019020805491151560ff1990921691909117905550505050565b60006106156105d461063f565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b92915050565b600080600061062a8585610766565b91509150610637816107ac565b509392505050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561069857507f000000000000000000000000000000000000000000000000000000000000000046145b156106c257507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b60008082516041141561079d5760208301516040840151606085015160001a610791878285856108f8565b945094505050506107a5565b506000905060025b9250929050565b60008160048111156107c0576107c0610bce565b14156107c95750565b60018160048111156107dd576107dd610bce565b14156108265760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b6044820152606401610327565b600281600481111561083a5761083a610bce565b14156108885760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610327565b600381600481111561089c5761089c610bce565b14156108f55760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610327565b50565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b0383111561092557506000905060036109a9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610979573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a2576000600192509250506109a9565b9150600090505b94509492505050565b6000602082840312156109c457600080fd5b81356001600160a01b03811681146109db57600080fd5b9392505050565b6000806000604084860312156109f757600080fd5b833567ffffffffffffffff80821115610a0f57600080fd5b9085019060c08288031215610a2357600080fd5b90935060208501359080821115610a3957600080fd5b818601915086601f830112610a4d57600080fd5b813581811115610a5c57600080fd5b876020828501011115610a6e57600080fd5b6020830194508093505050509250925092565b60005b83811015610a9c578181015183820152602001610a84565b83811115610aab576000848401525b50505050565b82151581526040602082015260008251806040840152610ad8816060850160208701610a81565b601f01601f1916919091016060019392505050565b6000808335601e19843603018112610b0457600080fd5b83018035915067ffffffffffffffff821115610b1f57600080fd5b6020019150368190038213156107a557600080fd5b8284823760609190911b6bffffffffffffffffffffffff19169101908152601401919050565b60008251610b6c818460208701610a81565b9190910192915050565b600082610b9357634e487b7160e01b600052601260045260246000fd5b500490565b8183823760009101908152919050565b60008219821115610bc957634e487b7160e01b600052601160045260246000fd5b500190565b634e487b7160e01b600052602160045260246000fdfe466c657869626c654e6f6e6365466f727761726465723a20747820746f206265a26469706673582212207ae3b528fb4b8f18e7cf06ebb13b6b47fd43f3b9dcef8b3338be8309c512dd4664736f6c634300080900330000000000000000000000000000000000000000000000000000000000000064