/*
Simplified installation of mayaHooks, just drag this into maya to start the installation.


All the code for the mayaHooks python module is compressed here with zlib
and base64.  I tried to have it all as plain text but escaping multiline code
within multiline code that contained multiline code got too complicated.
*/
python("\n\
import json\n\
import base64\n\
import datetime\n\
import os\n\
import zlib\n\
\n\
try:\n\
    base64_decodebytes = base64.decodebytes\n\
except AttributeError:\n\
    base64_decodebytes = base64.decodestring # decodestring is a deprecated alias in 3.1\n\
\n\
from maya import cmds\n\
\n\
try:\n\
    import mayaHooks\n\
    exists = mayaHooks.__file__ # Somehow mayaHooks can end up as namespace only in 3, investigate later.\n\
except:\n\
    exists = False\n\
buildTime = '2023-10-15 18:33:49.129308'\n\
if exists:\n\
    existinInfo = os.path.join(os.path.dirname( mayaHooks.__file__ ) + '-info', 'info.json')\n\
    existingBuildTime = None\n\
    if os.path.exists(existinInfo):\n\
        try:\n\
            with open(existinInfo, 'r') as fid:\n\
                data = json.load(fid)\n\
\n\
            existingBuildTime = data.get('utc_build_time', None)\n\
        except Exception:\n\
            pass\n\
\n\
    if existingBuildTime:\n\
\n\
        if buildTime > existingBuildTime:\n\
            res = cmds.confirmDialog(m='Update with this newer version of mayaHooks?\\n\\nExisting build time: {}\\nThis new build time: {}'.format(existingBuildTime, buildTime),\n\
                b=['Upgrade', 'Cancel'])\n\
            if res != 'Upgrade':\n\
                raise Exception('Canceled install')\n\
\n\
        else:\n\
            res = cmds.confirmDialog(m='Downgrade to this older version of mayaHooks?\\n\\nExisting build time: {}\\nThis old build time: {}'.format(existingBuildTime, buildTime),\n\
                b=['Downgrade', 'Cancel'])\n\
            if res != 'Downgrade':\n\
                raise Exception('Canceled install')\n\
\n\
    else:\n\
        res = cmds.confirmDialog(m='An existing mayaHooks was found but the build time could not be determined.\\n\\nUpdate to this version?    {}'.format(buildTime),\n\
            b=['Update', 'Cancel'])\n\
        if res != 'Update':\n\
            raise Exception('Canceled install')\n\
\n\
scriptFolder = os.environ['MAYA_APP_DIR'] + '/scripts'\n\
\n\
# write files to scriptFolder + '/mayaHooks'\n\
\n\
allFiles = '''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\n\
cizKG51dZSQJODx6E6bOF+ir8aZ4UDCUAy4sTrw7bTlNNpc0/JEz6rQB0fiCjnexOb0/Nj7qLdlR\n\
/seIMQwLRA8FE4K8thxxTBdbQxvssxxs2ub4ncRH1zN1zT4qaGu+15mvY9IVSfm4zknVtXgwFB+v\n\
H3lVpQ+60TTqVtcmtW3o0dHjeB12Je+KqgdRFdga6iAtF1XS2I5v9VEr7HO9s1qoMwpCb8AbKYiC\n\
WGm0eLWo6J2rA41uwJfj1gYIPPtq76I+KZ4e9b0S/Kk2Lh/Ll334tY+Ppf5+6Qb+2Xu1XL+IP9qr\n\
zsGnlb3hzeo5lLHr3S/lzcakundYuV6ulz/XG6XhYX1/umofVeqf6s3ypX16U7dXG/tnG+ba58u1\n\
8peTldXL4qegfhWclSrXnrc6nrhLff9636+U7NPK0dnj2fLBVePw6/hov2xfBONgudl//fh68roX\n\
VJpWu9ZfmWyXJg1n4/m6vj/4OOgWX5575v7J6dFL8XzDbI+bz+3j8+XJ5tpgq/L82e/6a/72eGm5\n\
VmyfeEsNszzwGsfNbsff97ZOmxuTy8+d6/ZktDJoOluXa4/WhbV2Ulr/NHKOVq6Wrk6m4dZzaJ99\n\
PDf7mwfPz9dXy0Ht6OD1y8vn8sV68+vj5+lJr7ZZu/AG5c7oS/NpHD6Fg2pz3Xvab346b9jT+rBo\n\
L1+VO9Ol7WBt6+K6feM8bQ3HL92r8XH5qXHprvm2d2I5z4321WG41DwLNobT5Y+rbnuyVb3yw+Ny\n\
eDAplz6Na9399b0vV9Py8aSzVz52yhf+aL0zHS596TjDj+W1YidYOWvfHBc/X65fmNvDl69mp/10\n\
4LpmuLk07F6evFaD1eW9rYPT1dfi8c3ha6925Z9tfr5oPx++nnhbxcbnYLN8Ot6sbI16pUp3Mujf\n\
dGunx0cTRAVn0jh0XuHHWRnwY/+lslcMV5aWESmewpN6+fDyujQIr9ZWPl0dXl72lpbD1el2f+lq\n\
eFMuNcrTT1O3vFdsl1+an05vqtPy1/rl5X5n5ezaOn0JT4Lnx4H7euSWT7+MhvWBZW6Vtp+mw4F5\n\
ao1qh2f1E7+9t3feLe3tWSdn14ePJWfw+ePqWW9z21+7aC/Vwsq5P+0ceK+1tXZtrbv1cXv7ZfPV\n\
d9cmX09fy0tro7WrrcGX1evR6mpxMqiZzecvxU+nT2Pr+XV1e7PTWVpafnWm4/bqeL07bB6e+Y5z\n\
dXZysrHqXeyHH0sr/trmcsfqFq+uji04kV7Xtn3LPwzqQWPla/H6YnOwVB88TqfnjdH5cHvv9WTt\n\
+nSl2t88P/n0VDx3z68bx4dV68vX8abptL8+3jQnTs95csprlcrpa9/qFV+tT2Ft090eNza6W0u1\n\
g4/NZn1QGU/HZedsY8u6Cjdfvqzs208vF9fjk62PF+Wlm8bHx/36/lGw/Pq81gnMjcnS53DYdr88\n\
bxwNzs2J97r/2nnsHx3v718c9863/M2L4nW42n2pTdeeet5Jtz+oueHhZf3Ve9rwT1dXn8srB069\n\
c31jrrwcDg4PLve88kbx4Hl0fP7RP26HfrhiHzcur/tf90rbe5UDu9QddWp+Z2Pz2B8dP33+2ujX\n\
ncPmp4N+UDlx1/aeNs82b9YvNoHq1hrDq08fu72ztaf6yfroeq827JY2T4en4xf/xit/3N54vXpd\n\
31jZLvaDMqzuq9lo2/X+Y7ffnZzsX4Vd1zZLK9tfOoA025uftk5HzRe/tHm+/vz8yS6PV/2NvdWP\n\
3mGnsTW9aZRfLpbPV/2j5c/m+Gpt8HE0bthfmr3jvb1Pl85p0byp1XynflFvL9W3raVLJ1w+X/IO\n\
zC+DjcvlzuGwdtMpnlQd//zp0v2y/7pevXBGN59rx19L7sb48cVZXrm8PDyolDdO+5+vTj5Xr/Y2\n\
R+7Z58OPq6v2xhoQw6P+9cnRaf+0slqq7X+yVupr3ZOKc7G6GRafl1dPnq8Pv3x1N+pn7ujj2Fl7\n\
Dc3rlcpXe1o62D4IJ85z+Xnv+clzvqz0T7b6z/WLsTcyw9UNf+xfr44+BUXA5OYnq30y/XJsrZ45\n\
z/aN6z579l5pab93erb9VA0ft7Yn/a/PlxsrL08fXwbTk872+c3JcPPq43mjdwXrczPtHe1fnDcm\n\
o7J3PmlYK0vl4GjfqjweDk6enY3u+uNhc/riVU9XzwF7Jicl53zyWP940/vSLy2PqxV7tVd/2Xsd\n\
9D5/fdlb2bu5Pv36cdsfL7n71ePn4Oxy1Kg17XrDW3+tduqXV8cfx8dftxtueXtrye9dlM8ffTgX\n\
2uPBxmu4tuoeHJjX3WJj+KVSMrvr+0fTUrW/3u72KkD+KsBbnG9Orq3h4CLYvBhsHK7V4CQ4Pq6v\n\
P1trA9jK2wfT8+Hj561pzV9qlkdflivnj7Xlpeph2ap9cWrV163a5PjyeHJ2VTnp721Zm18vK+vb\n\
p5+CaXfdWvHNgdO39w7Wv96cPo32PvVfrfNVs3ZzvXrg9w43Vq8mg6XKaOuqeNDo751/2qo6zlKp\n\
u3R2tHn9qd882T+62S+197fLJ6PeVbG0vX44PjyfPm5uBl/3XMBkcxqcNp4ej6215+eVdadUPayW\n\
h0/e/sbJ5y+BeXzcta3JQVjaO9y6Pvy0/Ol4+tI3L9y9il395Gx/Wm3UPK90Y32GXVJfXfloDZeP\n\
nWrz03TvedQ7C6qTafl5ul6+rJaPmsfe3ufVfq+/5S99XlmvmOV6267sbx0M3H7p6WtYnTiHvXDl\n\
efXYfe71OqXzJfN4dWO71gw6x9XLy+HzeM/9er1UPR15q275pX5+/ulycjXZGl4drV7sf/3SXvEr\n\
7ZXOo2etLm05ayfn+0fHLhDLjY1642Pn+Kl3uRK8nh8unQzPKp8mqw2nUd48dT+Wmy+re/u9/svz\n\
p5POzfrZ6+ZmpXZcH7v96tpWZ7w2Pnvce37eOz3dCq5qvbVuzfncXHld3n88qo+WntduikXzzBoD\n\
Ubs6Bsq55tea3pcXy/LWjooHp/61c7JhHa0tTwcfv2z3v648P26u9g6Dykv7aXD9sRt+ftma7C0d\n\
LW08bk02a/WNk5ub1dWXcNM6GTV7vRU4cm7aoXda36jb9ZPnk1p36fEyDK2z59ENnH/P/lb3OPhy\n\
1nlypnD8VCufwqC3/tW3Pj6X3dLeeeXiYvj1vO7dbD9ZX1cCd+95qWc2lh6t9t7QuqzdHFcOArN6\n\
Mdpevzxqrps3l1610w6KjU/V68vO+PVxcD0qX60OphtubeNo8wW6Xx3tOV++BF+C/mvn+XU48f1B\n\
Zz1olje23OPrTatysDUeh18b1vLyqvPZadgbW1evB/b28HPpY+318Xrf3r8cPE6+tD9urJ3UgK6u\n\
nk0n9nF3PD5c31r/7AD3dbw5Kg4/Hxw0G5Xt9eOLw716OO0s+dMT++Lz9vYNLMnhxlPts10NzyfH\n\
59VS7/Gp0y/dfLq4Oi5bX84/nT8tj4Ljz8/jTyc3my9b7b1ar9y0LfNrf3u4dHFgTj+XDmzrsb38\n\
uWhdLh9+8qx+0Tmurn+qF/vd04tG/6Di9U5r+/V1d7/0ccutHe0tVZ6rvbUzuwacxZf65NAelEr1\n\
eqnc/LrvOB+vXjYv6sFSxetuTZdfOmtfzwad7npI/MjeSf3yY9l/Oun3+7u7MX6XiR5xy9eYHSQa\n\
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\n\
WoaElRwbK64L6uNeF+wQ54vU9OPf/wIBQtAd\n\
'''\n\
allFiles = json.loads(zlib.decompress( base64_decodebytes(allFiles.encode('utf-8')) ))\n\
\n\
for name, text in allFiles.items():\n\
    #print('unpacking ' + name)\n\
    filepath = os.path.join(scriptFolder, name)\n\
    dirname = os.path.dirname(filepath)\n\
\n\
    if not os.path.exists(dirname):\n\
        os.makedirs(dirname)\n\
\n\
    if name.lower().endswith('.png'):\n\
        rawBytes = base64.b64decode(text)\n\
        with open(filepath, 'wb') as fid:\n\
            fid.write(rawBytes)\n\
    else:\n\
        with open(filepath, 'w') as fid:\n\
            fid.write(text)\n\
\n\
\n\
def remPackage(packageName):\n\
    # Remove reference to the given `packageName`\n\
\n\
    wasRemoved = False\n\
    import sys\n\
    dotName = packageName + '.'\n\
    for name in list(sys.modules.keys()):\n\
        if name.startswith(dotName):\n\
            del sys.modules[name]\n\
            wasRemoved = True\n\
\n\
    if packageName in sys.modules:\n\
        del sys.modules[packageName]\n\
        wasRemoved = True\n\
\n\
    return wasRemoved\n\
\n\
\n\
hooksExisted = remPackage('mayaHooks')\n\
remPackage('mayaHooksCore')\n\
\n\
import mayaHooks.install.core # noqa\n\
import mayaHooks.packaging # noqa\n\
settings = mayaHooks.install.core.loadSettings()\n\
\n\
info = {'utc_build_time': '2023-10-15 18:33:49.129308', 'icon_paths': ['icons'], 'shelf_items': [{'command': 'import mayaHooks;mayaHooks.main()', 'image': 'mayaHooksGui.png', 'annotation': 'Maya Hooks Gui'}]}\n\
\n\
mayaHooks.install.core.update(settings, 'mayaHooks', 'common',\n\
    utc_install_time=str(datetime.datetime.utcnow()),\n\
    **info\n\
)\n\
\n\
# Remove old overrides so they get updated if needed and don't leave cruft behind\n\
import mayaHooks.override.baseOverride # noqa\n\
mayaHooks.override.baseOverride.clearAllOverrides()\n\
\n\
import mayaHooksCore # noqa\n\
mayaHooks.install.core.update(settings, 'mayaHooksCore', 'common',\n\
    utc_install_time=str(datetime.datetime.utcnow()),\n\
    utc_build_time=mayaHooksCore.getBuildTime(),\n\
)\n\
\n\
# Add a user setup entry to support dev installs (and icon folders)\n\
mayaHooks.install.core.userSetupEdit('common', 'mayaHooks startup', 'import mayaHooks;mayaHooks.startup()')\n\
\n\
if hooksExisted:\n\
    cmds.confirmDialog(m='mayaHooks successfully installed!')\n\
else:\n\
    import mayaHooks._startup\n\
    cmds.confirmDialog(m='! IMPORTANT !{0}{0}Middle Mouse drag the mayaHooks shelf item to your own to access it again,{0}or see the script editor for the python code to open it.'.format(os.linesep))\n\
\n\
hooksPackagePath = mayaHooks.install.core.defaultScriptsPath('common') + '/mayaHooks'\n\
mayaHooks._startup.addIconPaths(info, hooksPackagePath)\n\
\n\
print( \"\"\"# Code to open mayaHooks gui\n\
import mayaHooks\n\
mayaHooks.main()\n\
# End mayaHooks code\"\"\")\n\
\n\
import inspect\n\
\n\
try:\n\
    reload\n\
except NameError:\n\
    from importlib import reload\n\
\n\
class FullReload(object):\n\
\n\
    @staticmethod\n\
    def cleanpath(path):\n\
        return os.path.normcase( os.path.normpath(path) )\n\
\n\
    def __call__(self, top):\n\
\n\
        self.reloaded = set()\n\
        self.src_path = os.path.dirname( self.cleanpath(top.__file__) )\n\
\n\
        self.reload_module(top)\n\
        print('done', len(self.reloaded))\n\
\n\
    def reload_module(self, top):\n\
        self.reloaded.add(top.__file__)\n\
        for name in dir(top):\n\
            sub = getattr(top, name)\n\
            if inspect.ismodule( sub ):\n\
                if hasattr(sub, '__file__') and sub.__file__ not in self.reloaded:\n\
                    try:\n\
                        if self.cleanpath(sub.__file__).startswith( self.src_path ):\n\
                            self.reload_module(sub)\n\
                    except AttributeError:\n\
                        raise\n\
        reload(top)\n\
\n\
\n\
fullReload = FullReload()\n\
\n\
import mayaHooks # noqa\n\
fullReload(mayaHooks)\n\
mayaHooks.main()");