#!/usr/bin/env ruby
# RubyEncoder v2.4.1.1
if not self.respond_to?(:RGLoader_load,:include_private) then _d = _d0 = File.expand_path(File.dirname(__FILE__)); while 1 do _f = _d + '/rgloader/loader.rb'; break if File.exist?(_f); _d1 = File.dirname(_d); if _d1 == _d then raise "Ruby script '"+__FILE__+"' is protected by RubyEncoder and requires a RubyEncoder loader to be installed. Please visit the http://www.rubyencoder.com/loaders/ RubyEncoder web site to download the required loader and unpack it into '"+_d0+"/rgloader/' directory in order to run this protected file."; exit; else _d = _d1; end; end; require _f; end; RGLoader_load('AAQAAAAEaAAAAIAAAAAA/6HGTinE/Iz8JF3VuOjoqlntEld7b5qL8/qreOWHkbPHnS/XkohTZr5h/Pk/7dxRIl1UKukfOkOAyTVVA5OSm52O1wcDm+ANF8AzRr1KXfrL5eKOso/Qd+AkXgZZf4AA175p64b1GqrWFwAAAAQAAABgFgAAQuVJy7gMaiujpbn4ENdF6+1NrOpfgn3+Nmyh5U3ooQUbCDpHmS+mZq8zTFo7kEU4bxfVSgV9P1BvixDKC8KyKxKqA77TFXAbRSsk55Mz6oUcVrWKQYjmiHXN1jnHvvsy8Qb6YWH8qvvBCt16uEZ7xWHd/sXMj+kNkSyIx5W/pcQMC5rZfbIgBiNxNPcpF91TBkfMblJhM9Fg1mSWb4hGxrHMXRz5TxX0Y6ehyd9RDzuhB7EeAVL0gJIbkeExVpNZzCVKZB5cNPdhMxnWqK20StxdF9R6jHaUm4JO3Q9KzCEPzoRO6fcDwpZWVWFNqZ+4TnTyFep/YQASRPRaTeUqNbeGmmTk6US//qLRdMU4wasY0f/0tsPa0iSxECocYGnv7tP00d5MLbc3JSp4nPr3Y07drLXNawwUGHMtFPSTCLTw5ZvyCCoIAI00dzlmHqN0ogadlaB2iABr5+5bRKLMd3hVBvNpDosoRXDYJGJHpaUvusVrHV2NNwZ401zqHkYnGVFDXeoDzAWs1WWlj7evWvrGDvpHivengYg3Mm++CULuemlsdU4BAnBGgHdslJyzDPtFdW9pIoZw/tzk4SsCpSsBI2JJuiRtkdldQ2Zuml9UeogUW9C42a97kMzY1vZ/d2jvjtYo+Ns2+aAbIRSZkG0FUW+Wj3cJBYLLDMVhEanea3z9syivlDurkefP352pAtFt01O6owA4pTCZ9JBJxgP3GagKisoet+O2jj78MfoMoABF09+KNaumoe8Lwr5Z5uhYKZgvPNzbnQ3pYp/PZQr7Mh7EIZuEcKv2aJBuy+lbHA0UUYRo1uBt6NofA9Xet9U+DNLMlr8pmO0RBl+5yxPcAy2FHdzTYUjurBX2O+e/hpM1a4RpR/n5gXXTsOYYGsdr1wtQ7psdPVvjEejJhcyD4nLAiSFUkIWt0HCscKUqxaMKC5bZWx2tMERQTBGnapexAdZZZbN8I8OW4jeWYLolwfGD5ARn8VMOqiTDGR41FLl/FLy2dVfD1jwBZEX/Ag57Q1xm7H/g1hnXK1KsZV9f86tl/GMst+mje3b2ESLtuSk4mlH9OzvyKwkdJmDU/HY5RIAG2MeGvTyWRqHaji33ZxmiohKVlraEDVnFK/Vc0Pt3+/3JBw6wYEqjIjP00ocdHhGVl9JjRnynzUPw8A1bF/lIEQ8wGTaMdqJKiOxRTJPCqFZGbGhHTuKTtEManIbevuA2oYhiR7ECEZ18aTA5FGHfEAnoAVJ18qt5q1qsUf+B4iAjENMx1II6uYAkcJgrUO5AJOSs1MeGOO1hbFaQnNpUDjw5lebWi2J+S9XZ1EnSXEpH1uBbcF396D4XMuD/8avkVk3XSzrR7oMC9NlSZG5xpz9gzTqEmrPSpuHmAhkS+xN66IpFVJP2podm5LnJEEjoUP3GwdcNKJjHukxyfE1/0Qj9S3TraXrkLWu7azQAUrsFh6NzN736jPqNCMXw9F6vnLnragY4oEESBT+dcV6YgO0sDseDpfa88wqXuu6ejTJcVn0CtlKnwJ8ErPgDsorMHFkYCq2/dxlTSNSRDek7Eacate/Yo/oYykI2ljGnbbAiwSu3Y2lJaXV80HLb+ZHIYJZlYAieew7qnu5uaFriaIMLk1VDOVOiGoJsETcpzwnAXh3mJo3vir6M728zPfEu0/xSoXf+6LkuHxVvcUXdDfmaxh1dHbUo0I9hqzB32Ta0CrH7ETG9Ycto7ofaEiEbNZ/2btPDtsadtOX8Hs5Dyl3VBQ8cgCaq69ubfbZZzBKOK0raqGsKVwcij+kjm39xptrzSI5K83lFsKUEJ6mTiFeKdrr62Xycc6fSdUl5AzTKHM60xA4JpnVk1gB/FRxTD5aq0zuiZjIrL8XRbJrbTk4IUDihAePQ3TipRuo9Ft/lTu0pdp5YiPAaQuSYWvgpJYBPSlMNasKixfK8q9DD+DyIM6mwfNJKwGzYF6vvJvwGSGKVcKInmR4/7L9eFT2a+qSM5I/LkHOBw8lVJ7xQ8K1jub92o6BX6hoWCyjRl9lUHm1wHKccGytA8iff1fubpqqaQejVF14ob9DSaVbIL8RxBTJRNvSTysgj5Ag93Rt1iA/WHBiH8i1w0W5ZhE1q77uQ01Cmtjbt9vmwRXvulbu6drT+/JY4P7OX9VAos8nodcoqBbjru+FKUjJHFvMif6ykTh7Cdm7YJwZqRSPKQSg7ijGN8nRHUFOqVlXiJ5WZPvRQSaBRO87dOoLBW7ztuf/KIgNzhQPkWbsnRsUrl9X9xI3AHigIc90r6XWO24Gukb6yVJvy8rYwEdJbKUUqb7JZGfAZuf3NseYQ9sEnBZZqzvY0giXZs+zgYhSXsUWNXL4Wa0sLKCO3SI5+JL/3vakx7uKFYSOFsMkxFbU/xGexn0iP7rnch6WUUuwnKpq5wGcD+ScP/+zKnTIX64ejlb9e78/jYQwGCJpeg/O7BYgeNcZna93N7MSgt6iyyLEDC+FiZSrFjsuJ5obMJmX3T+pXUmGnVIsDPe58OCjha3WqxwFodcua9wx70S2cuokdUfo1kx9KxCvBr/wsBJAdxOtfPk34xJqFTpC3QvH+VawZH9IdUkBG/poe6EAg7WN6YASl2uRecqRCDvMO3xTAG6t7he2X6HLhm4bmlS6U2aFdNchuEKCFC1Yxw9MOAFQ6XbJdIE3PXxy1biO5hXF0Kx/iT/F3KL06mo5wYjIbJfjr2qj+Tj0lGjGkKNezj1B3zlmjRrEOLs160AYcY8j4bME3vOwlEBZxEf0Clmksz+5pjqtHdQMn0Hmq47+PR9fFWvlcjFyUlDSBNKAXaPf61LZToETFbNc0nj6feDZ0ytP7F1RimoHqCDjwjdS6As2wrjGNljec+gU/fnbMxu6laxa101c6hSswpvPJ4BaxoRmr2gk50Xug1ZahtxAC2dFUyzhf8QoGEM1dOZjS7msaSmmiXs5aE/aoqmUR1135ZNkYpvu5v0gP4VCQeCwsV7mx67IaVi4Z/edFkpmgV4SHXRuu/2EOxIZjLyr7FT0z3Eue6+hiZgnllS1CykojDMkkHyCy4Gjjx33jpLihImxWSLlv2075DFBwEDE4gIZ251R4z/Xn4+mkqffhgtjSvwerfFlG+8aa4+oR3NYdACkkVt+kOPBpJVBy/oV7EzGSl/CC9xN+XECda85qA04/Csxx7JkzLyimyYKTxxXpyoDO91Zg0P9GCfwBfSLeNpycwzfd4DfvefDOTlGqbYb1LW+kxTuYDojLrhkapZxF/o9N/UIXcFwpsUO1MIGNKiMy9eZ7kTF0N+5z1pFds1bZXRSJVAnIAnGCRGMpvohdvwk6ATX+xNbtKydlj7F1pmchTCW5/QXt2N19Vb0FkBawuezQO7A6CXfB5KAM+HMAG54MFtst16m7fKWxB3G3sgNEFIZ0/XinIDliSnq/z5xALJeHSk/9KzxRaF1e4VSysymF5IGNPh2Hj0lIFTJeS9cIVYjV7tPddYx1rqSJW7+VUBoc8CB4DbvkQt9wiiPeeAjOiHt8itdfWkRr9fjLKB0IWFGv0QihnSj43BJx/+4GTmWK/NrDx9XXrK1yNxpcXh1KhpQ//dbS5Sz8tXHvEJqbj4tDUWFlTN4KXUbUVs4Lw86DPkws/UGdoXigjL+thSxm3Et6Q3hn/JFRwyRObt6H96tQTgr9uyoLLUHYVXtCGy1+7aoDPozA5Jevd9i1yOzsIkAloLMYr3pew01yCrzUKGI+pAcVOIGrNjLHm5CJ2PNNYazOAcJ3V/6/U2txSob7B0X5o/AaKp/6Dm6M5PY+4CYgSHG9MQXJTYsiR/hFYEOVItvxn/RADRD9PbpoRC2vdAErCzsaK2Y/Aay0SNHde4gapjy/84aWJN/SIiDFCcOB2VHFuBpyIFxQUEh+DZmH5iHyoaBmYz7AmG9HJaQwG0150l/flMrBbHCZaupoYsbn7+ykVSARlE51ABJLTKvU1rw9HSv3Ho9XN9QyetCLaeZAOV+gkf5mrwzkyiueWVPwxkIHbn4h0rLC66B6oyZUjFI7Pg1fPKBfpjG16ihNR4LnLo3PSPXcR1XPiR3Td96bgoiNABgvtnmSiYrcqDYoyogrkB3kMWbahIIpu/RK+6omyCQmK9wJE0z+us+WKAIWS/W1TRM4v9NVGl06ll8U/Gh6WfkeBx4NxDHdorUdZ4cNNkzAlB+OeruvwLT2piMrk9VxHfWxikW22iPA8F3WXl7QlWoZ3YNr41imnXIe7eaRcaw9IU6Bto6GZ+fWfw5ojcx/Mth45Kwi6GvwViRziJw8PiB+Xv4CYwgOGGB1Iqz3k7HXVy00uxzLMtaBKngNoJd0Xd0iLMZXFI1tKAncFoKoqLJtyMe9AMfbMphszdw+ebyJS2PuniCUcia0pgwHYOSw0U0rEvE23ucV+tmYUM5RYCp9r5Wan4N85AGKci/UxYSazaidCEOgZ4rEWlCrJ76T8SjAcqCgGYfRwnMqhfsqWvhkLx0NmWpri8r6046WcJuBpMDPVfuqgRCpUjJkLnly3Dpj/N+QhoL18CE6q1aOrxNgkYoA9kBxWIAJKuxEBz+dNln/V4zM/9B2OCpJhhknqoeh6QkY1CNRFOQduyvbiXSTC8TA6eXO1XeMb8TF25fsJwQsVJjzFUZ3q0WULevQuoXmvc7fvgKi2ZmDOR3vQVHJRaOE+8uL1d9hqv2ILWpSaOnbp7WCId9PoHP1UsRcOugHxTQ/I/GZrw6tV4BKn0g0r8r5+7xdl9vYo5eB+VFYTuC48Tvpw4t8aFExvKKKZTTB/PGw4hJ2MatC11H8aeN9zHt9+NBoY7WLbf3jKojUXrALX8RlVnR2Jh2nN0PgOHarKJQ3P7ySFbEBeSMwzvRd55VeCIMlqQYl+jrVjqaukkXTkKdGLKTOJWnm8pyawITIwHqfu7Md7X3BBu6GZ6jImegf92ixrnGqTr5jgUDwkxOeEBV1UtqHws7NyXghUEr5SZMqIfCBf0AUODwIvpc4hioLVuQgShvK9PLzatrrw5EhJMijOaSWXKOHW2l1P34MB0BZS1CezeZXWtSFwU3utF2WxmevTyRFlOQRM58/oIEtidfXKVRHmSBEyOBAirQfm5F8/+Vk5P6yFPu6VskHc/PWgED9HBZKsJfqebggxPtDQFXAMlrvwyn33ybyF8yidI2uANaM7jif65FXV/qmjWRV10aIOzP1L192VQIshtbdOTtnLya3RG7H1BV/XR9vYjspKn2Nvda0J0jJuSx7XOEnyLD0UGR0Kk7o0fWsc1QBMjMs1s8OfXYxw2rX0D8vmhnZDdtuHdKaP97Pes+OH0fOc54p3fRQSHO6JzktBx+g+pnBjUQvSL3xeyxi3FOszawt6suLAqZDhOEXUcnbbnwgbwzwdTcetZz9SIBhPZyUW+HMloQg/ufmMWzNClgovEB1ifF0L97rfJb6JhdzerepQ9MFiy2I3JMgDcOQ+131Rv7KDL/dscAcQ/gBWAut6tMm5KNCaax5gAk7vZiYcSeINRbHM0G06L5VDyGZk8uHwpzcbDef2rD4WHULK9FPBOYowIB4qGYjjdg4coapef2x7xtpR3qFk1FYhT7VcFvjJ7OrKU+Bm2YUfEPz0h9IxIt5sHB1pnOYk6DICUxAScWds8FDJur8iYHqbPbedH0drnVQ2L7pPqRdl5ZVAdI7f9cVnjoImtjYgEm46egXljUiKpUDaSZZ6jITwiDHGyO2G9Y6kQ9utOC2KkDZwwDDjATEV+IsVELUCo3Nmod3vFnBE/y0zR5g6A2YXrL5yc07i4YAbefGn9+aZOqMSNb6dZn2dUt9qR4BlOg9STeQSSPSRhHV86gTJPpM8NU1GRxoG4cPM6NHWG+ExCpsWdFCP2+RpZWlmwRzH331AGzLFN5jWJTMJ2uPHrxGxB1W5gUghiGUtE8aYwNEc0MghDY0JMcKTPG52twyQxW2HTBbiqojq5ZXoypWmL6hknCbeu9MJOJpyu/HGcENpyrLaL97z6tABPQZjAmziOWVnvUHArWQTK3rrB1uSRQg3fYuhko2E+s05QItn5bLrXG8pHrIF1T9bVICzSDpIzC9vR8z8WMnYZqpiwKIP4DINKlVoWcIW4jPwycs7Ti86lleOHnohaw+0PK6BjqA+XMjyPYzqiMHuDW/VTMdMTzREBVfdOenc3LlqmXMWtZzvarH2y4zJJr3ioTmawAHP7Iy3zij+I2mB/E2YmP7KcNP5TiR7cDpP+zhs8qF6XGS07q0kEBEupadBDL866kZro2tyjIs6rV+MFgo4DrqjSjasd75RpGciNdVnzuUDoxVjqwciEn+o+dzdtQG4fjmrZLDwz8sS9UIAVx2Pxw038TohVtl7CrPq53rdRia7TCQQqGT1mULZnNyHDGIEqcCu6HYGEenczCakJ/4oQI/E4g0LLbGJtG59QV76rQVlLGU0g4VEH71+c6M6gxT1AiEcZEytjDWcT53l17jwT0NDZ837FgX9ZJ5S7Dx0YcgNlb1dXNm/s3MZlXKccIWCSmDR0IXn3vQsebRbbCjM7eGK0+3t7v8cb+iUVY+GmFBRawHNynWfM/IG2sILkXH0iJpMq1WlT+gAEZutrRffUNJTYGHyZQvGesVJcZAejK1aabpdusrW9hTV4o80keqpLxUpZa8uGTk/FctOo3BZoxh8482kIAZE8y5SiAiHM/9LCkAoCKurzKT/x7DbJZrwMCk2tAQCf5pUOLWMrkMBUwxT3Rf5gbA4mHaxnQPRy9chnwrADHlRrMnU+T/jB6YFulSNvNwXI+L8lZEBrwpsNy2wUqqfHE/Fmose6UW6esioOgV2kcZ/6nE0t26c3nf/5rNGFRBWiK3sXP5bMELI8I0VSre9g+5i5uINqfFLl5nWpIwGh8wDUE/UNrI/g8hm24NpxnkSs7l9+mukhaQ1gpUgx1eWWosnu/gwUqfFE2fAEdVprleSsYXXtVNKCo1FmP2QFEUuB59dM6/oF0kx7F7leHFB0r/As060Gid4Vz4c/jnNISOlmhifBgBE3O5Tp5cKh8rWWq7KkG7PlH8jNPjwqK9kGtsOIYPWgj4AofQAmMCmxDBS2u5DxLfovDSrBZiaWhjy4OHLPbq++zn0nwqftmf9db6JW6WC9Fk5pOeYEu/zelmOB0nz32ulaOKWu2t+flmDFiClaCCfUmnTq9b9YiBnbV/9V+5cP1qWsaVobSk7SAeb8jMBVF7EdexmCY5woNISNxgNw8oPndXbOp1vNRmQlG9OgfjbfNXXhI8KojmwnBaEZ5/w0YQitOs/fXcKy/+vSj/ZLFRJ0w2X0AXXfBjIBf3LwOdA/Zm0akA4saQnhw4HmBuJV1tCVxRuApsVM1zHbHroObH7edJkrtXiQoxGiJxdLlohbcLSRXNrtORArs/cgaAttE33fPKp+b0sr3u+Xqq7pX1w3wGKMRUHoEdDBhqlLCHeD+HITMy4DY9lus4BITgqK0cCe+SH3YHWchyrmaBdTFo+9PG7+W2U8w7n2Sn7YNTXkJwMVTjnCsULIhqdZ4ySSIKRgdBf0qcb+Zio70Up0Sv+m/AhplhepXtOYxbcmR1Rr+uAlK8+r1G2Dt1BNGg8Rt3XfAiy9tky5AGNyd2qFzkJgAAAAA=');
