{
  "version": 3,
  "sources": ["/cdn/shop/t/30/assets/pm-keychain-preview.js?x=1791709441190"],
  "sourcesContent": ["/* PrintMine \u2014 Metal Keychain Live Preview \u00B7 mk06-v31 \u00B7 Shopify v3.5 \u00B7 09 Oct 2026\n   Upload to: Assets \u2192 pm-keychain-preview.js (Edit code \u2192 Assets; overwrite the old file)\n   Version v3.5 \u2014 09 Oct 2026 (mk06-v31) \u2014 theme hover-colour fix (CSS only; JS unchanged since v3.4)\n   v1.2: Front/Back side tabs (double side), per-side logo + text + size; single-side shapes have no side tabs\n   v1.3: same-design checkbox copies the side you are on to the other side\n   v1.4: engraving-artwork picker removed from the UI (mode still picked automatically)\n   v1.5: same design on both sides by default, Back tab disabled while ticked, fit capsule only on warnings\n   v1.7: round plate aligned with its ring, live preview on the shape cards, hidden SVG engraving file\n   v1.8: SVG rebuilt \u2014 interpolated outline + curve fitting instead of pixel steps\n   v1.9: Type swatch first, then the design buttons    v3.4: better engraving conversion, ported from the Logo Preview page (pm-logo-preview v1.43) \u2014\n         histogram engraving plan (mode + cut point), tighter 9-step tone band, dark outline detail\n         kept in light mode, and background removal is no longer skipped because of a stray\n         transparent pixel. Logos that used to engrave as a blank / all-white plate now come out right.\n*/\n/* ==========================================================================\n   PrintMine \u2014 Metal Keychain Live Preview v1.0\n   Laser engraving \u00B7 Rectangle / Round plates \u00B7 Front + Back sides\n   Logo + shop name + address + phone\n   ========================================================================== */\n\n/* Keychain blanks. Plate frame is an affine (parallelogram) mapping measured\n   from each photo, so artwork sits on the plate at the real camera angle.\n     cx,cy  = plate centre inside the photo (px)\n     W,H    = plate width / height across the photo (px)\n     ux,uy  = unit vector along the plate's long axis (engraving reading direction)\n     vx,vy  = unit vector down the plate\n     plateW / plateH / areaW / areaH / areaD = real millimetres\n     ou,ov  = engraving area centre offset in mm (keeps art clear of the ring loop) */\nconst PMK_SHAPES = {\"rect1\": {\"label\": \"Rectangle\", \"sub\": \"45 \u00D7 27 mm \u00B7 both sides\", \"kind\": \"rect\", \"plateW\": 45, \"plateH\": 27, \"areaW\": 34, \"areaH\": 17, \"ou\": 0, \"ov\": 0, \"defW\": 28, \"iw\": 760, \"ih\": 378, \"cx\": 236.5, \"cy\": 222.0, \"W\": 455.58, \"H\": 273.35, \"ux\": 1.0, \"uy\": 0.0, \"vx\": 0.0, \"vy\": 1.0, \"img\": \"data:image/webp;base64,UklGRqKKAABXRUJQVlA4WAoAAAAQAAAA9wIAeQEAQUxQSOlGAAAB/yckSPD/eGtEpO4jktxGkiTJZe4ZGVGW9f8Hx1LVs14j+j8B8V8M0E54vkvbsN0lx8bGzK2mzF2rxRi3F5oKwJZAPSIy3+9nUVU1uWcuTm1P0pStLaiqmvhE7KUYzsxcUaNPKTXuA3QtWrNivM967xGSdEknr8sTeI5jDS1sCU/m5txUHUkKUeWUN9hePA/Y6vrC1r5gYYMK8Nv+4FHozgF4EshtRtAAZ55JIZhmI2m8FoBtKY7HQrqg3zeALdmttQuQovd+lH4WBrzAAlhZ0UfVLtOjK1TlXIm9L26kiHLVKpeKKhiAzbGpV05VrUEE6RMw5uOcIlpj9vuJ7fTtKWJB/K4UCG0kSZIyMoM/6enp3XsARMQE9Mk3+7/zxZ/668DuyXfHbdwGtC3gdy+SDRB6iK39WJW2S7YkYQsH++UDyy7jtuVrNS3SS0KSKz+DwQ1uS6+9UAnedQKx9e1WjSq7p3186EM3iJNbD229OypLIu427HTtqapJN+6/8a4mkw/dvPOmNeXTue3u3baadm7rOZO2U1u/sjbIpRyj9dna1mNVnhO2Ae408mpi3rcDoAM3Xm1tW+2lvQTY7+8TQI+1bc8k2cp9f39ECbTWWmNiMR6GgIeLzxCYBB6mHsA5Ezg+WrOrMv7vNn4Rf0RrLyImQNdt26pbSdOY6xzJAjNe02WGYI4MjkjmLGZmZmau+gHMXPXK9cTMjBEJwQwXbZ2954OOZNmW5dY+qoiYAEqSJMmNJLP+/5vHDwABROQCzKkiYgI03da2vLH1rOt5XsmujV+Y00p6yR/4/kE4Xephi7nHrYy0mDk5zEy79jkFm46L0eUqu8xMsi3Jkt77auiVLMtl1RgeaUTEBHiSJMmRbdu2RMac+5xmn96cHqA+4DI+JXAxxncOKbi5h2fOsfZexYiYAP5mLv1Qvf/v/z////n/z/9//v+7v37I3v/3/5////z/5/8////5/0f+F+Afmmcx2FfpJAABBjzAV9YEQoYs9+1VkCwbfHVMCGQ5Ux/9BSmlBO51Hf1UJgE2+GpXCETO9BeNqbnl6cWZhZnpbrPbUK3IGeK03Wk1T5vHe3v7u4eNZtCvBLqaJQWBswG12+326vmTKydOrXRmW2LE0Wwc7szNLq3vHrZarQCT8hUrIUlOhlZnZuXUqe31lbml1T8EzGqdjZD6IAhE/JaSgMbh/u726uLC2vp+E0jC9hUpRUSqYGrz5IXza+tr6/NNwNWj6T6DDcIAFA6slDMQzd3t5YWlVy9XjyCLsK8+qVBOsHjx+qP3rS+0S5FTchYxGMiFAgEITIQB5QS908bq/P07jzYhSQ5faSoiZXT6gccePn+iDbnKFkggZFeQdlzWodIAto2VcqbcmJ2ZebTYQlllXFVSOBPrF59++fqiqHqOQA6DjAA3u+5cNJUGsB2Q67D/8tad2ZcHKIWvIkk2W08+fuPc1pR3jUIMLw7lxWagATtIRertrb649+uZBgJfHRKWbIjHfuIzp+cLcgWFkVVjhEW9vKUrBkcoZdHev//lH+xDIq4ICcKZ8sxTX3xuHZKNxN4thbyzEbgPCKxCnH7x3V+8aEEurwJJIrH06CtfuFQmW4jRy/sPwoBF5vXPf3pntUcOX/UJZbPx8tce32LXESDGSr/7+g1l1LX98MYvHp2Q0A/lCSXKk1/8cQ/O9ypFgLwv+IMwwzoI56K9fPsbn+0j6YfqKBKtC9/58RfLXqIAIYYV3pP88AxEqMiNW//9Y4hi8pCQiUBXCIRH2TMeZHtmdsqwiwQMAo2uEAido06MzTxhO27MNs6jQUgHZtBIOpFnpBNmgJCEvY9gY9uTggqn5gPf+fpldnIRuA8NEowjbACXFLX9n31rGRrFBBGhINuZIi6ObUfEsx0Q+xFxOoiLA2K3uDa2xeTs3JyN3TYR2zieQBxHAJM43Zk4GwEEBMT7Rr9SSrZLX35lc5crP+HHX+OeS8kAEh4Ojybfy5zdCjliKr37F7+9jJoxGSgKVwaI5u3z7fZpgWafFnl8fKCDGcsYOoC5BmMMi2ZzznEbi83ZWG62fjSG1FRsMpZPC9+/N+43Pv7/B8syxsJkrjMcMu7qEOZHyxg8vj0ghkDzvtBwfPLjwbjJ41HSgPtdWlek1nUui83m7eun21wfy/2+8P37g7nOeiyfxzKYc1m43x4PBn77tnr/tNCcOng8Hi5jjEAYsghzPh5j+fSpOVul9dG4e7v1YDTnY4C325wMtbk+Zt6WYczmYwadk5OTY4CUFHGUCTXEhR/3zQcbuy5Ev8Ag14nRhgnZkYT5AjNy9Zzz63/1W3OUxcFySgqyYXFtdWnlxNzMfRnLLSEH1JybmQwamCSE5MqgmN4wWB0DmnMqhkA6XSBjBMxpKNAEkEFDiQIZwSxSncViNcByAE5YMRwAkhDMhWkwIoSaDEeAhAQY1ZBAGE0hISzEhCQIUkbMiSIgljMGgQLMMAJRw4pUG/j04HB7fXdxcWevARRxdFEWLP3MX/awejmCWgEY4f2IrYHtGZIJARoBPovAFeB7d3bz+3/u2YIiDtKMQyQ6W9cevL69OtuaEr9a9463dlafPHi+1LMkH0EiSOUjX770R78/bguHO9s9fMF5ipF6b9CEclV0u3d+8BFxhKlQxX1PPXLl7HIJdjJlGeDwsYTRJodwEZB6IG0cglzcJSRgQIObJgPsg2gwaXFJSjeSbfIo8FOEFkkCgRZPkgzDwaXBTWcBLUpOtiTEp5AQSYkMlLuL9+f9YVKBjxor4NQLj82k72MBQUL2Y1+edd94am94KImHpuyW739vp5CPKKUqnvpxL5/qhHMFMsLEZCvbEAhjlUwg5DgzyQx53MHYAoSZHCaQyRxmklyXteE4QJ4nLwy5adNpxiIYhhkyBgYQAstglJIoz1/f2H1rFx0xkqrGA09sUcVAATmb7ci+URUeEzFqDwGdKVCjW7z6Zi7yUSTn4oGf9ONWnbCRBFg8lMcxC8nVWMh4B2l5nMOYQIAk7x8gF4W8Ju877G2RNQkMkkoZBMbQWju3cOv1XWQdGbIrtp67oZ4CEAE8w66ctdzXbwR4kMBDiVph0J5wjSx2glDOs7Ov/+97OY4eu/nIT/7amnclBHLfwUx+S5SeCXT0Sjk2HOKxJ4FDmzGnrQPG9cCZ9mb5wTs9C2n8SSLw4nNPLkZWfwggT4c77hvagEFYfcgMrxqQxcEUiJCwy1m99wOOWolTP/6bW+yqwCAAGRnpFSHvKfRlCSEQxw0I9EygJ4FHbC+MDasXnsocL5RCKVpz8d67uWDcS4YIc+1LF6kikIg98BkyjywDFhiMEcO7TyAEqqnVQagNgcIu5t+ZRcVRIhcPvHCOXYUA3CewSAjs0mUJA9sJ0CB9QduOznt01zh2Q3cIsFeYgRyHtBNYruqXs7uLO//9dmE8zmwhRPPSw7OJQICgywiJfgOYStuBLAGCMBhjwCHCEhoACLAso32QqJWL5sUtkuKokGidv6AdgmHFkHEq9CIZ41Q2Mvcm9gYmxz1yoBv2JE7lYSdOQKwD9EBeGCAGu0+i3ymW7vzHtwCNMcCRWLt+igqz96cy8JzCNqDKZDk5yOAIMICzsh2SNBzsFwNlN+671sVHBcxudnsuwKPIOBWgN5JANvJeciIZ2CPkYU+2T1xeaY8uD/IV1FvOu+3qX74K9viyIZfX7i97Dka5k3nAvmWQjSMocgp3W53y5KTd7HS73dOdqsox1Wk2m62l+el2oyEg5ewI9Q2vkdWa2p7XHjtNOhIs5rYjFSABGjDsgTxs59kX2CKvDA/euUX27lrcyUXvfKGSBJBDufz4X/9XxrtpXz5LFVKNkCDcOdvm2ID7c02cHu1tbi4v7zf3j1qtTrfbK3PKjqIsG83W4uLi6uLC8vLGwkwb6GUFqnGf9gupT/Smb1xuoiNAtGbAYPprLAuwIA4fQQbI1xqAfM3JTeNUvvS8goUhC8hx91/YGl8Kls8vgEy/qA98Io4DCEPKCXbm78+ur241Gs1gsBCATX2z2e6ubKyvXzx/ZglyBQpMHdqfgabi1OkCacwJchsFCEAMrMGcX/iS4yt7Q/kFsgSiVm54oW2NJ6HM6oXpSph+ewB0VUAluQY+XHx29+HLlVP6U7KE+8CAAJSFnantbJ5/9NFr6y2oKheFwRLoQLiwFrYXyRprMjMlkgQghjc6uhDyF+iXWQDGGOxGd6UbHktEZmVVSTFg9AFkJOuD6Xy8uzT7/MXc6hGQBKYyZFmmX6ZfCAEyCVg5feXGjSvrDXYrlTIBaAovGbBUau7GedA4K2i2ASMJ8F7qbZBfxhOS/OlcehPzl6nWICEi5bLclceQyNOn5iDMQI2MCAIej/sX9m599PT1VgPIsm3GVJJyhtbKhccev36yme6pDAQ43O8jFEqsn25I46vkvU+xjG2wsIYwezffIn+q7IAA86cSMl5uS+Ymf3HqhaycPvjMHjfGzF6et5HUJzH6jInNeb/97vf/480vNkpQwjZjLoWzKZdP3//KM6vsOoKhvTNsZnExeWyFuv+JyPQLQIA1QN6LvGPIKzMkd0keJdmC5IL81PGeMSZzcl86y1ckeZaDNRL39Yvy3vfRuMF0T05X2NSa/SwixvL4g3/zr37/P3WQRJiLKUEG5u5/7uVH29kGd+AdSeqDPL0xlz0pdmf+vgw3Kbsyy+PY4+hjj8rdcJRjZMRc6xwAzyqNXJfauHsJUBGKqnWpssZL8Sf/5G0V9vQlUkQuujt3P3peAwbFD1uSM1p58msvnCzdi2HOuQFf/+pfxBpHATe+PAbvGxsQQIY1kCtr7RJyozi8EIA3RFYhvLZ61xonylhE25NLXSFwmafjxa/utIFkIH7wCpEznYdfefH+6RplDOGRBdFYx5+4gcaPfO/s6lzYqq8RAsSyJAMFZIpeknSBIB1NH5XzwFzuCiBIcnnSvRgnsIzJSXnafQONpuLVdx+/C1IEb0YJwEann//qvuoQA9Co9h08CMZw9BYuphkBxW64hJ0F5BiLfnKZcZfY6HKw5mpCnuTBrKCo5k7e9NjQ/PKHx1ARUJ42FhYYh3Ja+r+fCyWHeXPKgGQz/e++s0PNlYNsj0Zl3rZXsMeLyJxpJtnVvUONczkNp85q8eGnVTmLAdIrRnMICaqjUaTzy/dibLT8+T/GFAXkQmPsZDv1qJcrv/wJFJTBG7UGiMjHN79+Y0eFS8AVNufopLtSjpng5spKClGOPXqxvNScSGvjQIRxUUBkLpM8FiyWP7o0MYC43KDoTRfzP/kcCk55cxcpdWe+82kjqQwQYDNiBQg3F5DGiNnZOY3Z9zn1FfFW+LK4MXEIc2h+EgYYt1305hc/YjyqP/xppeTC3BhkA938ztb3vvoQ5Y55k5dlYvuXP3sYdUoAm3MtSFNljjECHyzPVmEEOVQQxQBd4hWByJxDlnU1IG0lgq3IFoAEYvSgRQBi4+buODD0yQGxrVMBshtQRt0f/+sHKEePN71dY/mnP3tNTZYZrBEUu2p8nDVG7u6eThGAZ1ARxIVfOWXEODYDiGhZbRCRp6s3x4BJGqzEhXFa7k6l2f/zHVSLksvQ1Ji7+fl+LduyXYFtD9GWrZ356APksfG9sp1CkufjoSMFG4lzixMaczGXjDEiAgQEICKa3+/p0MlRKnpQJ54sPbXxva8uMlV2uSQdqeDJz59SCxuwqRa0x6GB8Ls3GZfafW+lKOgXz+WJbxbugnyUCQe2yBgEIAkQs5+8E4dL9mmn5zHkhW3UraeP/vMjyB0uT5dds337x2ukkjOWQCcAEQ6BxgLfvTudQ4NPPTXUZz4JnMWKAL6wi4ougAsgpNQq/48PF6I7nbLHQD2TQJTXdv7jtyFRcrkGMP+ruxQyIA3AHZ5UbkyDPQbk/0UhgPiRjL3ht8SCLzBkrc2xifnX75aHyDJtiaFVngwimH74T14imcs3RO/+7Q0pjDzAoJ4QGHpmHBSffK8laqN22gUf2CKBwDiUV5kTp0PM3oA0/c6ryocnoLFPhA+EuDBm7v7kP5OLMJexSTSfzfdseRBQPC0cvPcx+NDxPz9oUS9QISKHOSl9kzXvZN5hIAJCR0pl+o/W4RF7B7j/SOqJgPl589//iBwhLmlDLDxvFSqRBsS1Ir3+Doc++O+psNx3mAoeyCg/Y15e3gySbRwbo/nv7hQeRaw1QsLUDqA8aZPPv/cvXpHDvrQgEi/v7wglztdk8YOPw8NdvYysoVbdDX1i3oY9AtpuL4AHgNLCAxxac7SbbGQ48bQV6mys/uOXCXO5S837c2XBsJ5SHezbf/ubH/piwbWFyjIaIGiQE3in0lTGFYi9EQrrWuQYRCfrZDCcB2SvHLINAfgSE2RWXnWybVfRKWahj3/6Gy525OJyc6cArGkN4jhfQlcZWqhNvbiwYo1RdGZPkoRGZ7DV3TjEGDCXugnYnW+DAeLJIQD7+PEf/jf4IqWFs9T75KHKt14ALTYgKTixYfpL0F3aEwhAcqUgFO2dQ2QzEZrU2DqBMOFOB7Os9v1/bUm6KCK8uIn6xO0kfOYVJAKEzUAxs8IhtM3aXuphRi5AlNv7kZgkxfExtqA9wY0LCPCDz4d7KXxBQKytUG9dfPSdJyoYcwybpxbBfrC9Q1mqz/ZT2SDQ9moPTxQBBzuBthsEOlFBfX4cvegRF8astHOdeOyPfGS0sjYcKzcWOYSRtmeDMhw24J7ZlXJ5SDITptlcPk0DIIpdlVaAgPryE/vCQCtqZCkg7s7DZx6nLkJIfXa5iNNNbswcFKbf5sxunJTfgSwmSwmxe1JzWAhuFIrT3Pn8pS5QMwCBeO4JyUcWW5EWy4AAEbNBe/nZcgEIg8GdioJIOBOgyaI/kX/HzYI6AOIwctF+fogvhqABEv3OJ4IiX3kbRFyRqJfK0jYTK+s5CRASwCnRaQedLmXITJrG5oOvULHvBtUJkWoHd519ITDYBvUxukNBNjnghklHqAMgp6Je9JYaT0kWSIxQEFw2m2AzidrBt//VugaKCjE7zAvzXNgyEJN/2DKJh0HTRSP+9Qq+0igshnVnthLdHpOs+C4TJLbhRBtZPFtLviANMVoxGxUmYBaE2ZnJ/UL0Fht/LxlpCHFGhhNqiYk2LfzRP6GKInG4A+fNG51UXgRTIMDID4CdAmIcaxPtigGpKNys8Rs/zQxtho0Y63j/PdJEQ/HH/jgMtgVOHZnHD4mLICRqjRudIEm26fW6EOkUvPjfdkrQAEkaFNvhfRpPOApfPuFAtrLh1Kn96Vy+CGBqZS7/b4BE54j5v7V7F5CQwJyxzR//DGjCAfn6x7EnGlQBRG3+6x3F+EVzJ7ZOGSZ+bgHemdZ77Z45JxCQODYgoFo+ie4OGLPWrYQN1EYQBBCgvHrinjmMc0eeTFJQVutZFiDZkesFc9pHRZp9pCVBAh4JbEM1e2XaSdgf3Dg5ZwNmX0XZlRT42tmswzAK5FqZdgCfkZ9ZwV7bpPRxdbHtEHFT4MiNi3NJbHLqXJpKYshSToebV4tKOgTy0xuOloRvQSDe+e6JjczIBSjPzSF2We5uIrkm5GmrN7/yGQdN8ScoFOAhrHCv3l29na1yQF6QyEvLTFDAyoJdR2BPANrOdzngwSJeETg7eVjC8JKdyysCvo/fbc8lqeaiJOWlMyAm6isnKqQNIk9H6iy+hw6WcXV84aFmhtJCNlvoTeSi995yaVGfB/WBWLo4lcUErUjdR5Z7wZ5cKJ/+7DZ+q2AoPhdCZrVAW4DZJlWc8a+DwG9MzSdRLy0CAYZw6765LGmCArFwsSQ2hnROoNTY/Bi9k8Yw+Q20lbcULt3bLvKgGJOt8eYaYvKeXUOA++f6i+rk/C3eueSG/Aaq67SFlD+Ymc5izy0SUC2dIdvSADdJnN7kgVxp+ovzvQO1HeJvIMyV93Ts3l2KUWBAKHqrjzeysKkPu5w7z60yuV6em/7w3W7WbyCVpYPyp9OdJEYYYCkXL5wzE3nks8/fL5L6pPl3Wd5q+Toe/OZZRDSUdefuKkMJBA6oTNeeEJO5rJcerFU7UcYYkAR5ltvwjRoyfvsA5D3Dr2s2yUOsZgBR5NkX5tBkRrD8r+9r7MuhZGpdzv19b28EAuFvHoz30L0PVyKJvYqxyldOWkzs+Z/8wX0Fqjgr1cD8P+Xm24iLc/Bbp6LvwcfrC6lAQwUGENHbuo4mN8U/++ffxsp5SbL7JDd/7x+O29uAC9v88TEf0nagZfbd4jyE2KOojjT/5GwSk3vk7zWmkPEgJdZAfvzOa9t4XIyxQ/7YCPoiXJ/Zf2XBB0vNVNgDVFVtR/n0DcQkr1v3loRBg0BAAaz4LZvWuEBz78dXPuYZrxefvbOoAIEAeTisy19pp5jseKPZscSwsbYAH7a3xmg+9uxHRj5VsY75BvCDXisLuU8g0BDqTf+4RxATvePOd+cFoEFP62nRGp/vCYh1Lekn574SgcynOuhjvi52vztbYgYLiSHLnL7eTAWa5CC+/8msQ5I9Euf3VxvZ45H9rtjG9Wg/PHupAplOirYzy4q3PpqxBAIJcUZP3btEiEnfr54ojBEahXzt4CVjgsxAwMsiA8p53gmGxQb0mFQH/7toGFMvhnfU2v8Di0nffBZLyRIawi0qcn4VxZjEypDXJgPg2cZbs9wAmWFRk9eWIiLAIDG0LdV+9dMUnviQPt4sjTEDlVkg/ZadveyxKGaNF8kLkx0vGndbGcQIDWXe/1IXcQzwJ1PzOYQ0iFP16u+vW2OBLPLqDAHuHdgiGFeRixUVPLYVqE99rnEfIH9yQ8GxMN05USQQIyHS79g7TjEWAeNFYoZ4xdPykSHj63ikJIriD88mbCEQUo2qXOz/vzJzLBQfzy9WEh6JKa8dLZgxnTFeA/hVrFNi/KEblhRc+DeRkST2bHDt1g+zjwfETj4XxqjGMymKcrabPA4S9CJ50W7K1kVKVfAT3hcjNBicW/+NojwmyB+udipJAzgUcJp6vSPGc5gvAvKaciFr80Zzviai9Ud3PQrRX9Y//2EqOSZatz9bQ1DjESDF9OGixyK+yBv6kOi6BDKh3wl7GfGIVJRc+MdGqtMQ/bZO/zfJY+XOEH67066kOo4FuD692tE4wO0tnpZ1yzqz3QzgMSkt+UnvZIuRmpi+9xPGO+ysFHd3tlGMAiHx23Y20FiAOz6RkA66Jjmvk9SYXTKgVFm9IHLjqeUkl0350Tweq801/PpRzVT2AIhe84k5Dma0Ea9BrFu4bcKO54FV02+FeGVUJx8sdr7lBSOnvXs9vUUAyzeCqCB6gHjgBDoQj7hUZGcFQrncEcgCJGUu3SNwwhokIvwSLp+z2XpgFMTU68eIt8nU/my97iqgB9E7e00+AF4W9lYI7WUZpEbG15iDzLCFeKGSHlyuFLkcGsDw6wX89mAs7j1OwzyN1H66tPYPvkNX6N7gCAhhCaFDvIY1pEEGsZ9FOvG5xr1AxnACLBcHP26leHsAo7VPekUM8IngmTUO5O9WvSBhicHFxCyB1OBC97LFOJVAwuvkxx42iIs8dG3mU5m3SBNF5xfz2TicCxzV9ecOxv//YF6ga/geA4nlWBhs02VRtV5a3g1BArkTVuTyO/uKtwlwpPs3kHluA0VqfbVjHYBvK/TcexbIFoQAYTwDGSX2MartR6gaIIAcy1FfvW7eLk0UzZ8f5nLXrl/ID50m9k1m/KJ3E5I1AbpgsPdBcO4kIZNghjtADzbw2wXYzDxNagOdgLx2lf0OWH/6zNJu64KSpzdkU2p0ZF1cSoUkq8jDxy3x1lnmpbtkRhEf5JlrkfZpuyzoT5gA2QdZZh6MmbtDq86gaDVknXDjmkjzN1o9Idbk2M6dJx35rSNS785xjmLsSVzsEvt3W6ifLDl9XwHmGeAzMaSjWWVOz019YvoMFrXGw3JqcQ4l47cL4OkyBRA3Ty5yAG9DAWpBAoT3nT3K5JUyXP7C6x9zzvUhoo1mRkHkRnrqEiMXbLVTUB2SdEwIXj1HIO6ePL1/8UWUn+hDeN+xYF5I8oKQ/Nif35lNaDSsblJlSQVRtJqpqBMfUMQf+t/Ly4tzCwd7h4CKOC6k3SctP2P2zJFWr+L9EfiyxE+1QNh0IeOQCZBLJsf5rDamJSTXZoGRm/Jv/FGgvbk69+zb9y2JKEPHActPDr5z26l1rWHty/buj1V6hBeeBBhCIGQncjvDTmJnoq9WXI4gSH9QtN/+D3/5l11voCKOAcDTFT8pQJsHyJybZ7/jzm4/PjbYek8yBmSLMQsQOFyOJwUC5B0D+Kws1x741i/4SefDPg4ES897GCGMqgcgthfQPsFdN6/OCD2zHJ3MMSOQGZgBMvcS2rFF1jcDPlNvp9e58a1vnMaa/EiHcz36JUy1BpBXNw7AsDeIs1qvOJaZRCZhzC4BvkwIZA55K4iiEdVdLn3p/oZDk57l5yepz+asUqS5c3jfVnyDWWdBjHbdQxg0wLBBNvJVtzEmSu8UJ8+2wRMesHCcDQI0SH2Y3LyE9u377A08E8hM5u0hT+HpDCYYOIyxuoRfzTZUWzov39jEQhPe3nFC9NsDkCT6zxZZVd+y12221MrRtYVcDJAx/KpqrSBNn59DyJOctbchu+KsUgTnFr1PIpNfltJi8QmEF3CJrwrV1Fb0djAT3uEiI7dY32JfAu5Cb+IeSYss7m4A8rVlDyHtViKY6JPvlxqRIM+eZZ/js7xvtqheCLi2vBCjG/xKWlwYaEBuLAT2BGfxsll4gIcD5eaZ/YJF8aLcCm9Q1i4xJuFBjDIY5qPc5EEGhj9BrbK21pnozfZ+sqp0BuHi9P4JdFRH3trrPIZrOw3JKbY7Qi7GdV8To8SwAlx0r2/hCQ62toRBgM8AYqtjiyYnCzp5qy4sTyDJjXTEKoRAtkc7ocEQwLwTD4UGgMC113edJjizt4SThCSdySxN56pHJ36XTMUmBsbeWM0TBOK4g0AMWxAEkLXFXTyW8aDavPSCyV3OrZckm1HPLVD9kjRrJ8LuxsPNGBAIuDcJPZfJKgj2wXkuQYNHQxuL2+t5YgOx6mRG7elF/pVIvNBesZFhW6UDsw0G1CcKAVhDuChzBSNJQ8iUAfFMVnskezREXv5uSUxw682MRtZaxJIYhFe1zw4IhG1NJAjAWF0C+Pz8/o3Lv/sYn2+Pjyn1CSJ+hn0oflc2NowJn5/hNwSEjIfqd/7OA01sNqv7MiM1ZmqRFAgM5UcwYFi/bLAHYJABJ2PXc+fV4tJB6USJpj6YAmy4/fYH9zqb9z10AnIwyjlB9t2lSJ6ankolgBhxpK9fsyY1pNFgpDaI5hLxue0i9MMDwocagImBpsz1vevXD4p3i4RJ0Gv1BlS7GbW3H7vWzbkxPd3y7u2sUFmSY7n/2b/zR+JCgdR89nTxtF6WYqTZt/0lJvdPThpoFP12c45aWQN/FHAD4lLMeMgDNMWdb+xTbcBlt2RwYMNUASrLQlXKCAlwGf/4X/ydjyUhyd2YHv/Nv/iX/uXTqdyRPYI5nlqwJjVo7GCPxrJmihREDLk8nWQnhbTxJN08+5kegUd7y2Aoend+upaRwAwUA02tGfV/vzmBZGKeBHM3713/V3/t37enO8ZxJgWUr151TGRCNHcBexSQ6Tb5h09tF6CLsNE2Ro5h6jICkEB4hgG5dvylWzWQg2E9aKD6tKcxHn/688OIAMwDLFe7RW7d/rt/eXG6DDNSy2uP4IksKHUPAjOkalwjGgWSil+YOWlvlkBCctEpvvsUkoMLuC7z8zJrsJU4jfKwtFM+/cpfny2Gcyec21db1iQGKB+X0jCuGaipMjTsF8OgoblDhAHcKRZ/RVGWXMx4rERuSHITRAfsSMX3/8lmGmobBhcn5x0TmKw+NR5mWEF0mhUe/UopkCeuSvgtpAII5KbF45LgYko0Q7Yih0Fu0R/mW98sRiH9XlpGE1hDNEsBNtiDJIHQVEnxpIvyDcWa5hJqw/CJBRAvUyovhiDLwCBJsCHWaCOAyJ2vbtdHsNosnZjI1uC0xAawNAgMtqaa+FybOJ07aiVkywRIjWmDVRByNbfXKOJsaVqd3r7tjgEMBIFI5s9vvWMqHTy4q16fk6CLyAvrExvQChBgbA8hkGg2yXMg388lp7aRbZfbbjoIE01uGq0dM0rV8F0fgAgh2cqxO8s0b+C+UVBDEri1iWNiaweiX5KGMIDLEitgArgTq7uucm5aeJZNkOddCgu03H3xHh6Bmy6yvX/gFtxsm+i2ETZGMdOslbu1WEVurEfWxNYpRaUZ1vQLSFFy3FldfoddzyMXzawUai+9qzib6AEcAJFIubTXZsjFtSI+NopsRcy1LGkiEz0GnN12zlhQnI7RIbvEQ2idXYhAeN5cCVO2gHz0jKJboUIObARhcxCFMUg5m4YZBntA6wC+Ey0ALjJWt4nMhB6BKzSUqHUmBc8HyAQkHcihbU72MRSbM4HMKIGV13YYXC+CsAmHGd8RhR1JEEmqIQZGD38gCqQOhKRGgDyhgekXw0t92VQKnaMDIHzL4RMq94Wr3M1FyMaMcwHKyZirPo0H1aZI30CIYwMZ20zoMkISI825hD2v820FA04qLjf+xc97vUw1oKK0GfM5x1SwA93QaCNkQMwtJQOJgDsQjVZi8hZQFME+lqmKoBN3A74XyQMQIHhmTjKBuKqEc/n27/tuoxpw3tIVq0TEceoCRQeEwObGiaqABJBwEskHLWLySradUtJoBI4aUX6Zy1IvgQ3iH/4zpQNyZfAxl4FxUvYxRaZf7ny9eTdA1pStodwmefLaNdOlGLER5z4o+jkhuSOQ+QgIGUggbeK6wOWn//hm4cNCfMyBeWZVQDVRTaRHHq8CwAA5FKmzOZmFmHaZVWcP5wTlOYUiPydllUIY3gyHsXn1v3JoXD7+3++4XKZwX7j741arAiQeOx1tYSbyULRkBmq4/lYmFfAJ+1mxTplhaNvgHRDvfsphFCD+9/+9JohiRZaJ6D33xchi9oHYXp3UwOoWeADeS+9kSmrvIy8ya5P8iGDm0zNl7btRK98uSYcE/t//v0bI8kTndlDm3kO/bCsHgsw8sljfYFKXoqvMQDO8Fc06KUJ+jhouRsJig6E69ssrBoxXLjYle2zcIDj8+L/XjFqaeb/MPZ77jc8gYTGSc/Vmt1M5oeWYkuy6PafecZba4TwT4ybcDGv0V4Aw1xCoG/Upzi1XLgg8IjUQIbYBCNh6Is9E85F2uPytn3q5pwgEyGM17naSNZmZy+mw8J4sZPea8N9zAkEnNlEg19Yo7dNq1jsSkOjdm24wWH0ikCCuH/NjkntyqqCNh//P7AM/93F6hYQ4D7LDWvwCM5EHdJawqZU0SAGk0yP+USv6c2PR8UfaTFWKwuXTtxd2dk/LvjJSEDhaB3j7I3/+z46P5T7GfDz8tNyXuY6lxu3T+At/fo4EwnAHkk/+wc9mtuZ7LsQeAwjbwWdzKfAkRjK3jFS3Z6f2MVueBa2/0Obe9t76XtfCzW7Rc6/7/dtDXf7IX/wbf2rOcXP0mOMuPr67rI/l0+fx+cscnDxCT12D6l5Rsp+tTzrYTOrziwDak4UT3aNzW/PnyCt3TgAGiJAxWoBjgSkg+zGDHCPn5KQcp9zDNMSIw5T1+U+RmNhPLFns3QJQ65gUTQB/aAk5j0xEIDUechJJmWQO3TGyECALQMQ2iEmQYgbmBFsB3QmQMVx0mNGHn3bo+nwKT2qyMZsYcTJ7Pref2XbDsuthmd6pN4AwiP7YN7bCDoQgu8axizIKgTUiC/Wu7X3HMpO5IzbDQiMBNq+Jjv1s6i+hPj9aZhJ0x32VQ9EedLCNXdkPaG+VHPrNsDm0BBj939sEE3quxQYGj8Roh/RfURt/uYSpyizdhQf3nVBeaOzLbQ1VLQAhJfJDZxCTuztrANqTQJI3EIUB66afEbkhZKz6NJtn7eQtVF5pPOmNkQuhfO4Sk7xY3MbgPSEB3TXOfS2gnw8v+z3GHAywJ55vAinFwgNNT3braxajTqdL5wcG/lzJOwk35LuAsi9AINAV0lKyPLU1gyY3yZyb7eEROTeXz0seAfJreQTIYYBvQhvZTY4D7ECqpQrAen/KYnK3rEudLEbF9jpRAyvIpeJbiBsR8bx3YTB3nt+ThhJgGd6tE0zykTuXEIBHYLNwkKiUWEAvYY+0Bd7w67LBWp7E7DvE7iUZW6k1BiyQnfjgfaSJDm+ccw2292DgVQdXbO8CqN6buieZQNLhtngkZB7YQIDODOw1gclTT73aCNNvG9sQqbdfI5jszdVTlkS/9oDT6WNE9cLVITP7mfHGFzAn4nBSbwsdEKt5KTABhH4oYqD7IUrS9sw6ZrKXyycWHaLWHso4Hzzl/G8e5A3lcfdBcLSrAjhYS4fHyQtFwIV+IIMNYKycDud2EJNeXn4wqBVIQ4G1vIbPLdwzNwqdSBhe0HbRnfNM73KYlwJM+NmMZQCXLoqtO0td4YmPc2dwDcJ4ODG/fz7utfe2Mo8wQRkxTuOi6j1ilNEjQ/J9AEOUpkjHt77+GCxNenBxeRBghjbMH3GubR7Ze00yh0km/R7mzgIVBOgEksfxysANWyHDlwQ2mDTFys0ff36MDJOeHJdnKmyDzdA25PZrJ5/HbiRU3crUJulBpuzEQAOzwCkT8oieNQSyAdrs+hIryyB3t6//p3/9g20V9E96kZevNywhBAJcZ8DpYAl0biAXuz+nmU3O4sRASZBtMmbecPr4+NhcPvM66HY7zb2txYf/4j/8fNOF3edJr+DCRQCBhYVUJ/pXF5HPbVBds8E5zFomryCnIWP4bP78z//y72uu60frdF1juY8ho+T+5/6MiSfxmqP41U/3j3fWtw7auyRFSb+Y9MWlDSMGmoE2YObXMOe+GL9GOrnnU8Yq8TTWf/sv/xdzfqzrOmtOGEtOkMJK6Y/9o/fLTC3Qxv1J/+qP/Im/8g/+yzs7RRni+Pjf3m9atuJkwEHvaUNjIEIHwRcXwWUJZJLAYu61kT/4t/+fF3609YcDchE3AgRPLJeNsiiUOD460n935IOYDaBIRw8jjcFi/CoYZOW5QCbnye7s61dXiIAAkauK7uqzP6My2XJqwEqPPlCllFPmGJnj4+93w4MiTuqz89YLzBgm0Cb44nhOXcHlBNsIHx/fXY3TVtWpNj7p5p64qmK3++OaBnF8FPC93XamZZXZgDEvlogxmJwN4EuT54Ws6rQkGccJotLOnS/W/iB0xSi9dMkFPlbE7vfaRRaAy14Alj49EuMVFiLZC9kSTyhxPjlr9OzpH5O9AkV18kWZY+bb73bDXDQY13Z/ac5fvs2NO0Y+SMFFbUOo+v5xkIEhWO6jLLa+iBw8TYCQy2cXUhwr5NduNXMI8EFlL3/8mLH8f8mvoDqQQAYSQJ3f1giCgCDAVE35zu7vOH0kkpAiP3CdY6V157tJRioPJVOm1reP5HEQwF89GA3SJR8d+5jE9cHTud/Uo1EQ1dbTkXWMEG+9VVaIq6KcfjHDGCoLQb+GZBF4JyqAriqLxc/L1KYjIHLzmWUfIxz5u712YrS2zZ01dF5SDAF/DRm3V5zkGWJxc3mkzi/Wf19OnglHeux+jpHW7XeWSR4NRDq5e8K5hyKXSw6eZON0cUJoG0u4HEcuAF1Gyb2Hf7ym55GWfrx0fIDXb872sEdU1hYfWXFeArTpErwE2Si9FpzCuBIaB4ZcNBZw8sK8eaMl15VfuZqKY4PSW0uNjFQTnZiwHr5AjOVHXH52FMI+y4rjY0gaEasXyptg15VF/GzhNz+6pEgnf2lLcUyQPtKqCmwD8TTy4Y1txblF8P0FCOQsHJ2PAQ9p4lmKbgsugOeMrQiQx4EuQLww8uOffUJd6f9xL1bHBDvlswUhoPCBcO31Z2ViPINeQpi5XEyPnt46Ooxqlwm3uAM2FuKlkbtf/cfffHJTAqWln7aYi2OB+HhuPgWI/oQOiJRn5sRofbaAp3Iph8s6s66epGY3HSEXAjnpMqiOxsxilrQ3EFI59+GdY4E5/B8L9R6VkiCHpr5/n6I7FnG3Tt1MkksTvpA2YKj0kHk4BRwBgYB22rkP/hU16NwXYPAguwaBp2+9jo8B4rMvWcaAk+fp7il4NE+FLwNPeW3+v8IU5fmMIJPUEU7d2f88SFFJ70ZpgcF1kmpAqey+VYUnPqvzpdl6CTb9nqWodT5OucOY3vlJ9yRMLbJ0GVlOj0G5Pl1b6etXzR5X03vBMeDpt0iM3BQvFijKMXCzCPiTNddrZAR/ZQKO9GS9rsitC6JWI1AqNz7L8qQH31iqG+ERBE7cvqYe4ygB8kvRM3Nn6LCRj/k6+eaZdlLfSKNaPXUra9LLD34EQgJJDwzX9x+RxwPkEXqUvQsIIJlF2Mbq2zvoVns7ySOzzrZ7MdkZ/u9CQaXN8AGJhT3GNGImx3GzpLNXax+TVIE/2ioStdqDgEjthY+siQ49+EHLruAsa/Jn7xDjsX1ER7Jd9CS+FOFjSrn4uLlSRc1I7cXq1kSnovn5DqOLH/XlO+TeWARC8cvTvA1gnaWuyO9vF8kWoFFU3a2bOSa4hmdWimBEfhL6zrVUMp4SDHxBBlPv+MOJxUOYYrbCZlIHH+b5nWDERtXGzKehiS0aCzfK5GGMB0G/9/SW6p3xMGTllWGqKt+s8r6RPlwpHRKg4SRA1unpxMRecnszh8QAcR7++Ar1FuMZwewVkExk4GCnzCFbENUGhHF7D+kjL1j04aFAIRVeeGLWk1rB2ZcJA0KSDOQBn7/5s1cpYkwE0BdEhncOEBu9yDjvbckGRHVzpUnUoOEARZnXr1WazCI6f6yXASyGzKnyv/2hilPGV8DrDLgBMfLaakcY0vSDWLIYjUDyufadmMgKvvF2ERUAUsVpH3/9R4x1VNdN0RkQXtzJeBf1Pl0tHRpJv2hufEJMYCXrf9sgSVSeIfj833/6j6knj0kAi75AnEHGIziEZDHOzfEu1lrvd5jRasD0bs7LE1ewdbub5LRBdYip9U8zzaUXIHswpoBZiuhU4jhY3oUUr6dzqKIHWx3PlfKE5VQ+PMzx/UhAYlBe733AVyib/wCQty32W79L9Mu5YrB7aecJeKIyzM6r5IVKjearWV8Bkq2jk4h3jt3fXpQC8AwMGNvPXjNZB1sPyT4Ps/L+TUF6LfjLZe/jXGfvo8P8O1LFQ6kUzt3FPU1SSkezJ9mMWIBSq3zbQeeIRd5cskuthWwHHQS0vo9SHPy2Wk9AQUVQAAJs1HnZrHlicvKLowToisEQa3fuYtJIYNAlSSB5BMzbkGO2Y21n941w2mv+FowZFWOWwajMjVcRvuxsE2wcpgBzWSh1pz9EprvSFUCCSZ54oW5Jy26bOXljMdecQmoxjisI0uYG4+Z8Gh9sYxvbZwJQjvbbtzEHXNagngqVGchDdmRPBzfbKNLG6fhuLduEctUolreEJ6GU9hbAGBxeMZ3Xf1AUHPSAeD6cB8gNCZ93HpyevLOLzaVrSEkvGMtqPd5MTMCRD160sxGjFkpTn/zXJA68hBdUhsHjFzLG03F7K8yz46kgDW9Ito4WT+0JqLd2XIiBPhEgGvrfdwsfPPg/63hVrg0ezBP6LTRIgGdaxD4ynfmcPolzqQJhhHStbk86zsnyIDkPDHb67tuBDsO053KDzAPCg/IdBsZteW9ZG1sfGE9wRb+JXCsmHRmBqRRnDYQh3n0tK3Pw5cYFi/0QYpZu9GaAX5Tf/7915kEGQtE97iJNLlPlySmu8tkASe5U/3UnMocwhoE/ZZiv4TRP8Ij0yu3n//qb/y/nZmhL8jEJTyzQTsAAztoCxcLrn5SZwykXqoDL+Axjto2ZR/Mxpbe19gcfZEfDGsBOJHliiW6XIUYr5fbO/8YcUjudbVVxUH8HEsjq3CBNIHsADuzFYPGZyCOTEMxuz8RkIm7/L+K6auCpazk4rD3OXb5SybaE5bc7lA24QiWkGXDtfgwaCZgKRfr4FppEZHZvBzp0iXTyCaNDItoh8GiKvpyNdQNuGsCojwC7KV090UPspyHFdCNr8jCdEmNbN6Te9MOzWYfE0LTDeCRo+JW4N2QfpKlScp96iPaK7pV2FdaoFJJzMbe1IGuykFqbi+KDw6gHshznV7I4nAZOAzAj9wuRU7Mpm+iQBJgAYQHqNfEIee5cwKgEBDhNn5qeNBxLHWdzRtlDIOGz62QLdAiQOIoE4FG9Ns0AecUCGWUWiFUSlsH0jiHtkLy2heTRjMZ20nyBJ4igMa8EBlFRbhZ5+TwhgyUdONlsN5MRGkHXcjNghLweGdmGBEIDxgDqNBADABtzDu0DGMmt6RbWhCBoL3eRgQQEfWBDpOblZqbfNgfehs0tJMQZozCqndIS+dMQvk0ZAAkUmH47tfbwEHKszxrwyIyNVMzMMCGGmV1oWmAo5sUDwNLSvFVzSEMHO4izR6xxKPHrtrKR58HBNhfSdi6uLiQxemOwqGIe6+iTkjZmEXXQyV5AVFMX5jjcTgdLoLOBQBzLYWb+WhFwkDXpDuzu6EIAyguXlQTYjUMDAlDIJy40jI463H3obCJAABENngCG06dBh6w3WyZ0tgghwImGACLyowAyjvFYgMFsN/AgwOYZBAKHQkAkASgUkppn7j9JProkocS5p86WhFQjRnHuviLNbRAcbsPcSTajAGJ2uJjPYq4C2eJZNzGsODODGBzGoUStJHUuXCwsHU3GgbsPXykrh6k1AdTQIAA5rU0lHTLMq3VGcS6nHX3mxrWDz0geJ2t9GksT5AkgQCBVrJ8sydJRBIL2pQ0SFnsd5Giq1UAc9mBpnnRuTcl5Pqp8BE6PZgjGlZtlydB5hqm1lBauXRTE0eNQZuN0N4cY4VININxZLmwOvfP+7BnaOYgHAraLY1aSVxNunhqw46OdfJEwOzjFt51clpwXn3vuBDniiBGZmYfOFZXFiFXABiIzX0qMAcoHR8a2h3ADssoSo7ibk2QZQLIxAQ6E3DUYF0vXSb5IKGLW/vE9WvLMrjEg7VRnX3xgmnykKCJr+5Hz7LJ31eVYbrUQ4zDS9V8zk81gOZmBEOA0507QjJVvEyF2ieuJ1Zflvfsi8tbPm6mCw226M033951ZApD+lDtT1ftvOHRkKCrOvPhQd5ff95EZWhUu2h0H4zG3fvGNXfrddIYkA5DjmMMxmGvhk3BpcZc00OASSAh2oXdwhMD3ypPYmk0+kLG6ZCe1y9y4D8uvfNEceqWpTh1TLQ1VbCUpIpezM5989xYReHzJco0is/bFb10rKWVnIoY2tjFLJdaYEM/8pCoAd/DMGqNnNjwbq0MOQBIPIBvOZRs3g31+xroAh2AI8EmSQJK5xOodjr2xBuZC0g4zYx1ilMirP28rHz6EwwL3AfaAwk29lBtz+v6bPRfKYwtZBgonXfnCk7OJQuCJPBUCZ2baZMamp3/FQiWw4vl4Fsbj3MKjECDAPHiaC+EwBq91j0Asg05MIHmYBFMyZ6w+kgcPBiADhBMQ6oFsKHrP/9RCYwDRpWNCFQYCKpA8sMB5iuzPbrvAY0r0F0pcfvZiu+oVwX73SdXNKeTxIb7+harAoD5HE3jC7WRMxgBJkhw4FwhbTBDEg7YJmXduB4HgvW0ScjNWCTmO2YkMDEB6wZiQqHIuu04of96DZkzWO2WmCgxUrCGuAAJ5x921+Z337qAxhUBKnP/Sy6dyFWLPPrFBNveMxRj17FcaFUhxaYs8z3uPAwQyJC6sxmqM8jzWjfGqi/Ghp+GSCQ0XewBJBuBgnrsZsYoKcti4c/5nNtGYoLNPGjRqAdhkuzm7OJ9+cM/hMSRAzq3nv/lAu1KIwSaE3C29gxirwcMvZCmALsODHFZrCHDa3kDAeOENSQFIrIknscE+WZNr5gPCePtgA6JyGvlbDyLGouR0snAI9ijc1BqDnGP21Ma9V3eNNHYiGx744sPTVZbsIWY5d4Uy+TZIGit59qet75YK4AUEyN0GMjeBz0AQvNY1IdIzMsmQ6w32OVZCdBEudzZfCY8JQC5PDlHgsz22gCBHZ3Hmzq07GYX85lAktPHU15/t5BxhBksIyM0y93Z3GL/miZcsuT7AK+pBLAsMQ94/+EB8AOkZkGCbhLx1ORcCA4gdooNZtgFPb1qMSUHA4T4I4bN4YAAJRQjTWTu/ePeTHRyE3wSSEuXFl7/6VNdZot91IBcFOAzHHTBovIj2y6d2x54XyfME9KRpIPd9gWy9tBQlcD0IUL5yP4wNbBt210OBoVv1qg+h9sb6aufunYpECvtiSUq0zn712w9MVTki+iz23eZ4p8T9jNnw+pM0dt43BTxt8qunGk+jt/1M22K8ZlbXuhljPDqXQNRKosrF4oWrW72Z7RKUsPs8dpIsm4VHv/L8palejgAkif0ViJQOZ3d5Y1+4EO+drDkuwn6BQJ4qxYunHIxZS6frh8KCokXBkz2L3FNr9drnP/h0fqcLKSlsPGaKQhUsPfuTn1lllyLYo0dkg0AHe2XtTSWKG3/sMXb0PX7ttJ/iWAjSqQfIjF1Z7flVFAFEQfFSK8iVcvfVoweP5tYPIGURpceqbEJz69FvvLzS21FRor3sp5Mbh7zB5fl/9HUdgWx7Lvx1BWpWna1KjbWGNI6scm7Rib2sWkN5qP5ChGo63Vp6fu/xq+0uKCfCxh6Lhpi/74XPXT9R7VIEGkICaTT1Rajzcpfwmwvlv/z3aYpZXfCLm7/1RTdOg+CH2xsNxFi2WF84/d7nRAtCQ5jB6pMAleGUi7K5OTf7aHZ7swGQhAj7HCQRJTNf/ePPn2ylngrLgagVSIywZY1U9FZWSNabTPzZP45WTVAfBP4ECeTPIb9rn42fH8ViNwVj2Thx+PKf+djgUqu6ISUDWIAJO3KqiaPdnVcP5ja3945OAyBTjkhCUsHVP/H6vbKXoxAYDTCjjTFM3S8W2wjzhi8CiAgLDBhQXW2+WcSvp8OoIlL3TmDGdwkzV86WldTXrxpQn+sEiG0k8Vnfvn9At9HY2d7cW3+9urF/SCKPQshE9J76/c/l3f/38XsAigBKGo2p1r076f/8nitQcARa2EACkNlL8it2lSsEipPl24z3Qnjt8nRFGIH2YIYCGg4/41NzBoj28c7OxqfXH1KkvQlJRe49+/s/t5NLZRSQFxvUvbf7D19qEsHYF0HvFJuhZQ0V+LMgf5ew+ky/cFW4PG6RxxsBt/P1U8rqQ6AadAAICAuUJHBn/sv/8f0i7U0q3Jv62m96oKJA3tMCC5fv3PxTZ0HiKBQcHiJbaRAMxVlP5U/Ob41h/uAMGgJsC1KyAzH+lXYunetiyX2gOlMv+6QjIPoNYKHc/f7v+m/CQ0nGNC/91J+2sSuJN45kNDX3i6YJcTTaorF8WjOyjWrQfoX5An8W5BuEJ/KNkBeHrzKAzLARZaHtbsYcBfK96Y2NRoU0DAgh8TCem2rLckTtX/7Wf1pmcJ+pjZVrz37xwagKsUdveIAsylRv/uKHqOSIFBga21FkGUA1qC6uiH2vaOfpfK49XxCea5Ak8xVtJMBXxKGbDC/ohE+AQOZOBuYRAUhmHnWmWhhssB251nn2rMdlGc6fLlycJ0lYQ1iW8ZF0hqsqXZblP/o1/4Mhy6mFlbPXH7i+2agICWHSdGpAgBloheo8+/o6RcGRafqP59aou7SQNYR52iSuy2fyqnj9dWyvCiHbEOCtOLsHPwTYxO4TBobBKyoNhHOtnP/kOUmXhET4ljZPtjBCA+qFkNxd9DCEq95f/jO7uUo0WtMntrZPb68tdIqUKCyBeGHfQGNqxdFXP4Is6cjoV+jk9vXlqIuQqJcZGO6Zcd7chBlPBgQSgAS2d9yBYQcmBGAexNYQ8qqzEutJeBTnJXZf1dGzxkmzneeNy02ULmrNp9/9wT6Yy8LCZXpv+uRyM2cRg1QTo/dwlTDY7H6w4+SybLVnG4B7gJCFLPAgN+4b1pS14mTm6y2SS3HEWjXuffMna+IeRWAxuARz5zgPLk2SeMudlCtrcJjc97Jz27zjM/Hugbw+AxlQhcuepnPjwbe//ooCc6kqtHtz7sRyVAoQILFHGbswvGUV1NqVLRECA4j+bLM3Z3TJe52ZH86Tii6XcUThT7574+VVdpOKYQjkpe51RBKX9wQTAX0qS3YNmwTyiYsDj6ADT2UbjxLbCMRue26yHdvYjtABoZknMnsGdoRlHFDLrF7/0tefUFdwycqU6dbdme3p6FH01aoDfOTiIWQqnY0BpBACyyCDDBH7XEylB5R+N7/6zkuodUou6RBHt5/+2itnYdcgkCCDAYGn8qg9T9CALorDkixwhAhEBxY2Ync37oQZeKo9Y/UoCsH0IALZDUnj0IPYTTOA0PYuDYTR3hyRIbRjGIkBWcoZOJr5T//2a497KXpcxg6q9+/OX2zIjgHDT3QW1aLS1Asw/WKwax4mQ6rPpa7l3W/cqpPV4vKOsoDmfS8/e2V9CudkYwIBhIA8wEAAKcw82LXEPctNnDAgAzkgw01kKAnk0VbAgEQQOgF2lBhgAunebiEghwIBZpAJmFgQxyYg4F6QU7YCCdgIoYkbUkpOAohWc+f1k08//2iLpDCXtOTeh+3F1amoHMLCkpBXkKgWlZbrhh1KZu+dYEUvTXv54+tTqOiWXOrhqMzqpcfvv7AxNzXFMXHWZK7cbkOmc0BMEGY0QGwzx4CagDIfzDkgdREKRnPOwYAVJ8F0YM3hGMqAipqPubaOO7LM6cpkXSWCXvv4aGNhaWN5fackF4rgMi/yvQ/uNhe70XMYBJmsG6DpUAwehTWIfVZ08juduVufTkNRdrnkJQlnYmF9c2N1aa47c7/dl+WmrXrDcnH48X2dRc5a7q3fHy2L4zag7cqkQGeLDmdzrmPUXOeczbnO2TKE4RBiBSbNoYP1Yw5rMn/oJ6j8mJo9HhPGGAJzXdfpWBwmcwZ894Pi27I+Ptb5mOvHoy+fb7r2uNlcV7yN1jmZuCPOseBc14n30ce3+SjNcbsvEEPm+n31Jjw+mMzmOm63ZTOW23Aga3POdf32/TEf49PtPlwfzdn68SEu4/T05OTwuANQOEpzqQuFP3335tR6p6xyUNvHgIRA3DMjsfbNAnfzO5755g8/hOwOl74sI2EDZVEU5TKWsSyjpmORzbD1sa4ZTBi31sdsLLgsEDWbwQZANjEH1BoTqpBBKIAFFAysiQTxMCQoANktQjlcRAiXKKJABWIbIBAEctYIEIrYFdkKFBgQEFslEMEkiIhD40qRsM1EKPjszTfubM01EgpAXAADsAcyoD68t1phVGPziXEyTlO+8e8+PoAiukyCplaSyRwrhbhYgCTbgACB7IYcBnJeSAqQ40DIA+PYjQwowEyQ4u4bb/bWFsr4ESI4be2sWn14CBmEa8wgyAdg55RObv77XwDJPSZOwSPTosWpZEcCGWXJDXKaw85GAbr0W/7pRwv0slUIjKw6gUdlztWyMGgYd067duPuv/2zvx2SxBVgBej0T3nukXOzKWcKAWKAtTdZFmagsHw2TLWqjN1zLH7zr/6RKUBcGVZA8/STX35qreGUQQrcd1itKgthIwo4mfknv/kuIK4UK0onZh969PGrG9OFKyCEB1nDyEPJQwlcAdiysCGlRPd4YebP/QFQzlwtlkQUSomF0w987rHNBcgVcqjPyGjQfsoyGIFxGIosONmZvXP33jzUallcNZYAlUWqzOyl++5/6MJyQJUMkkDU5xhGfR4B4LBRUUBz6/Xss2fPV4JcFOKqskABFTS3L127/+LmSgNSyjaSEMICVCPrTLhSTqlI0Nl5cefB68WtNqTk4CqzMEgiAd2NjQsPXt9Y6oZEds4JHBIhhED0GYxtDE5JWRKtxs7S3PPnr1YCJBGYq9EKkQyt1fWt7fXV1YW5uelmWeKUMxhkSWBCWCIrJaDstpsnBzsrj+fXNvdakDJhmyvVilBOBrXa03Mrq8urJ1bmprtzncZUg72ftrqt45ODzdXdg929vf1Gw0BOjuBqthSQM/1Fo9VuN7qLC9NzC51Gs93JqdPpdFrtZrvbPjluHjXbrZNWxwGghMLmKrcEsmwzWEVIKoTDjgibYROSbcyVb1ErkIVBNmZYYSEk94EN5mq5jIxkDQcGBMIIDOb/my9f1fuzofRD9f4/AwEAVlA4IJJDAAAQGQGdASr4AnoBPnk8mEmkoyIiI7QqaJAPCWdu3OHbP3u+WtfvrrN3wAnLl/PHyA0efIp4WrTNjOW6cP6KVPjt5sc2LLUAybOqX+no5/wPmgeez65fMB/Ev7V+0fvYfkB7rf656gH9F/w/rYeop/bP/B7AH7Yes9/6/2t+Cf+x/9r92/gC/ZD/5+wB/+fUA/8/WL9Zf8b+OPhF/iPx+/ef1n/IPp/9L+ZH7mfAxlj7Ws3P5b9Ge0r+n76/mJqEfmn9R8+N/p1c+89A72h+1f+L/K+qv9h5x/Zb2Bf6L/af+v5UfhT/d/+f+1vwCfzX+0/83+//lP9Mn+B/9P9h+Zfue/O/9X/6/9j8BH8u/sP/g/xftl///3Tful7DH62f+YjIQOTEV07UwAkhA5MRXTtTACSEDkxFdO1MAJIQOTEV07UwAkhA5MRXTtTACSEDkxFdO1MAJIQOTEV07UwAkhA5MRXTtTACSEDkxFdO1MAJIQOTEV07UwAkhA5MRXTtTACSEDkxFdO1MAJIQOTEV07UwAkhA38t1So87ec+J9wv76VAL6ubroQt3sFqXu2UoksLMnsl6MeoaZc3ru/Y/uWrAghkRfaOvNTB1NfPgDDjJszfDXIO5ce9NrES/iA70y2+BjUsdC9dnqqjQMbvU3LkCBQ/jsxN/5v//y60F82edaTlJHKMsxr8XGrda4E5pngI0mLoQkWM685MAWB/0oO6+RWoKC22jGrvjFTohknAdD5j49FQKUl1IZl+iFjn+mm+OtFWXRa9cbDQvOLqYpyKJgP48Vse6Cy8+wAgSCf4t88FH//8byCiXkRsR+9Iqk06d115eNCfxxYPKqKaZZCDOvZWYHmc4GJuw7PaJkDaxvdmZl+M7t6BR7YLSdl+NmY1zsBY68PruBJVYI9Hdffe6lQkYQ1HYT2BSNBaSU/UsqFYBlUu6S49ww+NZtpE3I3PMVV/NRvIDSZwf21Rv7Bfz/sEXs3j9gbL7XV0c+3dtig91lWzE48MFrRFZj3cgRCYtcZDalUz3+zO41fiF9gMIPA3eBV6E1vTXL1HH3wXm1OOaM4GpQwsXT0mVvpkhu4HwMmZz+qW7VjsVz1wb8E8b1rupu71eUywHH+BYAO7hnYF3GApWtmgAn7/npp7N5dweiDhvY+Ko3vKAd6eksl6U8M+zOLy7c9hy/iVempms51NdukTrt4Kp96bhC07fUx2EZnZ02E7JCIhW0/Pg3uLAOKZpBi/KZV7TeyeexZQMCW9IHNV07S6/TJoctcJKt8+av/dhYu+OXJO1Xz9IDrOQA15Zexo5XyDuy0MqvPHtKzCQiHyLAlTwTqNppPRnJ/EU3nnLstpfm2afQruQUPZhrB9ERNMz3omIrpdZjUmH/7VFXYBqgvUrYAI+2XE+Cj9kzkQtWSLHmstfyAjY1Vd3GDjfMzH00R8vwH1p1YAwd31OVYP5qJevFzrkVGczPC64bUM7UQkVlFxdQQN9GtjxznTtTABvgi23w76cgXlcNtDOz91n9qeI6t8D9uIxLaaHI+woD8cNgbJ6rx5A0aEXb6koxoYibxPibJC4W4oZi6RBx8eCRtSRKhtl9kYBYQqhsJRgUgdqYAOrUfbrldjo4a1Eu0AjgG/jFZBCCFWXFAg1sZe23C1/O2X00IBiikvmailrY/g2GIOpqe9ksQ5VqgP7aU2P1QAfFOh2byfMnGjZgeSNiseJ7mVBPXoz+XfELcXuA3GBwMEg+XDvYLUvcYsPqn9kFewgpi25d1ulawVuQWQOLa6dwbzyRkz35jKbgtbTc2bnl87f+qiANw8+/vywxnt8xRSHDCfNuNm5xsurksGgiLuEuLG09hO5XZqFYEgZ5tU47tUUvUNcB2A7UwAdxnxkmoGgJRyowqETZj4EpwkJDJvYnT29AxdnI49o5frhQRxv40jDiOBpAaXNV+5k7WySOk3McFLC+jSc0EnBefmQtdp64bywt9HYLtbqmAdqX/TUK1Kl2YXYrIMA7G49keRLANj7mf5C8H4XxvAMQ3A4GREIr1Wn4Kon5iWFf8VHRmd88al+1XkawYbd1IOUxiaQW8+4dv12SX5nDomIHKawW5fA5tjavpmmhbEd3eBoSDIZeHpitYvtXqw8zxJi2uA6MA+6Xfg3Ja1CpDBEs+6UMEXOSiXXffMY9EPf7iK6dqTNrwRlIH/5kOx9iQkhWQdv11w2u3GMs1kBOEC5CQHLzWSAb9RCAh11CguGgJqpIOvbvLTQNC9y9IEPUE2jhANdc1Soy9bb41x5dV06nrrYADma1faO49npC9SoVRYIzvcHPmP6rdmkxJtBh/e6CPMMcCd+T+ZYPQS8stXSXE5auSOBFm41zYLqOKKXST8pAFT+2OUWiMzpjt32VU+aIppqrqdJRPMcvRFrux+ZwIlHn9gKQenhrBNGH0uqZZAuguhbaTiVKJrz8gR4kn0XnuouGzaDUxt9HyTMdeU/O7O9VaF5XiTlQ0y/1mp+fdQuEbinqGleY2iZCEk1ggpyK1rHwSWF7vEOlcdaT1ojlsU3Y09U7aDpi7zRRY493wCdldbDnHrFvu3Y7rEkQa73pP9tzQqZDzEr3Gzdv4haS5WmnClm82Zbiprdbm63Zn3exOtKkn5cZMa2DPawnrZQpULYAc3k3O4UzBIVBK9JWUt/d1jkPGNygQxh5zxuwks9SGLEvB0LDFrWAKSDwGES4KRSwh0u3TY5u8M8Ik510JrYdvnEAArT44PVOwaiol1UamvWMldaXqe2sz/xVfx/+SMyu4ECEj2kzkxCw51M7UOXPdOpxpfQp/d5xw/lO9o6KcGKh7Dvo6tlqnj7X5YgV/+0pXdEbdOarwWRAstkLwkihrarWlG452y/xq2oQs6Dy3v8ShiB8DJ9paiEill0sObWxVbC7sRH+nltc7IkQDg/WmwHNoF5hujBnB+C1nYHQ7NOe6F17K05f7kru9gtTACSEi8HuF0TEq7au1XTtTAB8x8eioqLo5MRSwAAP7+8GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWxmVhLQGXHWyHEqgbUcUrGtydMTmfF7y8ZIb2XD0VeOvs4Zi9Ahr+xkbaYJRTauRQu+KUmeJC2+JJAmKOp24Y6rB5EVGPNgMjK2FwroF4xEiPBmrdXYKD3ddb30P9y5aj/xicRdILXtkuLAGtFNqvRXy96vxHx63vNA9pjYufTj2fgk47SHW03rb3pFUO7BogyGr0+w3HeatSEKYT785OAL1LrWERlGRqUa7p4lpLQJryjNXx8Ox6skgK5rqKrdkdK0RVloNaFYp/PRnF+8CIdAQDIf4oI7zMsyxs8glwDBMix1MKOWvVERmsJ5v4I7t5alHzJPuek9tLjB8jmROxV/pJEDj6L3tQPV0B4QRafaSU0FL/bnYE2VfC5+FkJYD142Olem4MRJfRpk/2ugAnjRom49urCFl5A3kPMDs/0dzeM5Bhlf6jRVukCn7PfaTqsd8HrDiXLBcf/wbD2NtXAXO5UfWUYmofryz9UXm4SJD0DqOU/o9mmhtnuwg97awj/m51w471ikkyeqfG/gtW7gL3gg4XkKOAAQPM6RqYEn3LSKa32SOyMC7WtE6WXXrlHNq/9VbtgeqK2nTuAsq3GFpvXLowHTY2QwFLMUj+07rGVkdgI44Jr0XjiuBT26+lD59MhuMXMuY/h90K5MV9SHHD6pqryMGzi6Q6YiJQ67txVdKMlpcavb+q7JsZLNBYjjiGLbyl3cS8kW/0KnFdi91Dw8JKu8+YFGf6iXGCYjDrlP4asHIcOm4f1ouhaFJ54cItC+Dlcts/Uynj2Yk2ieT3kjXKOec0y+PlBwzYjLNYiqO5XywU/gKue0Ha2pT5x7e36xPL0vMrw1IuGP1AGvIZoRpXaIUhAsEUduqRflbsIeWyPJU5PUfOp+4VVUX4GXYtg9PUQtoLDV8H2ZBSmgUS9So9MqPYHNuuZHpzsY7Dv0A8MkSN/QHpuNHrEUuc35Cm0EAWsm+93Fz6JnSPqcXP3EppBoCbxUiJQBI6kjBq3K9PZpIZUu9UDCG+elZTpo8yDzZYeI+n+vWKW9EmJiPzn+IoHIzNunMDaNYhJcoyJNwlx5j2cX36HvrdA7nnBvTv/Sff0tc07TjsXiLmrwNFaB6YLSv85jqY5lTy08jmQ6DtM/99FqGHVMJT+OFEmbF7coMbZJ96xxXc/ZqKrIR1v0kEMPB5ANj2xAcVU8Z07xUmvcXHdWDo/eSCKNjEHgcW5ij/fhQbYRPbUdKu/gi+4MAkhHaJ04R9USDc76lYqApFeHwLfv+cBTQmUkHe8l9YKSKfahYRTMzXDar28rNRwmxS8/rEdtZmRKUeExY+Qb3bb+klD4qXmR9JN+g00nST2VRSrWx9aRUYgzHEYbYMsF3h69NZnT1ZF+QC0xGXqfyCBoUwJl+8sRIkARyv8pnxQROX504S7YCq8DyCC3YlN4paVvSkmmonzCPAKsEtYJcWPvMOZ7QD3AMdH/1Z+3wCPYV//gWC/L8CwsZhrsgOM0VMHI/XYHS5ZZT77QBkP1RAVLEKHUONJguqVDeBV6OY0/ukninO08xy6qIP1wDFBFDegkzQt9ZSHgFcpkyxEd/B84Bsv1q2Tj7oO++4ZJjpwhyJXFLBdzJqBxrSJQxdeE+qjNQjnNISW+rHsqNqvDZ0BD181L9zbZcX1BblNTEfzebAXYAMgsxZCYWvu3j9CaAO7Yn47TKNfu1jYMOjr6L1OHKEpUsArXttgxxzvlKFKhSvj7PR8WqzSF0i9X42NJbphE2pqdPhvupvwhXMhg/vLs/mt8kpsZ6i6pue9Aq4qFqmvG1Gql0326cAE1uAMGCw9d0tJXOEpbw48etM0y7vVkB7TDObkFgk3vfMSegwh6jqCCvn72nLE7ENpJfOdiYZLwaxLt5AZrh/xR8pvwhkYQfSO44UtK7jFm7hfc4aCKpTzFlBJXEQlCZ64N06t/COrr1osS4g7lXmw51hPt2ygOiNuqTXKyrTqRzkz2qO9rKYIcIc0Ki9XMI1RlthbsF2KSJOesn9TI9Lf1crHImIDI+E383GJUYeLiGyIOkrCdiOuwWj+NuzDIfMruUiC+AEBdIApYJEsfs88JuvixTrgO64bXfgob8XvlKId/R7i3Ur8dfiq5CtzCN5zj/8Gn+TO8RhqYyX9zdDZ4YJ0sRxsss7HyfeIUE1Iup+F0NiG9ZIK0G2nE3qOE/1xmdfUdrr9ZcM6axui5qZvnQXQApucPg402O2a2OKG1WNHicQdJrmhkRvOxBgUg4wgscDiWy/emzQQh/r2efpegEk7o5EEtwgF98v42uB/uP8oxC/saw10Ddh2xEYYrefbjm4Bkd3B2/YY6oO9VA2pZ6LO49VW7pWWOx5r/jeTQazxmq235t9WP4mWRj5yA9AG9AAPOlzQRZfDVErGyRhGeAElDubSnRRrEidmrQzKzG1YuZFq7WHicSrL42HkjCdsw8z1pdJh8MM1+Z8pM6KfHrTvZTiXZl8Jr9Pjm0f/qOk3Lps9ZDXTbOqjrT+7DnIoAEHjkorGD4kKrcKQaDkfQ8zotDhxL1Ts3djgOLT/0Bud/+1Z0LeBIoszLB6csjGKpwnu9uHPYlRh5o348Hgl4PEoNUwjDA9vhAk+zaIT5LgIx/eC8NtrknRvNXJqnh0GIVm95f+bS7Wad41dGzjdn5wh3fQA+QxoEDbIjU/ixWQxc0n6JHpkSYe9CD+hxgAp1HNNjx3HlAfMkp2LpnZ6lr7dCUTvK+/4zrdXLEwhLTy3Zj3dFjlkx523psZCcABVLtZLMIkpH0TocSOxNiA4gItG/xQOb6aSDiO1Q1mSI9iDauOaNaCP2144/7c4RXaP3wfOCOv+JUVjEdSnlq3sVxyvNLofeGOw6kBXq0XJ4jTRKVUFrCQrIUsArYXRm/Ynrl7A37hS38CG/g3PHtYOknbmCbBmS2m36JewAxtLjGNkJiVBTstQHB+Tr/omD828eb30NVjIw/vxa/wh/WZKWgyFY7nKQeuEP+SZXcE5NcSeL1SkeGF8bm4z7EmqRgn3C3M4PrNWTw50cims+eRpA90+lPLtv1gczAnpA483zH6hF+JK4KeSzHuOreHYQe26niKn++2lU9lcvGuuZnUGIiDahBNeW5jr23cpv/JwJkK2y77GlckXBDU4YZuPBmwe7fCwuxyW6vrDxwqL/tby8c81XrK+auNleP60Nq811M4Cms+BSFsLKHL8ixGQQHaWA+kI1dQfXs7lqEuE2VW8O6a6FcVaRl/v9je8LRILpmCum/5UftDt3TFu+vQO5nFj6cU1eiqSSthuZjRbrN2wLP7ievtsy2k7hwGreKHcnrDq1nzEbXD+On5Pjyfe9+4wR4wv9td4ibnaoK82WUhZVqTmwVFip9axhHTeXfTmC7UwIODefTHRuzPiGNFIuDsNStrXPSjFmwo+BqaL9mUFrRuO1DULRFwCmnub9w3qyCQOlFoVJpfs9DcMRHssNamgSEmyxIPq8OFdli09TLTt0hs28NurQntR8PVyU0Rx8UThA1j2568UNgkdJpJYn1xrqQ+iTeg97HcQFFdpeRS0U7qK3+mFG4ZlPxmgzB9bo9hubz9WaYMtxHZV6BDcHJ/g+YSNqxOWv9nDQ4wqIENvq0+YVMdYoZArAdzlzRBjzh45DVpu2StgeTujZHV52Eqr/1KUn4dvD3j6Xb6odc4eb6p3IBUT7I6d4zGnBQZ5/ucVlGdfjNz1ix0etOxW6zDmUXaefISrhZ3MVyvalt+YxABhjQ5+89CrVLNNl+NxzS5A+PqzIOzK0ATFFqRovhc2VImmSBAGSP51YBy51KPmvctxhse8sYGTpWocNuvuF/rjxZvLXamMx8JX+GkhRafvlreprRR1E2IQdp1cgJjau4ADl24+Y01xIvPKUtwAzNEDvgflJnXLbJo7S6FoDhio/HyTX3OzmnMbcsKCqSlWVvV5fWDwensLx7kyZgxrGQzfHF9Tb7Y5kMl8HNoX/VCIpn7mkUI/BBBC2ebOwKvuO+MjR7+SxpePJn92FynB4qWo+CL8vRfz7vmTXeB+rGJnWC2AoZi0qgbrcL00qLW5u1JaH3DWJcOD/DwwCIuA1c+YPjxGMcxTEXcInLLsqu71/aKPELn2U55U/S8Jb0IgfFOsLlgtmKa19wqgLR/bXS3++sSUGnvXbeRHhAV16uw6MI+erA308Znp4u+/8ZmWY70v1RWtaPhngmgIDEgNZD7veBkVXFFjayhPXY36bd3C8O8/GtgnEmvwCngdgcQF+ptddoYNwLG+o0aNE6Hhz6lvIxF43B4PbzOGPnwfe/Q8G+1LdLfmO5nCfu1lNhZnXDo65n64fmhABbaGdPsq3r/w54TO5H2Tqc4USEylHiTX5F02sjuYKCDZZv8r1EF8PykvShNVD63PksHd0tQ3IlUk72fywTZg3iqddMyHsT4eS+lEoFaFTr+ybanCfRFr93eCh+OGTV8Uv1WxeWGc5C4UqWPXGCXqRibiw9o9i3+bYxxRsPA9WJ915aBQu+Zqks9T7gQcvsvbFF7l8pRpPdoF2OclHys919b6c+8lWJ3QtkcUbRRCLTNE9AYR4dQfwOv5690SjbpM34gzge54E9I3r/PMX4osODm73Or/0ekDxqXA6uZ6CPw2ylcNMZ/geUkiNfxyqYXNCJGrM+luDqlWbIbKz8Z/LYOz/5uJ0BQsvzYoiMw0tL+uuPFoOdiS8P4vDNk/dXE6cr3ZYo9IMhhhwpzwPfAvdCDqNRSKM5NOReCD2j8wJqpqHB0RFzZGEFAB5lrKo0A9niq/YTfAxBWumvmXBXrJOLSvCnKuSpLR0AROtcWHvO1j/bu4xbh4uBv8GLA3JQ56HJgolxg9a1mXqpYn9MGFxawASKMvzKaaDmqoS/OCf1zV4l+tAKVd7ekP2WeLK7Fji426eaSOXx/c5cHmv2+Phq3LuNkrkekKcH1csIq4ghQ51jH/lLC4R868SNqSuAtxTDV5r9cqQHXucJa9uFt9kNweFvpC80Yv57wQKVHfGf13ZlrXWN9uBZbR3jeCPLs/hihvaHwQMfeCg/UBvrGjRZECMdKYYJHZjeqlMmj8wHyhwBBPhJ4ektrhsgZwaG9M7S1iPgqL8ZfNqrLmxppR5UHz4aoXz8tb4qsFDHfi6F2EBH1KGtn7lCYC1bN+8b/p0hxsbFh0uvgH56gG2sTd8vwZhAQlgMz5Oc4vcI8aap2WgjHrAAen2fTjSESeHQ0jxSkuzIH+fAqbLkyUUIOrCG7XlI6/RiAoMMqvwkj5HhJ+UKL9mmobxzvUkmnbtuwWVtZuOXbt/9PCYMpdxfhX/DHQ9/L2BMUCKY913vzTw5Dm1MoxupVGvQnwC0HLHosyEEf5bElrYeb/KFRFKwL/frjN7GttA74bpWdXedZZQsynyrshWnsborm76nLzWpX7PukVs4HgtPdXt7Vre+stOaPwVZzbGcR8ChIXRlVzUKV61R3LxFv943coAz5FWBNQ1Gb1CTMacztHVjgiVvszzp/JPh8TlFg/uuupT8DvJKB4y41PE5lmkg0Wg8XIRZgVBMTJloRvW3z184M9FuCREx+wXBaMbKxBx/MDOWMvqoCPFJ/FBpD1cAWDTJeI2/P9HpKBbHEsFUbmfDjJrxvNEulB1u3qxKA2DVMiB4uY41jcrUSJA+LBEWyjpMa8hrEdd+mkksEhO3MbjzruRkpQYUoBZjgf/AoCQJRNpcrbFgbQdljn0eJF4lH/F4agK7ag45VVpFT8enhkRQ4WBOeedu91AblUGuZr3t4a3i5vxoasmOa5kYOa5FEJQmjRDql7edZUJ+2cgneiAE+H1BGsEf0Tp73kLpsR+tt9btoQT21SodlJizb9gvcftzv+KldmWXoVkrgeJ6gkLx4Pgcc7LR7BTHBRfRJAvaiSdbyqviunC0CNgh2AwnQqh/mugt90QMOyAb9aCH671XeDDUXI1MkL77ssFoXR25OUBt23wpmr5tyX0Vk9qoPTufyd85XgA6L+x7hPkkKr6Ai6ZkoxZmHa1zVui4f9L982XojTXZHeNCOqNtALCsaIPlxPwES0ewfh+9ZOins0YW465TuRwk8eByVF1itr7lSQpFNyXUvqPBIbWo7ngtzswlH/ctW7FA/BuIr4rz/jBp3xZGUcamjpoNe2ZTz4OpfVwB5eSH0Ud0gmcwpRpMSymDcVg8rugzrTQpqVLQvEKl/QCFwW6Qm6JmIEsHynHxH/f95LSEGEg7vQuNZN/kyydZaPCH3XqUWh9FDlctkOfwK1Z4rJzkq0O8Tfj2CGkd54dYs3W/BUBgE9AF3u7xcfFtl9d5Q2Ah5h/LG6ijBIxFwEA2nAR7wkfxIVNPq+jBHUQ6jPOPGUl3IUNJgeUDFLC+xCjXtrN7K5jpwN49u1jvQgmLV3zY21lR8awrm1kkGmqQEcC9IwAHrrkgYV1+QmCmfvX4urYz84ugAox/b7lg+NAjr2bFmGT6Xz4M1I71OT73m7wLZD+qhvaFgqN+w2SPqQIx0HzZ8a3EbVy3aXJVfX2N3Cx5dPQmNcwGBfg/QTHdgSFvlVXbKpAbIsIw1nTK/qdURjPvU34WXoFV3yIijfgapx5intoZGWTQulZ7ZslkRV8cdvBh0Mos73A+h9kY+2TE3Uf2+chwEOcg0zar0agbKyFkK1Yh0al5UYs/Xsj/eZmrkjOleIssM3/w/MGA3Su7AMXxJ5hAs11qQHHEug+OtdYv0egAWHNqqPy9dAKRVpNQceHJUwPTPeU7kqb15Y/SSbZNk4gvRlVjB6WeUyrMsRb+YhMEPwz+jcCn+4GxzS32Mw9lpkCxEZwrpTPcuDexsUgF7RBVUwPR2dOEOPP3fgERSjjy7xP+7niBq2IaCT7VUNN9v/VRr3tYpSsiDUMV0NyOl2Ru2EfqWuwns7/yutsDa8aAB50Ud58tBqzW2QaiyF7sVVDVmMQL3jlso6f231Q38HF4oR1nLQnqDhj0rMrTSoaHR+UoFWdzCdR5IFfQI5fWEzl+VMFf3wUEHCRenYzfTV2FRU2tHtpDQTwiEErTi8Qz0gulBT0LSAlVY20zfJIJIcCjBtCE0XxqvcJgbd6LIhT/tvJLHsht5XCHgs5tEAx6y7hRr9FBOcY01ivOM2ei5nQdFV1PqLP6T/i2Ad3yaR0jhuwvT3+lViUBSppfC4mXlmzxLIRbGzenGsjxhubw0DjgtFcTbXtCm7PiqlUMw+dkzTNX8kNuK7BRJqhM/xKzIHhdCLWErQZ8TzTGzhlnTQF9bX96btPPcltL8CRbRTk1KU15J7Qfq22tK3kzbOdFbiFxI9XROr0E8Xt8LrJyKh4jlhIGYtIp/ycvPUkRAmTCnwP9hg/eqerYhWsyR5vsX48Drr1M1lR93NwHYqtFRvkDWjbnS2YJdSeQNAiUtsPUgAPf2s0pxd5g6I48ZXUuAnu7aBvlhxT55l6Z1jpOxsL8j77VrR/WJcvSCKmEevObZbXFqr4OamOdsdzNiQBISlOGbad3SMx/1F9FyAYU6l89/Cu6pR8yV1RLG2nEyA2pzAQtRyoHyJgwNkk1gTEgRz44cVJ7DTgMIWbU/8duXmKQLnl5K3NTSFxOwp4rCcRdPXxD9GStrNAqAL5VI6wBlh/2WATSB2E3IM8BAf31NsFBxFuesIAQg8nThLPgY9gdAM8x/Cvx4cTcXBl5QSX+rh3qiiDeS+bvgxHKBY3srnaq7zMA/eCtpkchaRmovAwCcsOwKBWqWh7q/bwd9trJYFtepAYfu4CMEDbZKzgydZ5iEHmPwofad4fDhRGPaV18QnRi/swEFsrViN/gO9e3yuo4K36OsMRhRiLxw4Iq2Nq2qK8t6LdKsQRMAkEPs6SynUYa7HW7HPeU1398k510N9LFAe2g4E1ykIWagyQCaY+NbhjY3c6nmw1RxYN3gBAHjViPl3O5i9F/cR0pC9B6kwLAxw/5tWv6qG1uu6d4M+dS1uZSKs82NhnYicxHX4Q3/u1YLTFw5GX6j1Z8gNDn0Vi9/+6FVIQ0czOqm+5EX5t93MdecDQraF+eGKfDa7+9TldwqDryKeHcCn6nBQ6C3lwKciQRNIdCQ54WZqvmSN1LX/0w1p+u7mvfUkG9iGinESIVl8hS0D0714e0NCGYuMhbYu9ncHpR1BfTl/lujNdI2jLOYxGP17xOfHRbwKT2rF//Hnhh7GktaqtVNbcIKYL1BXdqqsqaXQNCGQneiRTnItBYDGmB0W2xkzv+wqbsYzL9R+T5LQu9m9IvWKuBA2MxMd/pGW4tkBbdv/4f5MDNmgB7B/BpszXtTNnXpSp7/MT6ro8TxOoB7+Tm+zx0+m7TZ7EBXAlswiz4Y3B5UCGDkgFrFO1jheK5PgnySFccJ4BAck/no3qw4xhm5NXRyFTVXjm64MHMZ3GgB6qnw8Nc6WB++oH082iE+kvL8fF9PH09KzeptYwfTr7XKWYz04Q/zWCHx8wHCakYs49z8IQD0x9OVta15GvcNX1Dv+cM5OaOo/E7ERD9aOPaIjdjBfHJNebRfTXQ9Q2UE0r9hqtG7soOtlPYJiloCblx0u9CuPanLDXG4f8Y+6HyPxVsdo5+t6aLj6iNNpIwMQfWlh9owh+Mboo6kgAe3L7obGe/61lw6cziwgwGRm2pjMUpl/ywfTOEFBDl2KVd5tjMJCCqol/wy6Icbz/CxBQmNYO0Mys9U/dYXy8XFiHhvIOZ667Iaqvg2L0CDEE9fGMUmVlU5OMSh2jg7rwV+F33GWSghCLAfhDlxxItKm6nrVh1yrR4++6sYUdumb+9OIUPpjEPaS/bbR/8pRDd8UpE6JphPhXp5ITQW6Ht3MNnWCwse6g6Zgdi1A8fWvcSoHxRFAbYSsVqcHgP9XqfiPDPzfMWI/0lMqKWdU8EL2t61yWLAdx9Hx3WD7n8KgQt4DU3RF71MPmDRrN+NDgyN0KVnxlTIAtp93jXFMDjZyWHxPR7Dg2im3kMMMKGUja8KQc0aAb434nKRPMqiq4y8sHfXmJk4R1Izd8T+os3+N+Y+idZOteyhI/mXBymFv/JLc5pR/rXMwMm464YlHMh8K8Awu70Bz4Wk3wZ4Jp4PU7qIsqr9sha8K1pWfbP1XyWQlmz6OGOVo2M5gog6yvUp9U/E9g7ip48SzcXFNf1cAse4QjgECc2igLMjx7/W5IFGR9GZNqXZ95sTm0YAE1N5yoaQNGvcBbSTuJZisnip/keATqSIOTzT8Y/LVZBZexUJmhg+B0Dp1Kn6PsfXFa/cMw6ttyB9BZIwbuVrojfthhThhtCz/bSaQRxG8AE55AfmfURVipLuappjMfF30uWFW825iNZIcjdeXBhWR/qonXIutwLcYtHjcAT9ag9DYG0hqb4E3Jq7CU3g9QOFLZt7UDbmmUC6VPRWbBfaXYIUlOyHPK2nxRpga6NZ/mDTlOmoGgDbmypEN1iZ1cn8/lUU+BUSpZzsLnryzYQB0Pqy6dck7JM/YSJqdMH75V1jw7J+iic58bIWQsYkklo618rZc3wSglbpzuVl+ipCTlqR7XE3veT7IctHLjp8103RYpAo9X4AdbSEPjfNIkTrMgYRAEwoJPE97DzsEodgK0dzr00en2+A9tl66xZz5De2aicQkTxhItONHBtQuJ+GpTikgojfRM6FRkHZF/4t/bRk9g4/MQwEqeIowO8FdqcqCJAlN8SdelypuyljXNHikaxjHBIGoTJlMeyGvBiNmeG5xqD3038cJLgn6Yyjq4muXLCxmeswbKFEVJ2dMzisGaozavpsAY9t+/jBKCGVdBcqQoJmuM8gX1JZandRN/PjyDmCUPfQQI7QG6U/OKwPMPHUfkQwv7D+Ij/UniL4a390hgfM/d3vYA3oMfIxGhDp9lBp+PDdAUsOX7n7pBNIQmtrVbypXMq+eTDNEsJAbZZFO5J78uPB7laZhJj3C83jA0BSolQLM/bcBr/4GaSit1Rq5/FeBf+FL5EugW/gz3x8zZvF26us7baw6eZsn0JRfRPJGv7l5v7qdaa6zX7rscg+Z3XBQ35B+AlnaKB75JPE3whMsk8dDzXzL6KUK1rlEnqvhnWgLVxfjzVSlsCB+JZWKfttqKVrAojOgEpJAv2AhyG5zAmUFyhySE1ozg+fE9rI4dlqz+Si2BXrUoY1H+9KXY8BouXBr+mUxOkhy8UavPZAYPAtBTaG5NPI2ICyKBmoBpUYTgMFN8F6o7PzPtxTegx8yCktgaufjWaXd/AMbFfL122z0s1rWeg/l7c45h/lHFSPII5sAJYAkj5/vmKsr3C7fPVMrynJaBZ3OVXbHm3TYNClx2VuyoFuzQZBMf6LLInh+rIRO1jihRwiqQZvZYMFrV0WOXTosoosHBVAjPoPADJPbzbpUBucumrvq5p33YHV07BItNi8VGpdogd3NndyiA2EA4G0kUKl+nOW56hOKjoaoGxRfn8A+mA6AFdpWwaN9ApKQfpxHEL7e6CrMcrQCgeAv7rVjiyaQ7l8L4/w9qdaGIJIt0y49oKuCLb6S3CUTqwAnDfKB7sZiv8EUeW+lV53dMIUci/BCaedHv2Yg4rlZxJUbHohXMxvdB3EBnMGRVWyZ90gIN1yS6MmmB5SSVIdAB4E64l79BIMnxyR57UKACPOAiH6l6m6f116SK91MMgTf2c8WxPQIs0mnkTTRH0Aoe5bmtICu+iKGpEoP4wLZEBEOrOpPAkw59vPwQsMAEmJfrioB4yD+ZLv0Fg0XmG+qLCS+NgSi7sgnia3QvStExiL6+tb2gWMFgV9NCZJ5UsZ+TGPkOKq5E4AYg4zS5ayCDPrCZN5zN3B3qUlBT5AZcnLWZo0uN6s8Fve90JdqlAsSdLEpGIhOyd+qvz3SuGcJdIV9mt3Ozo81mdoEVHB5iCrLx+DSRytrEBr9ZmyJa2bPUG8opiyAwx02gPb7SzfV5IJwtWJUj0zx5PYEG0lNeqrYny+QIjhhkTctc7jvFcJXkGml1G+PbA7Ld/RvzxCN5rDHWk6zJWuGXbKkywvOP41fQXNadCfmw/0YMEV7j10YXmI+fNCbOl0cK2xuH7b8YPAkkbhE+upJCHHVYlm/2C26L77i7mNmePssZnq8guu9fHJ+/1k8s1nNff6e4uTI+uOLXeXt5KokrGqRfoPBeeTRK4iLI7LJr+LdquQIy6CGRJqyVhCevnJ/R5FN2l3VyBUHY9YmCR7Q3rXahqr+M44OwxWfJL+05UIuP3eaQD/Mirh9D4BPYp92uLnJoHVnaem9adCpiICGInw1DnE0FpzcvBONVEjs2wqm00kW50pMl584M+CEJCh++666HDzhUeyKhiLoNktpclePsNklC1ev/NzIBO/1yXtgjPkYge/nND+Um75bA2YMJS2uWaVcFVfWDp1NisdW7I0D6orBzQ5e5fHdrPgRaWxPcFRG3An4niww/+QR80oxrYS1lmaIy7jotQ4HgHjt6JGGPC+g6MR5HddYknrKhmja1/KIe6zFzJf/lg/uNocl/2FqLFfOBxfNgwJLuzfEZvKp1alsF96o8iPP7nkzTsNRw6PjXvU45mvOtSoTpzbr/3gIMTcnt2Qg9B0Mw0sbMQo4aNGtMwZ4qEf13URoVqX5ypnXcTGZ4iO4iefdOPSczJYPD/qAVkqTPhkTvkF5aDQEKHkqEn3Q4ZwnUXTxe2yK5kzqf/sytcMxOf5QgYq9GTXQOu5oJa3xbDDwTX1vpWtvjqjAt/aoDV7YOVUm5qbxVLqk/B3YOjenNXNACkMOr5RVXu9SqMM6yVAn6rg7EAF0cKZgzgBG99JEiHDra5ct3N/ZRYKQXXYRIRzvU97RKK7NpSwCKTH+2Lm/nNSrs2493ugvgmCbrKS0YCk34ghi726qHTVv0ZqyAaxx7fMGmd+Ucmi5t7MIlAU2J3TyCrSLT5kTQTID4yY49oBPCc4Sg2ciPcT+jeHGEGTc1kxKw0uoPG7Lk3GKHtsNhHv6ue1JcUwWTLm/Z4XxjeiYGQe7dGTQAaihhM4M7I8H6aUe6Pyl95psmQsbS5PXF0xXOv8+AwGjteNEGdsnddJ/P7fw0oack16IIGx25DfjauhvtZshWyMb+y6f+ozn7txR/juotf53UjtZc94htWhLE9Qqt0y4ei6G//lNQmbuYMV/BTmFWc1axFPMGaZPhblmO6FSLI1b//1m0Ka2kCHUrW8km/T3MLIJ3rIOc6bGHrIHYaLLQLXqMVTX6yiqeFYLLzaAMJCFDYzgEmR4F1IAv+9QUJP3EeYNVkOgpxEmdtVqLFQW30+SBXBR33PN2hlowq5p3GI7JzjDdu6JApgEiwNlD5CF55/sdNMwNKsO4PXOoE0Udf6Iu69b6j1roSoefg36iGYGa7X22VRah1i2mHW7FZt/ZMl/yZ8ERddkWH174tSipfbr4lhSLSAVroQ4dC+BCi/IORcGgzUY9I7phbiX6iIXRF/+K/zixa2yA3amxH1RHDy418RH1auS20nzgUPo7DxjoHmdevjke4NbXxcZgxVZNAp+ZwMObNnY16TEs3cdMUQYnNzWq75Sm1jSsXUfIlbPhbAGEoyXfYCmBD2ydmbditcet9qiDfsyqEZgJMcgoOYqQ9sUNfgJR8UHqhD7SY0fohNm/ydYrpsELgEhnJtpmzmeRGBY0Pg+kvmB4WqolX3iM0kcAC4btTH3nLvb9wfzfIrnTlYuwQAKRLyWnI1chT25sLu5mcZvUWRdt+as9eyybL+F8fzy16BvqAm6fJ0XxINzFs6MgguGpazRsnpy3kMVBI9F183pscfkIRty1IFhTHLgR5bSrf5XdWSB6qd/fyH7zDpTmyMYivOrnpopk+iwWxOQ5WyIbXeSH76DVeaOG2p6zmZenA2cb7m7E+JvInSJutFd0Ime0Kp9uaqz0bOU5ToaJt3ELiRJ/3kCraVCnot8Fvo6f5iL1WSON25AmM32d9rx+AJqLU2uK19atXmWff9c6/0tX7C+u+ROUer2QoAtGWfr5XXcVS3sABYbGACBkh7R1I0+3vtONGcG8cTiFzap91k6xUqI1YpItwMOikq0fd3rxrSK5b63/14+hO539fbBgCta3bwZpuxVUgk6rxpog6QMya3WnX5GdZHPC8BAj9ilnPCJkEu5h2H6/b5OUOf3dJnHyQJNQkGCyx8VMjdpAgc0cTDpRj3eFTT40VIhzag/EZ3XG4AtgPu5kduPrxAF8WDXU5nilAH0dBNagA51BnN7WV/QsekPY95r5nS33/s+FBYe2fN2Yj1h8dKTBLegrj8BBWWyxnyn58GgbT1+MgPER2dEGIY5Q8lpAZWV9GJsnzrEmqEpaP81VsqXXo1sZdZ+u5cFxI6AniJmmoW0yi1FZA9n0ztBhvXNXBHpChPaBAJANEwMPhlBdix4PcV8C1ufeupJR45o/JdBkGSMTVrKWD5OItFNK/fzVm52sJDeWVghjvF0TQvLKbaDWU7K5plR2TnMgHymDlpPsjG+1gXxDxDaz/Oi3fFYJ0jaUWp4nnOHx+yyvpItHE3euQMZERLZQFKwdccXYOlE3W3on40VBub7H9UfVdYdrvkOgDBAl3bgG4cEu7ml4xBlwAEkc4473pJ62clQuY5RmGmNiLBqy3K4/XkwIt9nabvv7UkJQctBmSxBCSRgtpdiRSqjoGun6k+PBsU4s6NmLAmF2ifvdAXhDrVItL7Q+0Am6dfiXX/3TvrkdyuKcbmRn7GxAgiWdfWOWesjrahnWRyPG/qZgFCK5sdPmdslC0A0oQWFXer9cBY/7kNPjVCD/UsTQteWh3F89yZVJLkUoNTKlR/1JiqFgpHrHLA6M+nUCVF+gA9l5yMXOwQjYB/L74whalOG0OuCVdBEBEdjMkrlIbqDEcFVvxDJaTx58l4DPiQpPzeOCUXnYpymjw5axNHIrTUOBxIRVJTjN+WCpzWMkp4N/LCeo3++jvP37GYNiM9RV8IVvFhFM2oXLlvR0Y6RHITd3CI/yTFw+2SOFwMa5gYILApoQCjTKCQJ4XfQD4dFP5p1rE9U/mz2hO9VHKscKaGfY9PtPpG8AAWyDvrROAEYR/mxtaMSy8mzF2TdLScDSJ8lYInY37gCIUwDmUzKOWs2/HclAlDHSPm/Xagl9vk8+Sati5hTrj/vPJivVpF4NN141sf+nKaL8vWR8X/RXYTKJks54O4XTT3K6WlmdxCs1IcF1FPqAABs2QWGmj6jLrGlLodj10zRzD0NmViGcwR4mPDwu/mjVbOZptB9iQcLqTv/gpaCVmbB9htplvrWWg0ri0fBvAg8bxbDCwu/SDwfTrpMP7ooUPfWw7OQF9zJC7fgsoNgR1mIHLrVIVRZCjg18Kg5QLoPjeGsHNNSEX1TFq30zR8zX47LrG1ooazhQ3M27CLpFOISjGw0li1mVZqrvtSoL7MDZy75+LoYmxRBGIKDyHSeCl0sEGEZeqs1pknpMmjOR618+aRO2jbAyPSpnNkTWlu8eU7ZgMH+SNK0//wl89A9LdaTKSgnf8x958gerDM9ZvA1vHv2TveVj6R6QU0WrkoTa54CAXrgO1YOJrnaqUc4AdZwxw8ZA5uFAaVDhcuKMslCVMquhUTiIFApymceGntcpl1DMmiPqh5rN9+ZIwMl9i4a+cpXzpPoL/G2OvLwgsa2IKYkt0b6ETlWxUjTB1ZuOMSWzBTRxDEvSCh39Cvy6dblZ9/Zsoj+Ew6QjBFheeG23wtaHR1dIkrYqnq2smjNTQaQ+HAFThYlpbHUJCW0sY+7/VxNbwBaepNRgOCJPIKybuiUTXsXB+HpPDTwi94Jfdro1i8O4yknicB3/KU+C4pLapTXidgCXy+gwXHGxXZEztOMdMj9j+NCInzAGO6iWUqu9DSVDt4tuMV35pbSBsQE5e5ToO6Sg5I+j+r2Zgo/MaSXdhl/JjzMS0As/e5pk/pzWa3YwydYDvwpJvlZu8ddmzCCmIOGXv4ggKWigrc2vv1uoNkxDR52KjBf/rRM/10kiSnqWUOBMhKMOiqSFCBLtd/AoT8D3rk9g7pC8sIILKbLbu5ShH7UN7URuYs87Gv+bl6hdKscrcXaWVrEuxR55P8dYJwSkcVjMXWAUw4fmKqWuPtOHrOWdpYUK3VZjaHkSmTh6BbPg23Mo7GAdcUvOMQ8pg0BJWfPMdsWPD595QKI5c8w7YQjrN0Z3wVBPmGsLE0rGjR/SkkZDaVI2mGrdahVieV5dRMigpgh1/H8xfob5Q2Aqo5XtL/OsOx40KsLwALHCVxHqHyfH5Loba3bTh35ux3X85/H/AXnyhlt+wzqRVnLS/Spk7IsqbFdFIQt0zM3rexFXQhhjcNaVOOAT5P2SkbkDSidWzloNnURe5tkmi3DrbZHgGyvt560TEn9uvAQ12w3F1b2HPc0F0ny9tu+rrAEvQSJF+ougqax8hk2avZGpdL1va1QGfQ23ejSGCAo+ZZymCWCdmgfJlC8tKokXJCc0DUjhi9TN8NRzJauM7qm7PFqkNqIHq44zP2Wb9eSA6V9eOjJiTKEXskHlRuwg5bnGScoz6WISnlx/ybpCsmwgK9SRWeUsPSklj43zX/XZOTi7OTrpfqIuYYD8LF3oyqCD/mP+LaQwChFn4OZ6ZUAgOy6p7UFxfR6kFWYJ8tCg0bWd0SreX1iqiDbld/YLtqyz4uoJOMhoLqspvURaM5Z+l+Lh3ZYElQgrh+9cKCxoSS13Z1zRo+DxY51x8FVTOa+Rsjw7umobrhQylXhmywP6gQ5JHbJpLxg41In7ZTlgy500QxApcan/w+44Z9DaiEwPhz6LzBEcNW12wrcWTbUCj5/3g0BSak5QmrXo1b/cQYank9nQTSce0J5r0QvOtYP4rcG5T9CdbTurb5Xx0mJlIRHEwEqI+7VRBKJkx06EP22IU3F/8UUQcu4GuyGrHRsZDCL+3a9QiK1HmV/ev33Nu0aB5OUdA1e2yQbRs7EzWwlVRpJ14cLcwmxOjNZqt8BqTmvB8wuDh8ptoY1F9UVKflM5hCwplZY/uX7W1DO4DH1u8X8zjrZiGQCr08gBLdvECybEtK8iMv2K8K9zEoL2HNuJno0Rkkfk1oI/MJq8mGMkOIVREtt+2pN7BHcEVmUXznvKGLnw/p/1dbXOSxfrEKbWzbek/AxPwmd6/8fYQdeU5inR3ApDyUV6Dy85hXXrTxiVrW6cvhnn9U/pWaYNi5LDuKSnXEQkIhmcZYXHdJ636P01u4IhsYEIr11Tqb/2xn6EogcLvkOVTHbZvNzHPw/g0nQaH2kcQu7zktzJqhNEHxBxNWgG0aG7JxrB4vsqGpe/9qoe4cvXLO14r601fkE5QVWgUoh3+ahxXXBCv7jglQPc9vm38D7Hu53CIhVji6i1p/mUKmdd5vLdmOD4I/ZPxaZWzRRZ0kz6X7TPj/wuKoRViPGp3Ldxh8b+Z/4zc3DvjygEXnGO0o4g0zTjqyCg2CtjK7/Kf7lL2obsgaki+DFXan5pbz9X6869GwYn5+vmYV31zRv3+GsJDQbmxKN/rjTNpSkg9lZfLZGghVU2k9j/qDFlcl2h9v25P4Qn+OcFBHhmHADzQd+oTZ3/skccqtIMBwn4JmbGGL6G3xt3C0EZ+Aa3epO9hiaR42+sB2kWEslUMb6IwtdEsa5DusP7d+EAlXlD+/B3XaUcEEzzaWx1bCW1tbFPuqLnrJG5vB+U2PUaL7FW0/sPLHYky9CwxnrE3zBI/8nfD3ysVl11IhdpuMJMIkmJUw1bnIPtnTRso1WH4eBQ2RpUAIiXfv00fvVE/KBe4X3+U9aQxvCwPqZTHxsw/zvIpKK7bB2hajzJa3hVynri7c07MlJbL5s/mmNnnhKBPGfZknNpxfRWSjRpkJVnSp7RKFAalGqR7lWyDZKOBw5BbRt5e5Vr/hSaNJNzHjrBxxJiaFSha3IHMq+hVnRy6zr1vGe0IT80KczFwwE9wUppydu0guvzEjFPsm/SSCOw/nkKNhxEU/8ktaQOvsj+lHlUvXPEt8u1ukiwWJphG/yrwMzWg4pophH+yfEZrwacQtyScv2mS3NJF4YmoyDTU+jNk8iit2uhptb2Hj/n86FzidH7AweuvSCmfXBRyTLr6lhv1QM4FGiIQwpHPZXQu7rEvrgCw33EQ07xR+iYdlqShXGESl1ZFzQ7lbWVG2bHPUsRIW670+OeOYjCrPajdyRalUsj1OoDLd1a/0aSnzB6OzPZOzQqHzwiQ38cuuGtKbZNDRpBGrzvFJkYgk+DXqJCf3rjmb4QgpXXCF9lqu+DlIumNn/4iaUqf8Yaq0ZHQet3UZoJ6utYYGLXmzSGE5xun7Ni9TGH5BV8bH27dhYMy5zp5BiZKbps/Jfw1di4Ub9WNcrebEHGpsneC1jTt44RfPvRoMT8qbcZZZJqIHRJ2eX+Gylx233SHcljbcEEUmbkAah6MztwdXavxqhAppBCiIljoc/gttotu+FhPgmf2zI6cR4xTip1l/cxlWFTcC78lFWE+PCF0xhHmeaWYhnJEmsHrdZTqtYzKDOPauf7Ywf1iwU/3k1ga0+5wLLonntjxoFmZ2GMw4PfHIDvFlr/pui/n6Lpdy/xMB9/5O9F8i0JllajXtbqV4qBBwSeAdX5jE9xgcKmErEBzc0M2QKRguQDVo7Ve481D7101Zu++sA5pnPUCGALSnlEbOb7Yizd2W009TWGgbdFijbYX6U7Bk9U+eyiaC9K1D9dclT4QMN7enwGBtGsQRg5VwrAf+l4JWRk1RpDzAjkHQmeQ2/+2X8/pIitPtRu5McwpSpJaHij4nK0g0LSC4pPfxWtiGOjDjYDsk7ZbeKh8LHF9ajVmTy1SJXy0uqYIrOeKewRD3wKZ+O7PjkAFRGquS14KXMs2OrGWXLNl+BMT3+jJAE5CWMaVE5GS/3pu4XcEHlqumIEy4HcEbMHUjPVoae+/l/iHfV0snF/b3DHNoNV0vZs70/rXP1+oeChG4jpSO92KY1lY8ofUSj0zO9TqOTUa6c0HNq6mbKcuknS2LoCtGZZLZvTwxPdTy9Z+eafp/ohA+0iH97wb1rtylngMNUftQsLok6mranX77xgQ3hLvsou+xkhvF8v2K3rs2dc3dOX8oUAfKM91WQX+1tfuRuDoH3LOBEAq7AEklwuPrxSs5fgdH/t6HxwMjlVeydwe4cDRbXEg86b8V9ei984kMsdUhEc/PUNMx9fYibuzRJCGGjfFgqvc6CQXXWMOJSdliOx+HvFEnxhcaEIq7iJotH3nKneGQKOT/HqfOXawMEqQIEuqZfTr15zhVjezYGFfLAKkZ6BrwzWX1FdzjyhG5ruMCADXJ4d/nWg2C0Mbfk4c9oRuEHqBm3qb5+xENpxwVka8Z8IY4URAdWAk4Ao3QhMFWnFTVFejpm0l/1Mj+poJvwkhOFMAoNFqaIz/gEXoIf9tSx/DG0aUu0euFjJO+IpuoQguhmynS9IoaYsGrza4ZXiZi+vPLyz71yZOV03osCLbFP7ECAtueFt6PvqvBy+OC6iUDSMcQ/3mbzYbdMNVpJR4v5GiIvLUp3BncCK+siZxr/oB99I20wVPei7yMwcGshB00iOSpZvO6IRxkQ3l1L/Or9lb0JMa+4WLbZvuwf7fr04VzFAf55K4gCDBCGhGCusJJJ3G/92nEo4CRCMkSKspTWqhBLs6N4c1Ps9GnNjB+KVhzMJR42z8RqX0YHOs9+ne47srr0JBHdBFVEYY8AQe0qW0gv43se5DiUNc95Q+wxvr6wYOEzXto7s2No2sH7CfhTFcZrOHA7CPn6+pDO6IYMGxLVpfcNgQpEiCKUc1Po97QW3gJK6434TW2BZ8vRhWoBlyZemkM9wFOP46uAcpq6OnslVwlqNi3APDwtnR3tJ//3eSuZgq0U4X3IIKUGf/VWqmZ7NRa8iGoNEWwXP1PGDx33YJu5FmwWjIqoea/vudjb9nNnZdhIQB96oYDIZrHJVk9qJGD2aHlq683N3sI7lI5lQkXfn+baBWzwE4U/sHcYbR6oBS0g9BmHzbUL9vyfh/+cw3sceDj4Niub//+NAAF9ymla+9kQTI/q5D01KguEK3VDCMafnrR0LaigLykfRmynxziI5NgIHMMDVRH+KAT0JCSHmcA3ZT5V27oHT3PebDKt/q7cK9GVcB7heG8btZ9hYBs9Zv5uoKcu/juOZ50hXmwRJF2vTFM6Y9lZWouVpRRZOf0t4gssc0VOvKdjULpAHT0i+P4DqFj8NW4uj/qHZ3wtSHqpfJwGeuui3v9SC0DAB4aeGPlfohNs536I8ETx3XOigy2k07afkwAKIiQ2Xjk3JmrexMirFUalXS56JmuEtEG+FJLSes9VRdXFGERsxg+MkEpSkgC3UI5XvLwI2QoWtYepCRnGVcGcWPjJoXDwGlBFYrNtKD27PMHqcD3kh4RhzQnISwvnLV0DnBME5Pm1BIlEPqiGxdI8R07FTAQVn7E36xxhmWN41U5rGUUxkHoZK9yhiEQOuOt7SLfqxww3P1l5ZJRbw4eMhIgTR4+Bgq78G1CrgmJ1RGWxU7/oV/1oL7gBybSh70g4S/rGio3q+YwyNpIBPkjumXiM8CvBOmhh9wbltWmXTW5cgF4/0Qb/ukSGCFzZxRMh3Jsnwd3b1c01CpIBKCmjzENe7PFAiQruH26q/xOtoMFtCm6CznxiLIadczz8vn21wsn+ugxaJzcnYE771Ce6PgmdvhQWG9m/nsezM/G/7nGo+tew5PkDvXl3Fgb82PQb5K8mO1GOn1WR8DNBx98WKks1Ia3pnYz8cxSmjO+V2U5ye6aW4OBeUxcuBh9/Us5WQlww9jiiKvzUhaTlpr10+K1XUmTXx5FWPdw97XuAgz7OqwGksATCrSIqTizOCrv4rRkQwWmCs7vy/lH8OxpWU1MM0RC6A//yPiePUEZR3xiQNkWQq9uEFsrFfEXDVMIgZEyfAllN7MhCUITxLDDnobUfNyFjf9E82nWdMbDAAAAAAAAAAAAAAAAAAAAAA=\", \"sides\": 2, \"ringX\": 612.5, \"ringY\": 223.5, \"ringR\": 100}, \"hook\": {\"label\": \"With Hook\", \"sub\": \"45 \u00D7 17 mm \u00B7 single side\", \"kind\": \"rect\", \"plateW\": 45, \"plateH\": 17.4, \"areaW\": 39, \"areaH\": 13, \"ou\": 0, \"ov\": 0, \"defW\": 24, \"iw\": 760, \"ih\": 233, \"cx\": 317.0, \"cy\": 120.0, \"W\": 284.0, \"H\": 110.04, \"ux\": 1.0, \"uy\": -0.0035, \"vx\": 0.0273, \"vy\": 0.9996, \"img\": \"data:image/webp;base64,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\", \"sides\": 1}, \"round\": {\"label\": \"Circle (Heavy)\", \"sub\": \"\u2300 32 mm \u00B7 both sides\", \"kind\": \"round\", \"plateW\": 32, \"plateH\": 32, \"areaD\": 25, \"areaW\": 25, \"areaH\": 25, \"ou\": 0, \"ov\": 0, \"defW\": 17, \"iw\": 560, \"ih\": 1061, \"cx\": 279.5, \"cy\": 776.5, \"W\": 579.84, \"H\": 579.84, \"ux\": 1.0, \"uy\": 0.0, \"vx\": 0.0, \"vy\": 1.0, \"img\": \"data:image/webp;base64,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\", \"sides\": 2, \"ringX\": 283.5, \"ringY\": 234.5, \"ringR\": 163}};\n\nconst pmtOverlay = document.getElementById('pmtOverlay');\nfunction pmtOpenModal(){ pmtOverlay.classList.add('open'); document.body.style.overflow = 'hidden'; }\nfunction pmtCloseModal(){ pmtOverlay.classList.remove('open'); document.body.style.overflow = ''; }\npmtOverlay.addEventListener('click', e => { if (e.target === pmtOverlay) pmtCloseModal(); });\ndocument.addEventListener('keydown', e => { if (e.key === 'Escape') pmtCloseModal(); });\n\n/* --- iOS 16.3 aur purane Safari ke liye roundRect polyfill --- */\nif (typeof CanvasRenderingContext2D !== 'undefined' && !CanvasRenderingContext2D.prototype.roundRect){\n  CanvasRenderingContext2D.prototype.roundRect = function(x, y, w, h, r){\n    let rr = Array.isArray(r) ? (r[0] || 0) : (r || 0);\n    rr = Math.min(rr, Math.abs(w)/2, Math.abs(h)/2);\n    this.moveTo(x + rr, y);\n    this.arcTo(x + w, y,     x + w, y + h, rr);\n    this.arcTo(x + w, y + h, x,     y + h, rr);\n    this.arcTo(x,     y + h, x,     y,     rr);\n    this.arcTo(x,     y,     x + w, y,     rr);\n    this.closePath();\n    return this;\n  };\n}\n\nvar PMT = (function(){\n  const CVW = 1000, CVH = 800;\n  const cv  = document.getElementById('pmtCv');\n  const ctx = cv.getContext('2d');\n  const mctx = document.createElement('canvas').getContext('2d');   // sirf text measure ke liye\n\n  const SHAPES = PMK_SHAPES;\n  const KEYS = Object.keys(SHAPES);\n  const PU = 10;                                  // 1 mm = 10 plate units\n  const U  = mm => mm * PU;\n  const MM = u  => u / PU;\n  const ENG_COL = '#f2f2f2';                      // engraved silver on black\n  const clamp = (v, a, b) => Math.max(a, Math.min(b, v));\n  const fmt = v => (Math.round(v*10)/10).toString();\n\n  /* ---------- state ---------- */\n  const st = {\n    shape:KEYS[0], view:'front', printMode:'both',\n    frontOn:true, backOn:true,\n    front:{ w:30, wRef:30, off:{ x:0, y:0 } },\n    back: { w:30, wRef:30, off:{ x:0, y:0 } },\n    lines:[ { v:'', p:'front', s:1, ox:0, oy:0 } ],\n    bgRemove:true, bgTol:45, engMode:'mask', engThr:128, engPlanAlts:[], zoom:1, diffArt:false\n  };\n  const cur = () => SHAPES[st.shape];\n  const side = w => st[w];\n\n  /* ---------- shape photos ---------- */\n  const shCache = {};\n  function shapeImg(key){\n    let im = shCache[key];\n    if (!im){\n      im = new Image();\n      im.onload = () => { draw(); qDraw(); if (typeof renderShapeCards === 'function') renderShapeCards(); };\n      im.onerror = () => { im._bad = true; };\n      im.src = SHAPES[key].img;\n      shCache[key] = im;\n    }\n    return (im.complete && im.width && !im._bad) ? im : null;\n  }\n  function preloadAll(){ KEYS.forEach((k, i) => setTimeout(() => shapeImg(k), 90*i)); }\n\n  /* default \"your logo here\" placeholder \u2014 light version (black plate) */\n  const PH_SRC = \"data:image/webp;base64,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\";\n  const phImg = new Image();\n  let phReady = false;\n  phImg.onload = () => { phReady = true; draw(); qDraw(); };\n  phImg.src = PH_SRC;\n\n  /* ---------- artwork state ---------- */\n  let rawImg = null, baseImg = null, cropped = null;   // upload -> bg removed -> cropped\n  let engImg = null, engBlack = null;       // engraving artwork (white / black)\n  let hadAlpha = false, origFile = null, teamMode = false, needAutoEng = false;\n  let crop = { x:0, y:0, w:1, h:1 }, autoCrop = null;\n  let lastFit = { ok:true, msg:'' };\n  let lastG = null, printBox = null, textBoxes = [], sel = 'logo', dragging = null;\n  const selTextIndex = () => (typeof sel === 'string' && sel.indexOf('text') === 0) ? +sel.slice(4) : -1;\n\n  /* ================= GEOMETRY ================= */\n  /* v2.7: the product photos are shot at a slight angle, so the plate sits in the\n     photo as a tilted parallelogram. This maps the photo's own plate axes onto a\n     straight horizontal / vertical pair, which lays the keychain truly flat \u2014\n     no tilt and no skew \u2014 and the artwork sits square on it. */\n  function flatM(S){\n    const p11 = S.ux*S.W, p21 = S.uy*S.W;     /* plate x axis in the photo */\n    const p12 = S.vx*S.H, p22 = S.vy*S.H;     /* plate y axis in the photo */\n    const det = p11*p22 - p12*p21 || 1;\n    const i11 =  p22/det, i12 = -p12/det, i21 = -p21/det, i22 = p11/det;\n    /* photo px -> mm, with the plate square to the canvas */\n    return { a:S.plateW*i11, c:S.plateW*i12, b:S.plateH*i21, d:S.plateH*i22 };\n  }\n  /* photo -> canvas box: scale + offsets that fit the flattened photo in w x h */\n  function flatFit(S, w, h, pad, zoom){\n    const F = flatM(S);\n    const px = (x, y) => ({ x:F.a*x + F.c*y, y:F.b*x + F.d*y });\n    const pts = [px(0,0), px(S.iw,0), px(0,S.ih), px(S.iw,S.ih)];\n    const xs = pts.map(p => p.x), ys = pts.map(p => p.y);\n    const bx0 = Math.min.apply(null, xs), bx1 = Math.max.apply(null, xs);\n    const by0 = Math.min.apply(null, ys), by1 = Math.max.apply(null, ys);\n    const s = Math.min((w - pad*2)/(bx1 - bx0), (h - pad*2)/(by1 - by0)) * (zoom || 1);\n    const tx = w/2 - s*(bx0 + bx1)/2, ty = h/2 - s*(by0 + by1)/2;\n    const c = px(S.cx, S.cy);                 /* plate centre */\n    return { F, s, tx, ty, pcx:s*c.x + tx, pcy:s*c.y + ty,\n             m:[F.a*s, F.b*s, F.c*s, F.d*s, tx, ty] };\n  }\n\n  /* v2.6: every photo is turned so the plate lies flat (like the hook photo) \u2014\n     less empty space and the artwork always reads straight */\n  function plateAngle(S){ return Math.atan2(S.uy, S.ux); }\n  /* v3.0: both sides are shown at once \u2014 Rectangle one above the other,\n     Circle side by side. Each side gets its own slice of the stage. */\n  function bothMode(){ return cur().sides !== 1 && st.printMode === 'both'; }\n  function sideRects(){\n    const S = cur();\n    if (!bothMode()) return [{ where:st.view, x:0, y:0, w:CVW, h:CVH }];\n    if (S.kind === 'round')                      /* side by side */\n      return [{ where:'front', x:0,     y:0, w:CVW/2, h:CVH },\n              { where:'back',  x:CVW/2, y:0, w:CVW/2, h:CVH }];\n    return [{ where:'front', x:0, y:0,     w:CVW, h:CVH/2 },   /* one above the other */\n            { where:'back',  x:0, y:CVH/2, w:CVW, h:CVH/2 }];\n  }\n  function geomIn(r){\n    const S = cur(), im = shapeImg(st.shape);\n    if (!im) return null;\n    const lab = 12;                              /* the label now sits inside the ring */\n    const f = flatFit(S, r.w, r.h - lab, bothMode() ? 10 : 12, st.zoom);\n    const k = f.s/PU;\n    return { S, im, sc:f.s, kmm:f.s, k, a:k, b:0, c:0, d:k, rect:r,\n             m:[f.m[0], f.m[1], f.m[2], f.m[3], f.m[4] + r.x, f.m[5] + r.y],\n             pcx:f.pcx + r.x, pcy:f.pcy + r.y };\n  }\n  function geom(){\n    const rs = sideRects();\n    let r = rs[0];\n    for (let i = 0; i < rs.length; i++) if (rs[i].where === st.view) r = rs[i];\n    return geomIn(r);\n  }\n  /* plate units -> canvas px */\n  const toCv = (g, u, v) => ({ x: g.pcx + g.a*u + g.c*v, y: g.pcy + g.b*u + g.d*v });\n  /* canvas px delta -> plate unit delta */\n  function toPlate(g, dx, dy){\n    const det = g.a*g.d - g.b*g.c;\n    return { u:( g.d*dx - g.c*dy)/det, v:(-g.b*dx + g.a*dy)/det };\n  }\n  function areaPath(c, S, grow){\n    grow = grow || 0;\n    c.beginPath();\n    if (S.kind === 'round'){\n      c.arc(U(S.ou||0), U(S.ov||0), U(S.areaD/2) + grow, 0, Math.PI*2);\n    } else {\n      const w = U(S.areaW) + grow*2, h = U(S.areaH) + grow*2;\n      c.roundRect(U(S.ou||0) - w/2, U(S.ov||0) - h/2, w, h, U(1.6));\n    }\n  }\n  function inArea(S, u, v){\n    const ou = U(S.ou||0), ov = U(S.ov||0), t = U(0.35);\n    if (S.kind === 'round') return Math.hypot(u-ou, v-ov) <= U(S.areaD/2) + t;\n    return Math.abs(u-ou) <= U(S.areaW)/2 + t && Math.abs(v-ov) <= U(S.areaH)/2 + t;\n  }\n\n  /* ---------- size limits ---------- */\n  function logoRatio(){\n    const im = (engImg && engImg.width) ? engImg : (phReady ? phImg : null);\n    return im ? im.width/im.height : 1;\n  }\n  function maxLogoW(){\n    const S = cur(), r = logoRatio();\n    let m;\n    if (S.kind === 'round') m = S.areaD / Math.sqrt(1 + 1/(r*r));\n    else m = Math.min(S.areaW, S.areaH*r);\n    return Math.round(m*2)/2;\n  }\n  function applyLimits(){\n    const f = document.getElementById('pmtFrontSize'), b = document.getElementById('pmtBackSize');\n    const m = maxLogoW();\n    f.max = m; b.max = m;\n    ['front','back'].forEach(w => { st[w].w = clamp(st[w].wRef, +f.min, m); });\n    f.value = st.front.w; b.value = st.back.w;\n    document.getElementById('pmtFrontSizeVal').textContent = fmt(st.front.w) + ' mm';\n    document.getElementById('pmtBackSizeVal').textContent  = fmt(st.back.w)  + ' mm';\n    fill(f); fill(b);\n  }\n\n  /* ================= ENGRAVING CONVERSION ================= */\n  /* laser sirf ek hi tone kar sakta hai \u2014 artwork ko single-colour mask me badalte hain */\n  function makeEngraving(src, mode, thr){\n    const MAXD = 1400;\n    const k = Math.min(1, MAXD/Math.max(src.width, src.height));\n    const w = Math.max(1, Math.round(src.width*k)), h = Math.max(1, Math.round(src.height*k));\n    const c = document.createElement('canvas');\n    c.width = w; c.height = h;\n    const x = c.getContext('2d', { willReadFrequently:true });\n    x.drawImage(src, 0, 0, w, h);\n    let dat;\n    try{ dat = x.getImageData(0, 0, w, h); }catch(e){ return null; }\n    const d = dat.data;\n    /* v3.4: a tight band for dark/light keeps thin strokes and small text\n       (26 was wide enough to wash a whole logo out). Mask mode is unchanged. */\n    const band = (mode === 'mask') ? 26 : 9;\n    engKeepOuterDark.src = (mode === 'light') ? new Uint8ClampedArray(d) : null;\n    for (let i = 0; i < d.length; i += 4){\n      const a = d[i+3];\n      let ink = 0;\n      if (a > 24){\n        if (mode === 'mask') ink = a/255;\n        else {\n          const lum = 0.299*d[i] + 0.587*d[i+1] + 0.114*d[i+2];\n          const f = (mode === 'dark')\n            ? clamp((thr + band - lum)/(2*band), 0, 1)\n            : clamp((lum - (thr - band))/(2*band), 0, 1);\n          ink = f * (a/255);\n        }\n      }\n      d[i] = d[i+1] = d[i+2] = 255;\n      d[i+3] = Math.round(ink*255);\n    }\n    if (mode === 'light') engKeepOuterDark(d, w, h, thr);\n    engKeepOuterDark.src = null;\n    x.putImageData(dat, 0, 0);\n    return trim(c);\n  }\n  /* v3.4: light mode keeps the bright part of the artwork as ink, which used to\n     drop a logo's dark outline. Small dark blobs that touch the outer edge of the\n     artwork are put back, so outlines and dark edge details survive.\n     Ported from the Logo Preview page (pm-logo-preview v1.43). */\n  function engKeepOuterDark(d, w, h, thr){\n    try{\n      const src = engKeepOuterDark.src;\n      if (!src) return;\n      const n = w*h;\n      const lab = new Int32Array(n), q = new Int32Array(n);\n      let opq = 0, i;\n      for (i = 0; i < n; i++) if (src[i*4 + 3] > 128) opq++;\n      const lumAt = p => 0.299*src[p*4] + 0.587*src[p*4 + 1] + 0.114*src[p*4 + 2];\n      let id = 0;\n      for (i = 0; i < n; i++){\n        if (lab[i] || src[i*4 + 3] <= 128) continue;\n        if (lumAt(i) >= thr) continue;\n        id++;\n        let qh = 0, qt = 0, sz = 0, touch = 0;\n        q[qt++] = i; lab[i] = id;\n        while (qh < qt){\n          const p = q[qh++]; sz++;\n          const px = p % w;\n          const nb = [ px > 0 ? p-1 : -1, px < w-1 ? p+1 : -1, p-w, p+w ];\n          for (let k = 0; k < 4; k++){\n            const o = nb[k];\n            if (o < 0 || o >= n){ touch++; continue; }\n            if (src[o*4 + 3] < 64){ touch++; continue; }\n            if (lab[o] || src[o*4 + 3] <= 128) continue;\n            if (lumAt(o) >= thr) continue;\n            lab[o] = id; q[qt++] = o;\n          }\n        }\n        if (touch > sz*0.04 && sz < opq*0.06){\n          for (let r = 0; r < qt; r++){ const pp = q[r]; d[pp*4 + 3] = src[pp*4 + 3]; }\n        }\n      }\n    }catch(e){}\n  }\n  /* kitna hissa opaque bacha hai \u2014 bg hatne ke baad */\n  function coverage(src){\n    try{\n      const n = 90, t = document.createElement('canvas');\n      t.width = t.height = n;\n      const x = t.getContext('2d', { willReadFrequently:true });\n      x.drawImage(src, 0, 0, n, n);\n      const d = x.getImageData(0, 0, n, n).data;\n      let on = 0;\n      for (let i = 3; i < d.length; i += 4) if (d[i] > 60) on++;\n      return on/(n*n);\n    }catch(e){ return 1; }\n  }\n  /* bg hat gaya (transparency bachi) -> jo bacha hai wahi engrave hoga.\n     artwork abhi bhi thos block hai (jaise dark badge par safed text) -> brightness se decide karo. */\n  function autoEngMode(src){\n    src = src || cropped || baseImg;\n    if (!src) return 'mask';\n    if (coverage(src) < 0.92) return 'mask';\n    const l = avgLuma(src);\n    return (l == null || l > 145) ? 'dark' : 'light';\n  }\n  /* v3.4: the engraving plan \u2014 replaces autoEngMode (kept above as a fallback).\n     It reads the artwork's own luminance histogram and returns BOTH the mode and\n     the cut point, instead of guessing from an average against a fixed 128.\n\n     The decision that matters is: did background removal actually clear the\n     background?\n       \u2022 the artwork's border is mostly transparent  -> the background is gone,\n         so the artwork's own shape is the engraving  -> mask (nothing can wash out)\n       \u2022 the border is still solid                    -> a filled block arrived\n         (a logo on a red/white/dark panel). The field is the border's own tone,\n         so whichever side of the cut the field sits on is the part to drop:\n         light field -> engrave the dark art, dark field -> engrave the light art.\n     The cut point is Otsu's threshold over the whole range, not a constant, so a\n     mid-tone field (a red or navy panel) is split correctly.\n     Ideas ported from the Logo Preview page (pm-logo-preview v1.43). */\n  function engPlan(src){\n    try{\n      const S2 = 180;\n      const k = Math.min(1, S2/Math.max(src.width, src.height));\n      const w = Math.max(1, Math.round(src.width*k));\n      const h = Math.max(1, Math.round(src.height*k));\n      const t = document.createElement('canvas');\n      t.width = w; t.height = h;\n      const x = t.getContext('2d', { willReadFrequently:true });\n      x.drawImage(src, 0, 0, w, h);\n      const d = x.getImageData(0, 0, w, h).data;\n\n      const H = new Float64Array(256);\n      let N = 0, i;\n      for (i = 0; i < d.length; i += 4){\n        if (d[i+3] < 128) continue;\n        H[Math.round(0.299*d[i] + 0.587*d[i+1] + 0.114*d[i+2])]++;\n        N++;\n      }\n      if (N < 50) return { mode:'mask' };\n\n      let sum = 0;\n      for (i = 0; i < 256; i++) sum += i*H[i];\n\n      /* is there still a solid field around the artwork? */\n      let bOn = 0, bAll = 0, bSum = 0;\n      const look = (px, py) => {\n        const p = (py*w + px)*4;\n        bAll++;\n        if (d[p+3] >= 128){ bOn++; bSum += 0.299*d[p] + 0.587*d[p+1] + 0.114*d[p+2]; }\n      };\n      for (let px = 0; px < w; px++){ look(px, 0); look(px, h-1); }\n      for (let py = 1; py < h-1; py++){ look(0, py); look(w-1, py); }\n      /* background already removed -> mask (this is the v3.3 behaviour, kept) */\n      if (!bAll || bOn/bAll < 0.6) return { mode:'mask' };\n      const fieldL = bSum/bOn;\n\n      /* Otsu over the full range \u2014 the cut between the two tone clusters */\n      let wB = 0, sB = 0, best = -1, thr = 128, loT = 0, hiT = 0;\n      for (i = 0; i < 256; i++){\n        wB += H[i];\n        if (!wB) continue;\n        const wF = N - wB;\n        if (!wF) break;\n        sB += i*H[i];\n        const mB = sB/wB, mF = (sum - sB)/wF;\n        const v = wB*wF*(mB - mF)*(mB - mF);\n        if (v > best){ best = v; thr = i; loT = mB; hiT = mF; }\n      }\n      /* one flat tone -> nothing meaningful to cut on, use the artwork's own shape.\n         This is measured as the gap between the two clusters, not as variance:\n         a small mark on a big panel has a tiny variance but a very real gap. */\n      if (best < 0 || (hiT - loT) < 40) return { mode:'mask' };\n\n      /* the field is the part to drop */\n      let lt = 0;\n      for (i = thr; i < 256; i++) lt += H[i];\n      const fL = lt/N, fD = 1 - fL;\n      const mode = (fieldL >= thr) ? 'dark' : 'light';\n      const keep = (mode === 'dark') ? fD : fL;\n\n      /* a small mark on a big field is fine; a near-empty split, or one that would\n         engrave nearly the whole plate, is demoted \u2014 but it stays on the list as a\n         fallback, so buildEngraving can still reach for it if mask comes out solid. */\n      const alts = [{ mode:'mask', thr:128 }, { mode, thr }];\n      if (fL < 0.004 || fD < 0.004 || keep > 0.85) return { mode:'mask', thr:128, alts };\n      return { mode, thr, alts };\n    }catch(e){ return { mode:'mask' }; }\n  }\n  /* v3.4 safety net: whatever the plan decided, an engraving that came out blank\n     or as one solid block is never shipped \u2014 fall back to the artwork's own shape. */\n  function engSane(cv){\n    try{\n      if (!cv || !cv.width) return false;\n      const n = Math.min(220, cv.width);\n      const h = Math.max(1, Math.round(n*cv.height/cv.width));\n      const t = document.createElement('canvas');\n      t.width = n; t.height = h;\n      const x = t.getContext('2d', { willReadFrequently:true });\n      x.drawImage(cv, 0, 0, n, h);\n      const d = x.getImageData(0, 0, n, h).data;\n      let on = 0;\n      for (let i = 3; i < d.length; i += 4) if (d[i] > 40) on++;\n      const f = on/(n*h);\n      return f > 0.02 && f < 0.92;\n    }catch(e){ return true; }\n  }\n  function buildEngraving(){\n    if (!cropped){ engImg = engBlack = null; return Promise.resolve(); }\n    return new Promise(res => {\n      /* v3.4: a blank plate or one solid engraved block is never shipped \u2014 walk the\n         plan's fallbacks and keep the first result that holds a real mark. */\n      let c = makeEngraving(cropped, st.engMode, st.engThr);\n      if (c && !engSane(c)){\n        const tried = [st.engMode + '|' + st.engThr];\n        const list = (st.engPlanAlts || []).concat([{ mode:'mask', thr:128 }]);\n        for (let t = 0; t < list.length; t++){\n          const key = list[t].mode + '|' + list[t].thr;\n          if (tried.indexOf(key) >= 0) continue;\n          tried.push(key);\n          const alt = makeEngraving(cropped, list[t].mode, list[t].thr);\n          if (alt && engSane(alt)){\n            c = alt; st.engMode = list[t].mode; st.engThr = list[t].thr;\n            break;\n          }\n        }\n      }\n      if (!c){ engImg = engBlack = null; res(); return; }\n      /* black version \u2014 laser software ke liye */\n      const bc = document.createElement('canvas');\n      bc.width = c.width; bc.height = c.height;\n      const bx = bc.getContext('2d');\n      bx.drawImage(c, 0, 0);\n      bx.globalCompositeOperation = 'source-in';\n      bx.fillStyle = '#000'; bx.fillRect(0, 0, bc.width, bc.height);\n      let n = 0;\n      const done = () => { if (++n === 2){ applyLimits(); renderShapeCards(); res(); } };\n      toImage(c,  im => { engImg  = im;\n        const p = document.getElementById('pmtEngPrev'); if (p) p.src = im.src; done(); });\n      toImage(bc, im => { engBlack = im; done(); });\n    });\n  }\n\n  /* ================= TEXT ================= */\n  function lines(where){ return st.lines.filter(l => String(l.v||'').trim() && l.p === where); }\n  const engFont = v => '700 ' + v + 'px Poppins, system-ui, sans-serif';\n\n  function lineFont(l, maxW){\n    const parts = String(l.v || '').split('\\n').map(t => t.trim()).filter(Boolean);\n    let fs = U(4.0);\n    mctx.font = engFont(fs);\n    let w = Math.max.apply(null, parts.map(t => mctx.measureText(t).width).concat([1]));\n    const fitW = maxW*0.86;\n    if (w > fitW){ fs = fs*fitW/w; w = fitW; }\n    l._sMax = Math.min(2.4, Math.max(0.5, maxW/w));\n    const sc = clamp(l.s || 1, 0.5, l._sMax);\n    if (l.s !== sc) l.s = sc;\n    fs *= sc;\n    mctx.font = engFont(fs);\n    w = Math.max.apply(null, parts.map(t => mctx.measureText(t).width).concat([1]));\n    return { fs, w, parts };\n  }\n\n  /* ================= LAYOUT (plate units) ================= */\n  function layout(where){\n    const S = cur();\n    const maxW = U(S.kind === 'round' ? S.areaD : S.areaW);\n    const hasLogo = !!(engImg && engImg.width);\n    const anyText = lines(where).length > 0;\n    const showLogo = hasLogo || !anyText;\n    const items = [];\n    let y = 0;\n\n    if (showLogo){\n      const w = U(side(where).w);\n      const h = w/logoRatio();\n      items.push({ t:'logo', w, h, y:0 });\n      y = h;\n    }\n    lines(where).forEach((l, i) => {\n      const m = lineFont(l, maxW);\n      const lh = m.fs*1.2*Math.max(1, m.parts.length);\n      if (items.length) y += U(1.0);\n      items.push({ t:'text', l, m, w:m.w, h:lh, y:y });\n      y += lh;\n    });\n    if (!items.length) return { items:[], totalH:0 };\n\n    const off = side(where).off;\n    const cx  = U(S.ou||0) + U(off.x);\n    const top = U(S.ov||0) - y/2 + U(off.y);\n    items.forEach(it => {\n      it.cx  = cx  + (it.l ? U(it.l.ox||0) : 0);\n      it.top = top + it.y + (it.l ? U(it.l.oy||0) : 0);\n    });\n    return { items, totalH:y };\n  }\n\n  function fitCheck(S, items){\n    let ok = true;\n    items.forEach(it => {\n      const L = it.cx - it.w/2, R = it.cx + it.w/2, T = it.top, B = it.top + it.h;\n      [[L,T],[R,T],[L,B],[R,B]].forEach(p => { if (!inArea(S, p[0], p[1])) ok = false; });\n    });\n    return ok;\n  }\n\n  /* ================= DRAW ================= */\n  /* one plate with its artwork \u2014 used for the side that is not being edited */\n  function paintPlate(g, where, active){\n    const S = g.S;\n    ctx.save();\n    ctx.setTransform(g.m[0], g.m[1], g.m[2], g.m[3], g.m[4], g.m[5]);\n    ctx.drawImage(g.im, 0, 0, S.iw, S.ih);\n    ctx.restore();\n    const on = where === 'back' ? st.backOn : st.frontOn;\n    if (on){\n      const keep = snapArt(), a = artFor(where);\n      if (a) putArt(a);\n      try{\n        const A = layout(where);\n        ctx.save();\n        ctx.setTransform(g.a, g.b, g.c, g.d, g.pcx, g.pcy);\n        areaPath(ctx, S, U(0.6)); ctx.clip();\n        ctx.fillStyle = ENG_COL;\n        A.items.forEach(it => {\n          if (it.t === 'logo'){\n            if (engImg && engImg.width) ctx.drawImage(engImg, it.cx - it.w/2, it.top, it.w, it.h);\n            else if (phReady){ ctx.save(); ctx.globalAlpha = 0.85;\n              ctx.drawImage(phImg, it.cx - it.w/2, it.top, it.w, it.h); ctx.restore(); }\n          } else {\n            ctx.font = engFont(it.m.fs);\n            ctx.textAlign = 'center'; ctx.textBaseline = 'top';\n            it.m.parts.forEach((t, i) => ctx.fillText(t, it.cx, it.top + it.m.fs*1.2*i));\n          }\n        });\n        ctx.restore();\n      } finally { putArt(keep); }\n    }\n    sideLabel(g, where, !!active);\n  }\n  /* v3.1: FRONT SIDE / BACK SIDE is written inside the keychain's own ring */\n  function sideLabel(g, where, active){\n    if (!g) return;\n    const S = g.S, r = g.rect;\n    ctx.save();\n    ctx.setTransform(1,0,0,1,0,0);\n    ctx.textAlign = 'center'; ctx.textBaseline = 'middle';\n    if (S.ringR){\n      /* ring centre in canvas px */\n      const cx = g.m[0]*S.ringX + g.m[2]*S.ringY + g.m[4];\n      const cy = g.m[1]*S.ringX + g.m[3]*S.ringY + g.m[5];\n      const rad = S.ringR*Math.hypot(g.m[0], g.m[1]);   /* photo px -> canvas px */\n      /* v3.2: one short word in a capsule, half the old size */\n      const txt = where === 'back' ? 'BACK' : 'FRONT';\n      let fs = rad*0.23;\n      ctx.font = '800 ' + fs + 'px Poppins, system-ui, sans-serif';\n      let tw = ctx.measureText(txt).width;\n      const room = rad*1.30;\n      if (tw + fs*1.5 > room){\n        fs = fs*room/(tw + fs*1.5);\n        ctx.font = '800 ' + fs + 'px Poppins, system-ui, sans-serif';\n        tw = ctx.measureText(txt).width;\n      }\n      const pw = tw + fs*1.6, ph = fs*2.05;\n      ctx.beginPath(); ctx.roundRect(cx - pw/2, cy - ph/2, pw, ph, ph/2);\n      ctx.fillStyle = active ? '#f7941d' : 'rgba(255,255,255,.95)';\n      ctx.fill();\n      if (!active){ ctx.lineWidth = Math.max(1, fs*0.09); ctx.strokeStyle = '#ddd7cd'; ctx.stroke(); }\n      ctx.fillStyle = active ? '#ffffff' : '#8a8f99';\n      ctx.fillText(txt, cx, cy + fs*0.06);\n    } else if (r){\n      const txt = where === 'back' ? 'BACK SIDE' : 'FRONT SIDE';\n      ctx.font = '700 20px Poppins, system-ui, sans-serif';\n      const w = ctx.measureText(txt).width + 34, h = 34;\n      const x = r.x + r.w/2, y = r.y + r.h - 24;\n      ctx.beginPath(); ctx.roundRect(x - w/2, y - h/2, w, h, 17);\n      ctx.fillStyle = active ? '#f7941d' : 'rgba(255,255,255,.92)';\n      ctx.fill();\n      if (!active){ ctx.lineWidth = 1.6; ctx.strokeStyle = '#e2dcd3'; ctx.stroke(); }\n      ctx.fillStyle = active ? '#ffffff' : '#8a8f99';\n      ctx.fillText(txt, x, y + 1);\n    }\n    ctx.restore();\n  }\n\n  function draw(showGuides){\n    ctx.setTransform(1,0,0,1,0,0);\n    ctx.clearRect(0, 0, CVW, CVH);\n    const bg = ctx.createRadialGradient(CVW/2, CVH*0.34, 60, CVW/2, CVH/2, CVW*0.8);\n    bg.addColorStop(0, '#ffffff'); bg.addColorStop(1, '#ece6df');\n    ctx.fillStyle = bg; ctx.fillRect(0, 0, CVW, CVH);\n\n    /* the side being edited keeps the guides; the other one is just shown */\n    const rects = sideRects();\n    lastG = null; printBox = null; textBoxes = [];\n    if (rects.length > 1){\n      rects.forEach(r => {\n        if (r.where === st.view) return;\n        const gg = geomIn(r);\n        if (gg) paintPlate(gg, r.where, false);\n      });\n    }\n    const g = geom();\n    lastG = g;\n    if (!g){ watermark(); return; }\n    ctx.save();\n    ctx.setTransform(g.m[0], g.m[1], g.m[2], g.m[3], g.m[4], g.m[5]);\n    ctx.drawImage(g.im, 0, 0, g.S.iw, g.S.ih);\n    ctx.restore();\n    if (rects.length > 1) sideLabel(g, st.view, true);\n\n    const where = st.view;\n    const on = where === 'back' ? st.backOn : st.frontOn;\n    const S = g.S;\n    lastFit = { ok:true, msg:'' };\n\n    if (on){\n      const L = layout(where);\n      /* preview area se bahar na jaye \u2014 offsets ko wapas kheench lo */\n      if (L.items.length && !fitCheck(S, L.items)){\n        const off = side(where).off;\n        const lim = S.kind === 'round' ? S.areaD/2 : S.areaW/2;\n        off.x = clamp(off.x, -lim, lim);\n        off.y = clamp(off.y, -(S.kind === 'round' ? S.areaD/2 : S.areaH/2),\n                              (S.kind === 'round' ? S.areaD/2 : S.areaH/2));\n      }\n      const A = layout(where);\n\n      ctx.save();\n      ctx.setTransform(g.a, g.b, g.c, g.d, g.pcx, g.pcy);\n      areaPath(ctx, S, U(0.6));\n      ctx.clip();\n      ctx.fillStyle = ENG_COL;\n      A.items.forEach(it => {\n        if (it.t === 'logo'){\n          if (engImg && engImg.width){\n            ctx.drawImage(engImg, it.cx - it.w/2, it.top, it.w, it.h);\n          } else if (phReady){\n            ctx.save(); ctx.globalAlpha = 0.85;\n            ctx.drawImage(phImg, it.cx - it.w/2, it.top, it.w, it.h);\n            ctx.restore();\n          }\n        } else {\n          ctx.font = engFont(it.m.fs);\n          ctx.textAlign = 'center'; ctx.textBaseline = 'top';\n          it.m.parts.forEach((t, i) => ctx.fillText(t, it.cx, it.top + it.m.fs*1.2*i));\n        }\n      });\n      ctx.restore();\n\n      /* hit boxes \u2014 canvas space AABB */\n      A.items.forEach(it => {\n        const p = [[it.cx-it.w/2,it.top],[it.cx+it.w/2,it.top],\n                   [it.cx-it.w/2,it.top+it.h],[it.cx+it.w/2,it.top+it.h]].map(q => toCv(g, q[0], q[1]));\n        const xs = p.map(q => q.x), ys = p.map(q => q.y);\n        const box = { x:Math.min.apply(null,xs), y:Math.min.apply(null,ys),\n                      w:Math.max.apply(null,xs)-Math.min.apply(null,xs),\n                      h:Math.max.apply(null,ys)-Math.min.apply(null,ys) };\n        if (it.t === 'logo') printBox = box; else textBoxes.push(box);\n      });\n      if (!printBox && sel === 'logo') sel = 'text0';\n\n      const okFit = A.items.length ? fitCheck(S, A.items) : true;\n      lastFit = okFit\n        ? { ok:true,  msg:'\u2713 ' + fmt(side(where).w) + ' mm engraving' }\n        : { ok:false, msg:'\u26A0\uFE0F Artwork is outside the engraving area' };\n\n      if (showGuides !== false && !teamMode){\n        if (sel === 'logo' && printBox)\n          dimBox(ctx, printBox.x, printBox.y - 6, printBox.w, printBox.h + 12,\n                 fmt(side(where).w) + ' mm wide');\n        const si = selTextIndex();\n        if (si >= 0 && textBoxes[si]){\n          const b = textBoxes[si];\n          ctx.save();\n          ctx.setLineDash([7,6]); ctx.lineWidth = 1.8; ctx.strokeStyle = '#1f5fd0';\n          ctx.strokeRect(b.x - 8, b.y - 5, b.w + 16, b.h + 10);\n          ctx.restore();\n        }\n        const dot = (b, col) => {\n          if (!b) return;\n          ctx.save();\n          ctx.beginPath(); ctx.arc(b.x + b.w, b.y + b.h + 6, 9, 0, Math.PI*2);\n          ctx.fillStyle = col; ctx.fill();\n          ctx.strokeStyle = '#fff'; ctx.lineWidth = 2.4; ctx.stroke();\n          ctx.restore();\n        };\n        if (sel === 'logo') dot(printBox, '#f7941d');\n        const si2 = selTextIndex();\n        if (si2 >= 0 && textBoxes[si2]) dot(textBoxes[si2], '#1f5fd0');\n      }\n    } else {\n      lastFit = { ok:true, msg:'No engraving on this side' };\n    }\n    watermark();\n    syncStageUI();\n  }\n\n  function dimBox(c, x, y, w, h, label){\n    c.save();\n    c.setLineDash([7,6]); c.lineWidth = 1.6; c.strokeStyle = 'rgba(247,148,29,.95)';\n    c.strokeRect(x, y, w, h);\n    c.setLineDash([]);\n    const tw = Math.max(96, label.length*13 + 26);\n    c.beginPath(); c.roundRect(x + w/2 - tw/2, y - 40, tw, 32, 10);\n    c.fillStyle = 'rgba(255,255,255,.96)'; c.fill();\n    c.strokeStyle = 'rgba(247,148,29,.95)'; c.lineWidth = 1.6; c.stroke();\n    c.fillStyle = '#20242e';\n    c.font = '800 20px Poppins, system-ui, sans-serif';\n    c.textAlign = 'center'; c.textBaseline = 'middle';\n    c.fillText(label, x + w/2, y - 23);\n    c.restore();\n  }\n\n  const WM_SRC = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAAA/CAYAAACRkxEKAABVkUlEQVR42u19dZgUx/r1qeru8XVhl8VlcSe4Bw8SSMJNiDvxGyHuuXEiBEKECHEleLDg7gQJGnSxdR3rrqrvj56e6ZmdXXaJ3Py+u/U8kywz3V3VJW+9ct5TRAiBmlJTakpN+b9eOOcSpZR5vf7YTz+fN2vOgpUDsk6dAREcdWqnYuiQ3htvvmHMKJfLkWNcS2oEYE2pKTXl/77wExKlhO3ac3js3fe9OrOotAR9enZA69aNlhAQvmfP4aEbNu0EAcHUyY/f1KVzm08551JUASiEIJwLGRAghPC/6yWEEJQQwgOfGslcU2pKTamy8Nuz98jokWPunT14UFe89tJ9deLiYk+Zr3O7PYnP/mfa6R9/WmL97qtJN1zUqc1n5QQgY1yRJKr+t1+Kca5I9L/fjppSU2rKP7cIIQgA+P2ac/Ald5VkNquL6e8+Re578CVx4uRZeD1+xMbFYkD/Lktuuv7SSxVZ9kx8dJJ/3cbtysK5H9aRI21oSaKqqmr2TZu337x5y44bT505295d5qOCEEAIgAAEQOgPQ4CS4HMIAEFMPwEgIKZ/itAzAAjO4XBYeYP6dTZc1Ln9jC4XdfhUolQ17PSaYa4pNaWmRNf+uCxJkjpvwerXz57LxtyZb9TxeHzx6zbsgs/nw2VjhpzZsHl3+sTHJg2mlPx4yw1jRzz39N1pvQden/fVtwu+kAMijBBAUErZ3PlLJk2dNuPBXXv2we/zgxD9R11ehWuLETIuQvqZxSIxy0cQ4x+m7wQH5UL0tNusPdu1azX9njtvfH7o4P7PCCFIjTlcU2pKTYlWDBfd4iXrJ/Tp1RFxcTGnCguL61itFjSoXxvPPjmh9tq1O+4eOGLjlOycvOaEEOFw2PKHDOxZPGf+8v6yAIjgggICz7341sl3p81Ily0ynE4bXDF2XW8TJmFVXuGrrHkwbjbfTsKkIzF9ScC4wPYde3D9zfc/fe/dN1/zxCP3NNY1QcLLSeCaUlNqyv+w+QtiWIjHT5zG8OE9N+vxCy4rioLDR07g3vtfFvsPHMOQgb0wftwl13EuJELAmzSuu2LZyo2jZcE5pZSy5154K+vNtz9Mr1UrBQIcnDOAARwIM14DYjckCEW4XCynFpIIsUVCOmC4XCXBZ8fEOCAE8Pob0xpZFHnXxAfuaBsQguw86rBURckcZScBD+qnBP9oQcu5kKJMB/yvBo+4EFL5EQufXX+WK0UIQYQQFNG39POOQ/n7a8bvTxkXMHDOZGMNc8ZhURRojOHY8Sz07tUOderU2i4Ep4RQzgWXBeeglFK29JfVT059f0ZGrbRUcHBwzoNmLwlqcCEBFaYCEt28JUS/hohwWUcC/9WfRMLMY7PUJKFHgXMOAYGUlCS89c70NqtWb7ifUsp0AVdxoZQySskFfQghQv9AcM4lxphyvvr+WyX6O1D2v7p4KIneH+a//0STS0Q+uzrjUP7+mvG78LHQ1yoANG6UgV27D3bU+5dofr8fmZkNMO2dJ8mbrz386vczl+LDj79fKEmSSggRBw+eGJiUnACiqpr1snG3eDdv+xUxMQ4wxvRgR0A6he1zxCwSzdZwQGUqB6kh0X2GJMIXaLKGzWKXUgklJWXo2a0Tvv1qmk2SJH9Fk8TtdieeOZvTJgTbqfpckiTJb7fbC+02W6HTac81Lxhjx/6nBGM0TbOezDrTmQshE4Cb2kktFqWsTkb6tn/yQoq2qfwRzYcxpmRlnemoMWbTxz4qrIvWyai9zWq1lF64hqHbPQUFhfVy8wqaSJKklq+LgHMmxcfHZSUnJR6O9pz8gsIG+fmFDSLnE+dcSk1JOhAbG3OmRrRVZ/x11Mrc+SsnPfTYpAc3rPqysdNuz2/b5fKCZs0aYM73k2UAuPTyf2u/7t2PzWu+aRkfF3uyU4+rSu65819LyLr1WyZcc/2971GZQggeEBwCRJiFXjRRFl3EhBkEwuziI2H3lxesZiFJQuJXABrTMH/WjEtbt2o2JzIybPx7/YZtE6696YH3FEUOCWISrZXl34RSCTabFQ67A7GxLjRp3AAd2reaedFF7T5r1aLJPMPs1Bfqf8c8NoJBZ85ktxkx9pZdxcUlkCSqbxSEwOPxolWLJpj700c2SZJ9/78Hj4z3Kyoqzhg59pasrFPnYLUoEME9QX91iVIUFRbjlZce+/qa8WOvZowpuvCqfn2cc/maGx70r9uwFS6nLcxS0jdSGfkFhbh7wrWHH3/0nqbmuoy/p7w7Y+3Lk97vmRAXC41pAAgkSUJhQREmT3rywyuuGHn7hbbxf9P0BYEQ0BizjRhzjzstLRGfTX+R/DT7lylWm1I6dFCvpwGC3XsPj9m6bfd1I4b3eeT1Nz/ftWnrLvrz7Hdry+s3bJ3g9noRG+MEF4AIeeOCGl9lXrVwl1+EZy/sfyTM/4ew/0ZY10BQAFNJQllJKX7dve/y1q2azdH9J2BROoL6/X6TEDcHpIlpG9ffMMxrI1S4PR7k5eVDYwLbdu7Btz/MuywuLvayLhe1w+23Xn1v7x6dppgX3n9z0FVVhV/1Q+YShO4Jhs/vh6ppAP4+4PqFaGt7fzs40q9qTkLACYjQNM2akZG2I6N22k4hQKq9wRACVWNQVT8IBSB4aOMTBIxQMM4xd96S8Vf9a/QNlFJNnxVVH0Njk92799DI9Ru3Q1Fk+PxqYEKFdnlJCPj9fnDO5Qr7gAtF9fvh1/xgGoMAIDEJPr8PTAilRqRV0wwGBBeQFFn2THnzsUGXXXX/0utvfUK8+/YTqS6nI8e4rn3bzO/btGo866FH3vD/8NMSzJs19arYGNcZOTe/oElInxMmK5SE/idCgqs8li/SlCUmzU7HDooIGIzhEzQklIAIxlWCUeeggCQQXODw4aP9z+sLkmhQKyKG0WJWSwWixkgMrZMQwAoCSggEIWAax/IV67B67aZ3br5h3CNPPHJXY0mS/P9tIUgphUQJqER0aCahkCQJlBIAgv5TtTW325N40+2Pzjx95hwsigJKCQoKCvH8Mw+su+fOG3pxzuQL0XwIoYE+obryT8JdN64YF7Zu34U9vx0c3a5Nix91s4mo1Wg/BcBmz1v6ts/nhd0RC6YxgIiwACEl+vwjtOJNiBBwKgXaKukhRonq43eB8bv/+UIpYUIIktm03i8/fvPmkLvuf3lxh67jsgf074KWzRptBAgO/X6y25Kla5FWKxnzfpp6VYd2zb/lnEsy0zSLQLkwbUBZI2EOOhGQKUwALCC4wu3eiBEUuqCTiL470kCoVZieqQc+qEms8jC1UgQuLioqzjifMiyE/gEM51jIlBecR59fgaAMpRRUkgK7tH43oQRxcS5wzjFl2qcZxcUl7tdeftym+97+e+ZwODbT+Pv/grVLoCgyFEWCrEigBJAVGbIs+f6wIRR4fwFDtwvNakollLi9mD1n0dvt2rT4MRTxr5rwliRJLS4uSV+2fH1dm80KzvQgHRECgpjmGLg+BwFa8diFNk5CwseT/IO193/8zCJEcC6kZk3rL1k0Z5pt9tzlb//40+IJCxev7UYIgcvpwNOPT/j68rGD7rDZrMWGVi8LQWgoMmteVZGKpj5IPg4ohCNO0qO1gIAgAUEmQveS0ASClwOlnMDHCRwyhVPShWjIPDXv19Sw7KOBBqNN/ZBJHKg/uBQMM5pQSIqiC8FI2E6gDq/XB5/fDVmS4HI5wAOmNGMMIEBKUhK++PJH2qxpg7m33XLNMM65RMjfHxgRQhCvxwuPxwtZkgPaswSvxwufT/1Hm8BmQUVIyLwQf0T3CQq7gAkRSEESJDSFBBew2mxYsnR1xr/vvSUjLjbmVFW1eCPTYM3arfce+v0YYmOcwTlhbLDBWWwYL5UQjGiqZvW4PbDbdIgGAYVEJbjdHjDGLDWi7I9pgpwLSZao7/IxA++4fMzAOypzaQCAHLIBaTDVzSwgzAPsZUBjO8cnrQliKYEQUnAiE6HviAhAXVTDZBZAmRDI8XMsz2NYkMuwz00Qb5GCPrqQsVs+wmz+vnq6BgGlFMXFJbh87HA8dP9tPXw+f4zuAyq/iPILCxsePHR04Ny5S6/cuHkHHE6brk0SfXlxzuCKceG9D74YOuKSQW1rp9fa9d8whSVZUhs1rIfS0lJIkqQvfUrh8/hQr256pdrHP8AUpuZAm+mHPy5Xyzk1wmwD2KxWHDuehZWrNjw4euTgBwzBVgV3gwYAP81e/CghZu9NuCc56EASqGAM9GsTE+KONsts1DEuLkYXpCCQJIqUokTExDjP1oixP8cc5lzIhBBuYIeN7yglmjmIKocNICHhEVzDjBBBFR0MBBaJIkkmAXVftyc4iB5ECVybYKUAlQFIACVoCIEutRju8al476gfbx9ToSgKZBqq14gIC2FW/0g48LoyZYGYfXoImrMJCXG5DerX2XC+zut6UfuPr75y9DWvTfpg77QPvmjmcNp0TVAAHAIWiwVnzuVgwcJlL9960/hLIheRkZgdzdyJtgsJAUop0ULCQWfDiQa5MZ6VmpK0f+Z378dFM3kJIVyWdHMysu7Itp2/fUISglOAILyN+uKmlGjnE/5GnQKgEIJzziXORZSwGgnCjarbzgqloIiwYgLzau78pfePGjHowagbYZQ+oJSwY8ezum/cvAN2uy1o9ZCApUICG2RE3ns5LdwgGLl6/Jhrr/zXyJui1Scrik+/trxgrk6/CCEIF0KGCIKreVXm2IVYI8Yzw9emCM7H/wa4mxAiIn280b4LCEBdY9NNWEMXE6AkAEcJOFUEAAsFjnsJBm/RkCzp/g4uODjXhZgeRSZQhUBrF8E7HWMQZ6EBs4RCcAqnRcJDrS1o6vLgjj0qqMUCSoyARSjwEqYUVMXZJiKCHSZNkGnMwrmQGGMWSaL+Sia8LMuS75GJE1ps37GHb9iyA06nLbBT6xOdUgmbt+wcfutN4xG5iKpoUkk6EJYymKLZhJDgv/WJBRot84UQImw2a/GFTIqqXGdkmeh1SyziGWFtPh9zULBOLkAoEfn5RQ0LCoohy1JwowyNORGUUq3ai4WEb9jlhWHAJOaAw2nH+g3bcPTYyV6NGtZbcz6yjUDGBps3f9nr+QVFiItzBecCBAehJDhPRRWteEWRPYoie/6q8TPGRCLlF7t5/LgQEgEuSDgZm7ckUTVyTkRtE+cKAfg/kdhEDuxWUjAaG9DyCjRAhgAVHKoAKAFiZQEKgrN+CTkACOdQOYUqdA1QBLJBuADyNA0lGpBgJeCCgxIKSPourPkoRte3YX8pw+vHOJJsMnjYghCm8DM5r+IXXREQYQJUV42pVtkgUAqmacwqy5Kvf7/uy1ev2zKAOEM+ASEAWZZw4sRp+FXVYVEUtwHdYIwpQnDZ7IOTZdlXke9h7bqtd/+yfP3jx09kpTNNQ0JCPOrXy9jep3eXtzt3avMFIWDRFqgQgqiaZichj1OY0FcUJeriKivzJJWWlqUGI5RCIDEx/pi5jeb6jhw92Xv12q337d//+9DsnBynz+dFbEwM0mqlnurapd3H/fp2e8PsTC6/EJkS0gyAwoLihu+8+8lqj8cDh9PQpHTnhoCgXHBJVVV7NO2nMgB82MAHrlA1huTEWHTr2g7zF66BxaJACAFJllBQWIyfZv885aH7J7QPaLOs4uAHVb0+X+zCJat6WiwyhL4robS0BKNHDMCRI1n47cAR2G0WgAuzu5xWLKCYwjmXw3b5wN+UUi3a+3POpfz8ooaMM4UQwgXn1G63FZpB04Y7RpKo6vP5XZs2/3rzhk07bj958kyLwqJCyLKEpMQE3qRx/ZX9+/V4vXmzRovMWm51ND5j8y4tdaccO5bV49DvxwecPZfTuqCgoB5jmiU2NvZ0Ru20nY0b1V3VpEnDFTEu5znjPf5p6X4ywrI7CDgIbFTgvgwNLS36DPFBYHYBwbwcggYO4JlGBJlWCRIkeJhAsSZQpAGlHOCEIkHi6J5iQx0bBdM4JGImRRCQJYBrBBPqyfjyjIYSBljkcvYKjCgxBDkPGjGagKym4AzJSg4AGRlpOwghA2BaphBCB60WFaKoqDgjJTnpEGOaRZZl37Llax976bV3n3M5HSAgKC0txR0Trps+7vKRtzGmT1xKKdu1+8DYN976eObK1Zvg9XkhSQHYkODgXHSc8t5nn/fr0/XzJx+7p1/jRvVWGQLGmOAlJaVpE+5+/HROXgEUWQ5opRQetwft27XAG68+Tc0TzADVzp235I1n/jP5+tgYFwiAstJSvP3ms88MHtTneXP7Dh46OnDKu18sXbFqI3Lz8qHn0QbmhhDgnGd8+Mk3Tzdv1vjpB++75aXhw/o9YV5ERn2z5y55+51pM+6MdTlBCJCTk4dTZ7JhdxjCT4/MO11OfP3trL4LFy3TNI3r0KnAQBAQcM7x9qSnhzVv1mRRVGFrco0IE/5T1RiGDx340voNux4vLC6BLFMILmCxKFi8dFW7e+680WW1Wksr8uNyLmRJIurmzbtu3LP3IOx2KwTXfcKyJGPgwL5TP/r4m7uj+y9FVMEnSZI6e96StydP/fTO2JiANkkIJErg8XjwzBP//nef3t0mG1qc0TZN06y33vHYoYOHjsLhsKGstAydOrbCZ5+8JRNCuRB6Pr8Qgnz73YJPP/1s5vUHDh+B1+uFRBEAVwpwLigEBrw95dMBw4f1x+OP3JWZkpxwqCq0c8YYE0LYjh2/XTlz9pJ3V6/dnHj2bDZKS0vBGAv0vwABqUcp7eZ0Oiak1UpB3z7dC8dfNeo6I6ngnwTSl805vUQI+DjQ2iVwX1MKaAA4ASwCTeM0fHUW6BZPcUMzC+CLlC4iAEINfMcJIBhAqB5gITSoRpEAZCXOCgxMIvjynIAt4Ec0CaKg6VxdKVYOZ3BBzlSqmaEUZjObMVEO7FpUUpqxY+dviIuNAQhQVFiMJUtW3Tru8pG3CSGoJEnqjzMXvvf0c29PKCouRkyMAw6HKxixJgFfJ+ccPy9agd/2HVz5xSdvDcrMbPSLwWBhmC77DhxBVtZpWG0WCK4LwJLSUsTGuio0lXyq6srPzwfTVBAA+QWF2L1335jBg/o8z7mQFUXy/DBz4Qcv/GfqbTl5eXA5bUiIdwaDFMEAP9HNvsOHj+KWCQ8//vRT93WZcMvVgyIXUX5+YYNdu/chIS4GnHPIsgyH3QbGWShOL3QM3KnT53Di5KnwPMnQwoPH442vSiTYcFPIsoTCwmLUyUjf1qFdS/y8dLUO9OccdrsdBw8ew5p1m+8dOKD3SxUFQ4z+njv/lzc0poEQGwQV8Hq8aNq0Ibpd1GH6m299dLeBO41MDq2oFOQX1d++Yw8S4mPBuC4AKQjc7jKUlrlTK7qvuLQE+fl58Hrt8Pv92LlzD86ezW5Vu3baLkIoy8srbPToE6/9Pv/nFbBaJNhtVjjsLhjwMGNDIQTQGMdX38zCrt37Dn46/bWu9epmbK5MEzTGNjevoMlrkz7c89OsxdayMjdsNgtkhSIuzgVCjVClgBB6fEBjDFmnzuDjT7+J/+GnBXOvuWr0yYkP3tbWbrMVciEkSgj7BwjAkKAQIHBIFHvcBLftZmhqJQDj8AiBTSUSkiwSFudxPLxNRYIEqIyDB/QjCuiR4IDvmYKAEYEeyTL6p+sRVWKK+nEhQChBcyci4mkkBGtAOA6xqj7wP4onFUIQt9uTaDZ9jQdzLmC32+FwOPLNtcmS7HU6HXA4bDq6nxIcPZ6FMrcnyemw582as2Tyvx98YYLdYUVCQiw0TTWZ/dAXQ6AkJ8XjxMnTePTJV5Z+88XUGItFKTPrxg6HHS6XHRarFUJwEELBBYPNZqvUhyTLCmRFV/qtVguOHctqb/ilPvn0h9lPPfvWaLvDiqREfXHygMZDiK6tmZUdu8MKG7fguRfeHpheK+XNQGQ1mOeraczm8/rgt+lCT+McDimETdED7PrzOWNQVc00jiGQvMY0MM6V82r/wiQHqd6fdoe9cOjQ/h/OW7jiNmIC9quqhtlzFr84cEDvl6Id+SCEIJRSlp2T12zl6o2S3WYF15lD4PX60K9XlxNJSQlH3B6vCcxnQLjOs+Bk2etyOuB0OYJwGkoICCWQZLlC/7REJQMzCUmyo7TMjeMnTnVLT6+1Oze3oMkNNz98cNv2XUhMigfAwRkH5zr2FgAE4+Cm5ZSSnIDf9h3Enfc9uen7L6cl2e22gmiamdEXBw4eHXzXPU8t3vvbIcTFuZCQoONjQQC3xw2fz6//W+iYWqvVArvNBslmgc1uBWMMU96dUXf/wd8L3pvynzrVgSL9DRpggK0l0BYJFPPzKDTB9UHlAlYK2CUBN5MwJQtQOYedADbKwQCUMgJmAnRJBPAzgqbZKnbVssNmEEoLEcwgIgKwEWHE04CI3BIRRPnSqmtzUVlaqy4ZA1EysX//4aGCi5DaF3D2aUxDeq0U6H4NQQxNQQhBOeeGKQtFlnHs2EkcP36yW1xc3Kmnnn7zXrvdCgDIyc0DIQSUAJwJyIqBPdTrUjUVCfGx2LhpGxYvWfnsqJGDH9I0zSrLsk/vQr0OwTm44CBUF8w6xKTCF9N/FwJMCCiKgt17DgAANmzccdtzL0we7XLZQSQgr7AQjDHIVIIQuuBzOh1QFCnQRh0DSgmB1apg0pvv3d+3d9c34+PjshhjFACaZzZadNMN4wY47DYfpUTLyc13rly9CZSaNxQKv8+Pzh3bIrNpwzJN02xBgRQYb8aZkpyUcNiIKlY27uahp4TC6/HG9evTbVJaasptZV43JErBuIDd4cDqtZtx6tTZ9hkZaTsjtR9DK1zw84qXT5/JRmysjv1jjMFms2LkiEETOReyoVUJgaqhFPStnXKuMy5xrqsPnAKcM5h9phF7O9XHQVccKCHweH04eOjIoO7dOn34xNNvHNy67VekpiahtKwMZR43KKG6g5NzKIoMl8sRRHUIAaiaiviEWGzZshMfz/hm7j133tQrMkPG6JesU2c73nL7Y4uPHj+BxKQ4qKoKwQk0TUOZ240mjeujebPGqF+v7glKiZaVdabRgYNHcOjQUVisFsiKDpdLSU3EL8vW4N4Hnsn68N1XYgLBoCr7BM2R8D9LcMqEEK4r4SQs2S1WChdIEIBfAA5J4I50hmRJYHkxxWEPgV0SuCqWIUEi8HBdIhBCQQlHl2QFVopwDVCHPQAC8HIjDY0gPN1OVE+fI+VxMCQMf1YxzCIA0wBj3KIosic3t6DJwsWr6tod9qBQQuCdNFVDZmaj/MAEoeVVUL1yKksoKi7GvgOHhu/d+/vI7Lw8OJ122G0W3Hbzlbkd2rf+VlFkT0FBcf2VqzaMW75iPWx2S8CXLgL1Eixbse7BUSMHP2Qs/iioiwtyD1gsCrKzc7Bv/+Fhr7/xwQcCAkww+Mt8GHxxLwwc0OvbhIS4416vN27fviPD58xdUi83Lw82hzXow2NCwG634fcjxzH/519evWb8ZVcbvd6/f4/X+/fv8bpR79Ztu65dumz951arHGyHRCnK3B5cMmzAvJtvvGrUhUZCI7PKBfQsHo/XG5+SknioZ49OmD1vKeLiXWAag6LIyMnJx9z5S9644/brLjaivWb3h6Zq9vk/rxgjyTSQb03gLvOgQ/uWaN0qc05RUUkGpVIIulVNR3NwmyemAI6oyjTX72GM4cTJU12Wr9zw8Nx5S5GckoC8ggJkpKfi1kv/dbhF8yY/K7LsycsvbPzL8vWXr1q1AXaHNQTbAcCZ7hL48acFPW+64aokp8OeZ2hlQvd2cE1j1ieffnPb4d+PICExHn7VD0opfD4v7DYbnnxs4qzLxgy/K5LFpsztSZq/YPmrr7z67s1FpSVQLDJUTUVSUjwWLlyOj2d8O/fO268bEAiMsKp125+vLYZMYBKAwwS6mUVASiQCeDTgnVYCIzIkgAG3lfnRYj3FXfUlTGwuAd7ATZToPj+qh1Z1fAwJFxBCh0fsLqWQCA2aD5EAaN1vQc9vXojyfxuofEIpJ4QIAyMXZQExPVJMPcXFJelPPffGoZMnz8AV6wBjWpjQlhUZfXp3nRx4NI26Gomev+xyOfHBB1/emZ9fAkWRUKd2KqZOfv6Kdm1b/mi+5bprxv7rldfe2z/tg8+b2Z12cM7AOYfFasW2HXtQUlpWy4ikmQMEQX7Fcpk8UbuHhDYYfUELAE8//drPe387DCoT2KwKpr71zPNDh/R/JvL+q64c1W/CnY+v+P3ocVhselZNwCcJQiUs+WXN+GvGj73GhBkkXAhZcJ2AssztSSZBqJMImcGEwOP1xzPGlUAucDkzkFDKqyJjzAAAoX+oEIKMGD7glfk/r3g0iNMXHLKiYNHilQNuvWm8XZJlb6S/a9eeA2N27t4XxP5JEoXf78OQQX3XyLLs0xizksik46ruQGZfZ/BvUoW9Xk+3EgJwuZxYuWJdvZXLN77qcNqQX1CAS0cOwrNP39+yVmrKPvNd1197Od5774tlr77x3gCbwxpKFxUCVqsNx46dwsZN2269uH+vV4zgD2dcliSqLlux/tFlK9chPuC2IYRA1TRYFAXvT33pgb59ur1lhsYY/lOnw573rysuuaVunbStN9468T3OGQghYIwjJsaFDz/6qv+oEYM61slI314VU5gxpgSCdUIIQWRZ9v0ZsBoqQKjZDI6EFYhghI1AkgiW5wO784A9eRw/nCVQqIwNhcDmbGB/MfBrnsCqswLbc1WoqgDTysOz9InPke8DVhZSOGUaCICQ4OLWsaykmh49UW4VEEpQWlIae/pMdtsTWae7nDp9tr35c/r0ubYnT57uvH3HnvEfffLt/H+Nv/v0gp9XwBXrBA9ivvSskrKyMrRo1hh9e3d7EwCoFAmmDS1wIQRkWcHh308iv7AQsTEOvDf1xUvbtW35o6Yxqz6gXNE0zQoAD9x/S8fmzZrA6/HpZAxCQKIUBYXFyMvLbxQuyMK1XUKqECWPbCMhYExgy449YFyDokj4cNordwwd0v8ZxrhitI8xpqiqam/SuP7KZ5/69z2Ri5VzAVlRcPzEKXg8vjhjghJChESpqkM7qEoJ1cJOICQmsUwJlyT9WgMjaf5ULvxEWPTX/L2x8fXp3eXtxo3qw+f1B6PZDocdu/bsx6YtO27UYUzhfsbZc5e+7fF4Aj40AlXVkJqaghHDBzyim9hEExWh/8T5uz90WbkvKtb9TCa3xWLBsRNncPzUaXh9Hgwf0g9T3n7BVis1ZZ8+v3hwfgkhyB13XHvxoIv7oKTUAypJIeWAAF6/iv0Hfh9qboSxkX319exn9YQHfU4TAnjcZbj/3luW9+3T7S1V1eyGn1CSqBoYRyaEIKqq2Xt07/T+leNGnisr84BSCgEBxWrFmbPZmLdg6euGy6EyzCEALF665tkBQ68pGzn2FvfQEdeW7dl7YLT59z8eBY4wdw1skuE85gJwUILvzimYnc1BBYGbS4iRgW0lBGO3c1iIgJ8JcAEUqgwTGnC82d4B7ocOdg7UoTEORRH49LRAtqYgyULBzKYMEcGBrrIQjAKD4ZzD5XRi6S9rsGr1xl+54GFkXILoviIhBEpLy+D1+qEoMhxOKzjTQguLEAjBoTEND95/23+sVktpOeiAiNw+RCAH1Yq8/ALcdsv4A61bNZtj+PJMexAYY4pFUdw9e3Q6tWvP/gybzRKsW9NUqKpmR9joiGq7CEhk+rPQ3RJ2ux15BQV45ME7dvbo3ul9TdOskiT7zdhzSZJUzrnUq2fnd7tc1H7K+k1b4XTYwAI+R1mScS47D8eOn+zeonnThQE/Kov0fYUbcoHQl251/IH85ZDzphwIPuCfjYlxnRs4oOexqe9/3sBmt4BpDIQS+Lwq5s5fMqlnj4umEQJuLOSiopKMZSvXp9isSiD4QVBa6kbfPl1gZBRVqrGQagTrSFXvEyYFUoBzQFYU+FUVqanJePH5h1vLsuRjjCnh5BL6/KKUalddOeqRJcvWvmp2FQvoPsXfjxzra/hZjbl99NjJnjt3/Qa7XSeAIITA71dRt05tjLt8xK2qqtl14EJ0AWYIwQH9erw644sf3zQ2QME5LIoVS39ZO+C2m69WKJW0Sl6bAmAlJe5av/12EDEuPQru8/li/gwTmIZvS0bAgZr+H9DKAoIwVgYsAfqeeIXCLyQAFKlWgjiZItFCkWqjaOSkSLIGhFhg92AaB1M1KIqG1TkMU05KiFNkXfsjJFQfaERQpFrrIWymUQKoqh/FpSUoK3WjpLQMpWVlKCkrQ2lpGYpLSlFa5oasyIiNc+p+uADbh05VpOfb5uXn4967bjw8bEj/pyrCTYkgvCPos4DP70NSUjyuHDfqxsAC0yqaLHXr1N5KIkwqqvc9D5OzImJhBDVrcl5BEQqIBHZ/rxe101Jx3dWXjTPaFy3xRghQECJaNG98RlVZ0PFlAIxLS8tw7lxOS8PnWvFCDvFCCrMP9sJj9hG7T/Q+GDG8/yMxLhc41zd1LjhsDhtWrtpgz83Na0IpZQYZwZJf1jx9/HgWrBZLwFzU+2r0yMFvlYs8VzOPWQ9oRGPDrJrfMHLvKysrw78uH3EwLS1lb0VEqkaGTcsWTRYkJydA1bRgfr0QAKEUZ8/mGHOWG+O3Y8feK3Nz8yFLUgAEDvi8PrRo3gRJSQlHFEX2yLLskyRJjfaxWBS3osieTp3afJmamgTVrwawnXoQ7tjxLGTn5DbXDZ5KJy80TbOqqgpV0+DX1HJaY8DHT6LhFw1LJpq2KBMCTggNqNc0LPWWGNkhJsC6CfAOv6BwSgKvNuXoGhfYx3XHC6wKhdMqA34Nkh4nhUT0KOTMLODRwxIIVXQNjJByu6Fed2ChVMXEE+WBscYtlFBQIkUJrwSYawICgQUcnzqmiYJzjuKSUlBK8ejEu3ZPvP/2dgYz9PnWogjAAdzuMvTo1gkN6tfZYGgYFZg3IiEh/rgsyaBU3wg0zkElGRaL4q7I1xVuDYvKOyjyWFNKUebx4NLRQ5CSkngeQKx+b3Jy4mEhRDqM8RFBUwUery/+/AtZmEDuQeagP8RgE574Jsp9yTmX2rZtPrNtm+bYvG0nHA4bOGewWBWcOn0Oi5eueubqq8Zea+Qk/7xo5W1GsIAQAp/XhwYN6qJvr65vRgNgV8cFGLXxtJrBvoAxxRiD0+nAsCH9ntIXf+XPiIlxnY1xuZCbrws1sxHu9frLBRpOnTrbwTB/DZ+hHjzLxUcffzPfr/odweuFwcET3lBKKfP7VacIQGYCdGF6QkFhMU6fPtc2Pa3W7mhWg9kU796t/YdffPpGnqLIHk3TrI0a1l9tRgZEauQGdlaP7pNy2VTG9bKZqdkMNQl+BRL0FZhtKQlAkV/gwaYclzRQAE8wDwk+TQBMwOdmkAEwLlCgCfzmAT4/Q7GoUIZdlmChFDxApVVlH0pVdkph5ikMLAnOwzQ1PetFRMBEdNiA369CVTU4nHZ079YR991147/79O46We+4auRPEgLGNGQ2bXhSCJDzMZAIzmleXiH8auiS2rXTkJgQfzSqPCOIgGBUXVCYJgNatWy6IHRaWeV5nQ67PT887zb0bMOfWZ0AwJ8X14sIJBARFKyMMYuiKJ4Rw/vP2rBp+xgSRpRL8fOiFddcOW70TbIs+Q4c+H3w5i07YbdbwQLYP7fHi/59uxfGx8dmGamSF4CwqngsRKT/umIT2HyRpmpITklA3bq1t+q51NDOg0H0WSyKntFi3rCJDmmJDEacOZvdRogQFEww3fd48NAxPP3cpEtEhGke+UokJMTgdDmhyPqRBUQQUInC52MoKSlLM5u6FUV+GzaouzajdvoOI0XWwMYSQgRjTCkt9aQSAm4w6hiwpqPHsnoePHR0oKaptgb166xv1TJzntlPHcgFphFBEBJMxRXE4FcWQc2GQE8SiZEY+iZRcL++Ggu8Kq7c6kYBs8IiAXYCWAngExTnNIJCJoERilirjp7nARS8COswUf70JIQfJlep6RthkogAR5zhkyMhNBTM9MESpbBYFMTEulCvbm20bdPixKCLe73QrWvHj8yYqKq0QZjtRkpRv17Gpsr4HIxdrH79jI0PPzThsoz01B2xsTFnUlITD9bJqLXd5XLmhE1OEcJzRcI/Ko0CR6wxI9CSlJTwe1WFOqVUE1EyZIQQlTqzK9JPRUXR9AsUgSJKtIEQygFgyMDez0+eMmNMiacUEiVgnMNut2Hnzr04dPjoxc0yGy9esWrjxILCIsTG6ZAZzjicDjtGjxz0gAENCe9vUV5QiQtt/fl+FkG+Qx2TypCcmIAYV9VotAghOmg0SpWMcwjOZWLaoLkQkjCZVmYvpMVqKXeQWWh+iXKD7PP6Te4CPahYWuZGmduTXHn0V08LXLFq48Q77nnqVZvNCkoFvvty6qDMpo1+AYCDh44OvPm2x352u914561n/t2nd5fJR49l9Zz01idrl/yyBm63GwQCFkVCjx6d8cKzD/Rq2KDuOiEEkU2hxHCKWrMVSUx9D91k9HMgxUKQYSOgDIAkcNIrsNMtw2FRQBjVU2ICGp5CCVyyQakFmCEZkUGYEE0mCbLEXMgOK1GK0tIyDBnYGw/ef+ulqqrZKSGa2R9DQDgIIMuSz2G358fGxZxJSkw4EhmJqlLIXYRjcITgkCiFK8aVXdkkNwRrp45tvurUsc1XF7JequSKikJySymB1WItraoeQwgR5d0N4ry+vKCZW47qp3LRzThXAu2smCkmCkieRJhRnHOpdkatnb17XYQf5yxCfKwDGmOB3O4S7P3t4MjmzZos2rBp+0BKA9g/QuB2e9G+XXN0bN/mawIIQ5iG10NCmyqpApyFVF99DD93O5Q/brPbTaQbpCo6ckhGm9Q0wzStSPk0srUY05AQF4eUlERwxsNgQKJKr2UwsEtwe9xwOR3ZVZnujDFLcUkJfH6vntctODX5B205ubnIyc7G0WMnerVo0fTnsePuWrv/wGHUyagFiyJB01QoFhkLF61AQWHh2u+/npbssNvy5fDJE03QRLKzBEw7AbhkwCULcK5nNeSrgExl2CUJgtAwR68geq4vKZepYYpPmvkIic53QiqZ5FUxL5imITExnrdu1XxOdQSomSCg2ngjYWaxIajqORfGyWPhvsHyNEJB06Na9qMoZ3cZEXZC6YX54MpRj1XuyyMgiJpcXUmRKFUjIREVjUc5KCgJ61sKgA0f2u8/c+b98iQ3zTkhBLZs2Xn94IF9nt+//3f9dDnGQSUJfr8fw4f1X2FEWMOCWAE+zBDIn1RtJxLhikX1MYSh+UUovYCcd2E6fVGEfLMRQamkhPgjBGhj/EwpQUmxB8MG98PUyS/IqqraCaWswsi2CMW8hAixwVBCBAjhEILSAO6zMlq1QDBQk2UKWZYgS+H8AISAyzKFw2nHlm07Ll+8dO3lpWWl+PLTSdNatmw6v7CopO67733+warVG5GWnowtW3Zg/vylr/5r3Khb5JD5QcLOlhDR8fWBCgX8AkizCEiEQOUCVBDk+gG/kAK5qUbwIhwtJUSk4AtBTUiUPDZxAQ4WglB0ThACjXGqk3FyuXIiTF3g6LRCF3YsoQiPSoRx3lVFu6pKvWGeWlFVQvnw9BjjtuqfRRElGhlyXtCK/U+SL/LIN3Ee7Y8zrnz6+Q8zU1OT93e9qP3HqalJByrxfZRnEjeZq8a49+3d5e1GDes+eezESVituj9MVhTs23/YuXjJymfPnssOgp9VTUVqSiKGDur3jNlVUZGaIyo6dev8CmvVpaA57xnkAmyjSEFIw807U1Pq1qm9FYK0MQ+3rCg4fjwLXIBagpZDNWsNRGurk9khAMq5ADiPeuyXxhicLifmz18OSVLw0w8fXNGubYtgwkHzzEaLBl9y7fH8wiJQScK6jdtu/te4UbdQs7ZS+WZETGAZAhVAc2doDQoBbC9kwZQ2M8GCeajM/w09l5oORjKdKUJCKXJVTwNAOVgsIbrWUBHQNvQh7I+k24iofi/y1x12I6rLAEFCGz0hEceVXsBbknDVpLL3dDkdOZIkhTnNTXOBmyEMxt8ejy9+6ntfjbzptkcnXjLmlv3X3viAWLh45QsBn6xcXgSWd5mZNxfOueRw2vMu7t/jhM+vwjB1rVYLfj92EpOnfjLBarVAcA4q6RRjXS5qh0YN662pMIIvEGlEVbELq28HC1I+wHChUfTyfgxRLvLaunXmnLi4WDDOA1hYAZvdhsO/H8OhQ0cuDpAMK3p+uoj6CSge0pkzOW0+/3LWd7m5+U0IIaL660yEzbSoxg0hcHt9uOKKS8ratW3xo6qqds65pGnMmpAQd6JL53bweHyQZQXnsnMBCJNHlIQLqOg+wdD3FEBjF9VzVoUAYRq2lwAWA2Vu8joEo26BYEuYEAwdiaULjOAOR6JHdqvsQxZhbtu/uujajwhO1LDAzl923CGJCBpVfdqHafqiunVGc0xVHuBJSIg77nTqhA8kCHvSRzk7O7d54FQvWQhBGOMWIQQ5ePjoxaVlZUhMjENBfiFm/rQAmzZvvzng/6LmYE41VC2MGT3oXqfDEVjYet6w36/izNlsUCKC3I8ACWL/zAK3nBVb7ngTUcWljGonOlU7eBLldlEuCEXKjZkQIK1bZ85t3TITPo8/cOQqIEsSSko8+GD6VwuD521wTg2hZv4EghgWSin77IuffrjvwRfGjRx726Ennn6jYPuOPeP9ftVRjb2emjOtor5cgBquR/eO73MhJEPhCWAbSVJyUg7nehzI7XaDc0GpgJ6WG6Y5kYijMY3MEFNnUyLhcBkHFRosih+rszUc8FrgCKa1BbCFAYAzITQ8zQ0I4vtCfkEROlkuzJQhVaYcD0f5/XcOWiXlzjH5C+VfMHOnOnv/H+mbChaujgus0AROSko4kpKUAE1joTkQyERZvWZzelmZO0lRZI9O2yX5CCFi+ifffON2lwEQkGSKxMR4dOvacXp5zz6J2B9JVNSAnqIF0qJFk587tW8Fj9un+9ACIXJZloMC2ufzo17d2ujXt9sbZq0oclWGwO9RIgsXsKdUXYgRVEHWRr2fmNVJRM8j133RRFw2dugXGmMBbKoeLXbFOPHT7EX4cPpXCyVJCqa+Gel3el63kAghQlFkz5Kla57+5LPvm6WmJuLsuRx88tkP8YOHX/PVdz/M/TggJJWQ791Iw2RKGPsLwEN5MNGUD/0XiyIjIS72OCWEhcH6dKHMjQiQMV9opMiIOjIROj4TQJxC8PlZBU/sl/HCQQm3H7SBUItOfW+ckUlQLpIrIgQFicbkTEITOxRRreYwE1Fd78oflUU8XMQYJ8qRv1D4ieqLLkL+WL8QVGvhGee12u22wlYtM/VsABoSgDabFYd+P44HH/5P7p69B0YXFhTVO348q+uzz791+uefV8DlckJwAa/Xh4w66ejapePHZp9e5JuEEcxGaaNx+PrQIX1nMcbDNmQzn53b7cGQQX3OxcXGngo478uH7siFdqIIBbKqEwQhlQUrccFCN1rgk1KiCSHImDFD772oUzuUlHggKXKQjshqteLl16YNffixl72HDh0dYNDxh/KBCcvJyWs6ZeqMtf9+8PnnGNPAOYPVKkNRCFq2bILBA/s8r7sWQpuLfr+eSVLOTBaVT9wgqo0G1ajIiH3AYA11uqwzbYQmAQkhoEN+GiFMR1OKgAksQKiCj3MUQAAuCbCaNhYSoU2GzRiBkBkU5t8g5T29VBeSsbHO3OqEIITJb/i36IGkvHv5L9VADSgjiU4FUJktQUweuGofSRkEIIpyfqmKZqZBNzXuiuH3zpqz6B3z3sYFh8Npx4JFK7By9cbZSYkJ8Lg9yMsrhN1hA+McskxRkl+CO8dcsy8hPvaEEU0MH/ZwSVLRaxmCc+jgPs9MnjpjTElZCWSJBHkOAZ2xxGa3YtjQ/k9WvsUaG62IiDhXNhgmjsnqxLBMWgAJkwUiAOcCq8Y2GPGE8nqV4TO126yFLz7/4Ngrr7nnJ7fbA7vDomvxFLDaLPjym1nWRUtWLWvVIhP162eUxcW6TqmqZj9x8nTdffsO49jxLDiddkgS1SnKPB5YrAremvTMNbVqpewzj+W5czktPvzkm0UA4PV4Yi8bM+yuDu3bfFNB62n0PiqnGbJo/W9cJifGxx4DSDPd1BTR/SYkhHYyME9G+lpSQHllAiGGY4EwwRc2R8PQ+maV3GxuizAkCUDQoF7GhvPr9oa5HMgoDjCl/G2Gr3FAPDF7QP8CFdRggDGgQobSTKqAAyPhPt0L6x8R9IiEIskVL3zjfIuePTpPGzqk3ztz5/+ClJR4qJoakKccLqcu7M6ePQdKdUiDIfzyC4rQsX0r3HbTVUMDgHAezSInAdSBwbshosQLjSyA9PTU3TpP4BLExNhBmJ4XRCWK0lI32rdric4d236hs6lFOaY0eFJN6ETFipAM0VwkQT+4MUfPNwwiVJcgImyeXZDVTUjgOSQKm5AIaIGUcc6lNq2bzXrnzWceu++B514uLC5GTIxTxw0KjvhYFzxuD9au34yVqzUngEwI/axjq9WC2LhA/jUlKCkthcNuxZS3nn++U4c2Xxm5ywYnYFFxScZ7H3xZz6/6UVbmRrt2Lft17ND2a1OHIxoqmIBwYp7gogLFiBBugMiNZ9AO7Zp/Y1HkMCMiOEAkwMZCSIB2jpTT6pgANBEuvwSJBoo0BTuIyZQKHMQUTi0eaqTgAopVQeuWTeecT9ERTKcCF4wFOfU4Y9VOWL/AgKzO9BugItcZfwNtgJD+vIr0rD7OWIC2nunM0JxX/p46DivYLuMerjMN06q/pyCMcbBAX+vvqz/zfNokpZS9+MLElhd1boecnAJAUMhUhhSIxlJKAgzCMgTRj1zNzslDZpMGeH/qS/0T4uNO6ITIEbTtJoZlnSVb6CDdCppjYC3HjBr8BLjOyq0zbOu7uN/vx4hLLl4uy5Kv4uwWotcVNt6B/uSVkUGYx8E8HqwS20432xhn+hyPqLc6JWxdBJ5j9F80c4ZSyhjnysUDer7y/Tfvjuh+UUcUF5WirNSDgMcAikVGTIwTiYlxSEyIQ0JiLOLiYmC1WcG5gNfnQ25ePho3rItvPp9y3dDB/Z7hnEuRkC9JompcnAvxsS7Ex8fColjcYX1gnmvhDgXKgn3CKpm7nBpzFgFKHNq7d+cpzTMbw+vxg0o0xFJLTGZqUGugAYEYYooxWFuE6W9DSIqA4NTBdaHAhzBFk4MH7ZDyaUxGsn6zzAZo27rpTCEEoSTiLN6AnS8gqCRJOlBSliFLMmRZhqLIul/ybyiyHKhTkqDIEhRZP8MBf6oA1tPXFEXR3zH4nhIorVr79Hv0NsqyFIaXO7/mAKHIMmRJMn3055JKkNmG5lUrNWnf55++0fj6ay5TKaUoKCxBQWEJikvdKCkpQ3FxaYADsRAQAtdedSl+/Ob9lk0aN1ipR/aiJrZDkiRIlIJSCZIkQZFphZulYQZ37dLu4xbNm8Dn9UEiFJRQMMaQmpKIYYP6PmmOYkfbCCihoJJO6Gv0hSJJpnuiN6B830mQJLnSlEBKCBRZ1t/NNH4SJVE13YqKRGmwXslogywFgxwV3KNyzqWWLZou+PbrqZbJbzzzfvdunUBBkV9Qgtz8QhQUFqOwsARFxaUoKipBfkEhcvMKUFJahlqpyXj4gQl75878uG7nTu2+qJBNSYCA6/KAQkAIHtaBiiwH531kKFt/D/23irwKOphagSIrkCQZgKBECIHvZy798J77X7w1OSUeGtPK08tHhT6I8s71clltpJwJJkSk6h6k6TUYJYJscZRS5OTl48N3np522aiL76osJa20tCzl1OmzHYzT3IwaOedybIzrTHp6rd1/pfArKirOOHs2p5VOkhpef61aKb/Fx8Vm/Rn1aIxZjx/P6mZkqiDE1CHbbdbCenXqbIkGm8zPL2iQnZPfXD8YPrx96empu2NjwinNKyoFhUX1zp3LbVn+OUxOS6u1Ny425tT5NEhDgzt06OiApcvWPrn/wOH+Obn5KC0tg0VRkJyUgMZNGuwdPrT/E61bNZsT0NoqPH/42LGTPRhjSliARwhar27tzXa7vbCy9pw5c65NYVFxHV0bERBcUMWieBo2qLe2MqyapmnWY8ezunPOZXOaH2PMkpgYfzQ1JflAtPvyCwob5GTnZlJJ0sy2K+dcTk9L3R1JLW+8+/HjWd1UTbOHUaNxTq1Wa0m9ehmbq4KrE0KQ4yeyuvl9qjN4PnSgbqvVUlK/Xp2NlT0ncgwOHDwyeP36bRMOHPp9cF5egTM/vxBenw92mxUJ8fFIr10rp3vXDh/06N7p/bi42FOVjSMA+Hw+14kTp7oIAioYp7XSUn6Lj4vLAoCSktJap8+ca0cp1SAE6tXN2Gq1WYsBwOPxxp/MOt3ZODM5IyNth9PpzIt8fnZ2brOCwqL6hBBusShl9evV2UgYY5IQoHff/5J/5uylSE1NhBY84xPnTbMRwbgIKY+Er5CjTYQdhRC8SgiIAHyGUoIz2bm4fvxITH5lIqnOAc415Z9ddJAsaHltjkuElD8I3tAg/wK3BSEEomZEqjd2Om1+9NS1ijcqrlSaz/1fKoRzTgghoqzMk3Tvg6/kzl2wEnHxLlisFhjU7oKYHY/lwSxAFHJwEhHYQPnbg3n1EZgkr8+P4pISjBszCG+/MjHOalFKzrcIhAAxg2MjzK+//DR6E53UX14/50KKmndSST1/Vvv+7OcEeOC4+dwPzoUkBKdGLvaF9kdV7o3+PgTRNtvIU8mqOw7G/RfSfxcy5qE6iYkVTj+7I9LtcSFzVH+WoAEOTW4+55cLIRm+0OoIPjNpqblNkeMUObbh91EendQ39Azj2USP5uhmCWNMeffD71d9/tWc7idPZ4NSnbcrZLIaoGVhiuaGp9KFIqJh8Zfww3XL2dMEPMDFxwVQL6MWbr3h0l9uv2HsYDN3V83+W1P+fo1H53GMXMTRNKFoZA1/pQZbFeEe2eaadRSxgQRJA0ydcy47v8XiX9Y+u/u3w2POns1T/Ko/qjecGNQ8JDIObxKA0dKEzCfOBa5TFAXpaSlq29aZM4cN7P5UclL84ZpBqyn/bXPPPPfK3O4kn88fY7Naix0Oe35F11ZkWheXlKYrsuyx222Ff9c7qKpmZ4wptoC/TPeZeeKtVmvJn3Gq2v83AvB8NvzfXf4p7agpf3wMly7b8OQ70756wem0QgQOpiKEQPWrSE1NxKRXHklyOOz5/6TNLng+rgCZOWvptNlzl084deYsvB4PHA4bGjasi8vHDHm+f7+ur1sUuYwQIn7dfeByVdXsnTu2+sK4/8ixU71fen366lOnzkCWJLz8wgOXtmrReK7GmE2RZc8f9blV1O7snPxmTz737v69vx3C9VePWHTbzeOGffHNgm++/Gb+lTabjI+mPZeZkpx46J/Q58F3pFTD3+yTlaP5TUK8dAR/l+PS6ATDZ1Aj/P6/MB8pAHYuO7/F6nXbEBfrgMfj0w/lIRR+nw8NG2SAMab8EzW/ouKSjPsfei1r0ZJ1oBTw+v1BvOWOXQcw7+dVT3814zXfwP7dXtq6/bdrr7pu4udenxsfv/+fhoMv7vk8Y0x57sX3Vn//00K0bZ2Jz6a/OKx5ZqNFAGAIv/Nt9HqKGVGrqhQE/HusuLg0ffnKTTibfQ4lZQPSAGDXnoOXrVqzGc1bNPxnaWHVfMe/VACGGnRhfHh/RifUlP+/iqLInpgYJ+x2G5o0qoek5HgwzqGqKmqnpYBKksYYVwQEpYRqRgDCSJI3b8Ihx7vuajFrRmb2aP1sLk4ppRoXQg5kcAaDKkYwINoGLwCqaZrlgYmvZS1YuApx8THgnGNAv66oU6dWsdenxu7eewjbd+6F3WYtBIDCwpK6efnFcHtKcPZsbishBDl6/HTPX3fvQ1ysC9eNH7WqeWajRYxz5dixrB7TPv5++dEjWfSOW/711IB+XV8FwklBjUN9fjtwZMT0T3+am3XiDO6/77q7unVpOx0idK3eR+ZMBxJUZFwuBxwlduiQJcBhs+bHxDhq2axKmMDknFPzM84ngIwglcndxSvqS3PRxye8rYSAHz2W1eu96d8tO3I0S7n95iueubh/95eN/ggpRtHbZ/weONyNc84DfxNuVqiMWILxndF/cs3yrCl/uSks9AlcUlKKu5+/d+rY0YPvqcp9kWafiZMv6gI1s0cTAgZIDAAkQqIdFRn1OcYZFHN/Xv3yz4tXIyExFharBW++MvGJgQO6v2RcV1JSVuuHWUs+SE9L2Q0AAwd0fenzj1+M9ft9zjGjBt5raJBFJWUgFKhbJ22r0cYz5/LafDRjFgXXcMsNl9kliaqCh2cLCSEopZQdO36mx/RPZ8JukXD/fdcFQMlCCh4+H9FHukAkDBCBrA8WpPLigkuc8TAygGinpp1P+On3SJH3nE8zJebxMdpDCBXnsvNbfPTZbEUwFTdeN8ZhCL7QOxK1In9r5O/m/oi8L9qzagRgTfk7jEoIIaAoMnbtOXRZUlLiEU3TrIxxy0UdW81gnFu27fjtakoJa1Cv9vomjeuv8Kuac/OWXTeWlbmT27ZpNrN2euouQojYtefg2B07913l83pdTTMbLu/fp8vrAOB2exK3bd97tdvjTexyUdtP8/KLGq1Zu+Xefn26vHEy60xnr9cXl56WurtN68xZALBr94GxWafOdWrapN6ypk0aLDcWlcFMMmvusvtkRUaZx4unHpvw5cAB3V8yBzdiYpznbrpuzKXGG5a5PUkZ6ck7s06d63jg4NEhGbVTd6zfsO0OQgBFkrFrz4HLUlOT9qckxx/6dfe+y5MS48A0DXt+OzQ6Pt51sm3rZjNdTkeOaYHzU6fPtd+z98Do1JR4UAJs37l3vCwRX+tWmbOdDnseAKxet+2+gwePDqKUah3at/y2Q7vm3wb5LiJJIkSILV3flABNY9ZFS9c9d+JEVpeEhLgTnTu2/rxxo7qromdqCEIpYSdOnu2yas3m+z0eT3yjhnXXpCQnHszOyW3esX2rr5OSEo5E8ysSArFyzdYH9+87NNThsOe3a9vih1Ytm8zLLchrsn3nnvHJSXFQVRV79x0elZQYd6RVyybzYmNcZ1RVs69YvWXi8eNZXS0Wxd2ubfMf2rdt/r1Rx/ETp7vu3//70MTE+GMd2rf8dt7PK1+z2yyFjRrWXXP0WFZPiyK7O3Vq/WVsjOtMUVFJxtbte68FgG5d2013Oux5gaTmmk/N58//aBpThBD4+rufZ6Q17CuatRsuGrQYJOpmXizqNxskkur0EEuXrX+8oLC4TvuuV4jY1C5i9OV3CSEEFi1d/0xCWk/Rov1IceRYVk9N05TnXnz/RJ3GA4U1toOwxLQT8WndxB33vSBUVbOePHmmY/O2I0VqnV7i/odeFd36jhcZDfuJHb/uGzd01AThSOwkho66TQghkJdX2KBjjytFfFpPsXT5hseFEND0g7OJEAI+n88xcNitIqNxf9Gh+2XizJnsVowx6dTps22f/c+UrGeen3L6meennH7sqTeKXpn04W+cMWnTlt031mrQW1hi24gfZy1+d/W6bfc4EjuIZu0uEZltLxFJdXqKupmDxEOPve5PSO8imrQZJpq0GS4SM7qLWg17i9+PnOitn03NJU3TFCEE3nn367W2uA6iefsRommb4SI+rauomzlAZOfkNy0uLq11w21PiaTavYQltr2wxLYT6Q37iremfr5JCIFDh4/3a9N5jEiq01288c6n24QQePLZKTmJtXuIi3qPE9k5uU1VVbPecd+LIj6tu0hI6ybianUTSRk9xLIVGx82+kQEz8zmkhACCxaufrF1x7EiIb2nsMZ2EMkZPUVm62EitU4PsXzFxonmcdfzl/X7Xp70yf7kOr1FQlo3kVi7h7DEtRNz5i+fNGfe8knW2HaiebtLRGbb4SK5Tg+RUrenOH7idJczZ3Najbr8XpFSt6+wx3cSrqSLRL3MgeKFV94/arRt6ntfr7THdxT9B90gHnzkdc0e31Hcdd/zYva8FW8m1u4lkmp3F59+MetHIQQ++nTWXCWusxhx2T3C4/HGcs7/piTZmvK/XUzsZowxaJoGVVOhMQaP1xsfHxeTdd01o7e6HA7s2nMAa9dvv/vHWUue9ao+XHv1qIMN62es++CjHxe/+fandVOT4zHplQfXzPjoxc+6dmmHz7+ajVlzf3knJsZ5TrEoiIt3YeacpThw6CioRJFWK3nv8CF91rmcThw5chLHT5zuunHz7lsPHj6Giy/uiov7dX1ZCBFmnqkqs2saC/IVWm2WEkopK8gvrv/eh99nTHnvy/T3P/4+/b3p38d++c28FgI6mNthtyMpOQGEEF6/bvqmkcP7gWkMfr+K/n264OYbLj3Vp2fHt0cM7QumMWiqioEDuuP2m644Z5xna/ivAKBDu+bfDhvaGz6f3leXDOuDm68fe8putxY+/vTks9/PXITOnVri4/ef+3rKW08sSk5Owmtvftzl0O/HBzjstnyd4KA8xycXAna7rfDg4eMD58xbjrS0JMydOfWedSu+HHXpqIGIj4vJCnj3uFnzO37yTNdHn3z78Zy8PLRq0RjvTn583hVjh8Lr88PhdIDKklZOYySEnT2X2+rrbxc0s1oVfPDuMx9uXf99r1tuvAKKInuaN2u0aPTIAdA0BtWvYkC/rrj9lnG5dru14LGnJu9ZuWoz6mSkYtIrD62447YrfQQEb0/5vMEXX839Ru8vyuPiXDiXk4cvv50nUZnA6/Vj+JBeT7Rs3hiEEGzYuPMyxrgy9+eVIx0OK66/ZtT7Npu1mHMh15jANeXvsIBBKYXX48P4cZeU9e7RcYqqqXbGuGKYM1ddMfSGb75bsOfcuXN44aX3pmSdOoeGDTJw8/VjR5WWulO++nZ+f5tdQf9+F7ERw/s+4vH44vf+9vvIpcvWJW7YtPO2gf27vUgA+Hwq0tKS8fRNt89LT0vZnRAXe3LwoO7PT5v+7eK8vDwsXrrm2e07Dw5lnOHySwd9qicAcMXsG7LarKUOhx2USsjPK8DpM9nt4uNiTxJKeEZ6KlSmgjEOj9eH+PhYICgodPOytMydWq9u+ub77r729iuvm/iB3+/HNVeNeGv0iAEPAEBKSuLBFWu3TWeahpuuHfPskEG9njNA1AHmYsYYV3r17DDV43XHX3/rky8oMsUdt1x1V88eHab9uvvA5T8vXoOkxBiMuqTfij69Ok8uKCiut7jxuqF7ftM3kJHD+z1saGHlBkPoFP9Wi6VUkmV4vT4sXLL2hTGjBt47/d1ng2w7RjBKh+EQdeGitf/Jzs2Dy+XAU4/d/szggT2eT0leMWn2/F8etFjkCkk/FFnxWCxWaIxj5eott6WkJB1889WHY6wWpRQAJt5/w3WXj3/wc7/fj2vHj3p1xLB+j+7ec3DMug074HBaMf5fw3+98/YrBwDA/oNHxfqN2zFn/rLLbrj2UkhUHzevz4cRw/piyKAeH9bJSNumKLKnT+/OhfsOHI7ff/AIFi1d+/zOXfvQulUTDB3U42kjOFKjAdaUv00L9PtV9O7Zecolw/o9dunIQf++7NIhd9Wtk74VANJqJe0dPWLAEZ+f49jJ08jJL8Bllw7MSU1JPHD2bG6rwsJSOJ0OrF6zRRo59s71V9/w8M9r129LvKhza2Q2rf8LF0KmhKCszI0Rw/qeuPmGy0cNH9r3CavNUty4Ud1VbVtlQpJlfP3dgqGr1mxGm5ZNMGxwr6eMhWAIH865JEvU17pVUw/nAm6PD5/MmDWbECJatmiyYMmC6Y1/WfBx83r1asPt9oDp5+nq60jwoAwQQpAytzfZ4EfyeHzxgQg2cbt9iQHINNxub2J4ZDtcgwpdC5S63Smccykr62wnn1+F02HDjC9+6j9s1G2bbpnw1A/5+YXo0a096tervZGpzBrJMyiEoMZZ0B6PN75xozqrHnvo5uUgMt6Y/Fn8oBG3fH7J2Dv5kaNZvY36ze3JzStswhhHfLwLHdo1+8bvVx1utzexwhOAA5HXpKS4I888MeH1pMREfPrFXIy64q5J/YfeWLJl+57rhRCkpNSTZqTDGv2Rm1vYRNP0oHaTJvVWGueH1K5dC1wIlJZ5jCCOxhmHIkt49KGb+18xdujt3bu2/xAAhg/p9YTD4UBOTgFeeX36o263G6Mv6bfb5XTkMM4VQoioEYA15e9RAoWAzWrBvAXLHv3g4+8WT3nvq7VTpn259uMZP8wtLXWnCiHINVddMj41JRmqypCcnIjrxo8eBwCxca4zDrsNbo8Xgwf1yl+19POGm9d+61i55DPyw5dvXXTlFZfc6PerToON12a1FjHGFb9fdTDGFVmSfIMH9pgnBMHZc/nIzSvEpSMHHIyLdZ1iTF8Ike29/poRVzjtTlitVsycs5ROfHySf/feg2OoRLSi4rIMn08FlfQjYCMVLAL9aFVdsJIAA5IO3wh8z4xdgUhUVES5ZZxjYYQxjAN+khITfpclCT6firvvuPr7jau/Tdu87nu6YvEM8vlHr/Tp26vzWx6vL1Y/yIhEU8ghSZLq8/ldN143asz29d/W/+LjVz5s37Y5Vq7ZhE8+mznb0PzM9yUmxh+VJAkFBcXY/uv+8RaL4pYVyae/H41KHUYIEaqq2gf27/LSlrVfJc36bvKzF/ftjj17D2DSW5/MIIQIiQSYhYjeLkIIT09P2W2zWgAh8Ouv+y63WBS31+ePPXb8FAilAc1bP3RJCP3MGMaFhTGmaJpmBYBOHVp+2apFE5S5vTh1OhspKUm4/NJBd5jN+xoTuKb8PQKQCVhcVsxbuAo/zv5lMCUUfr+KpOQ4XDKsX3JMjPNc/Xrpm0YO71f45tTP4u+/++riJo3qrtQ0Zk1NSTwwYni/U2+8MyPjpzm/JPpVbX/ttORfT5/NbffLio3WGR++eFmd2rW2c25Qg/FA5oSAQfs06OJu/3nn3a9GlpSVISXVtBAiFq3Ogiykli0aL3js4VtmPf7U5DFWu4Jvf1iozF2w/Cenwwqv1w/G9TzOwsJiQ8ENsuqHNEKD5S38wCiqZzwYBK6VZmLo1xJwzoN4tjZtMmd1bN96+rKV6zDtw+/GHc86281pt+fuO3Ck44GDx7BozvtJVKJMlGMmDgSHuYDFopTl5BZkXnXjI9uuHjfsl47tm3+dlBh3G+cCDoctLM3P6MPhQ3o9Me2D79bn5OXi+ZemPbtl664bVqza0sBmU1Dm9sDr98dFarCGi2HctQ8XdOnc4sTwwb0er107BRrjcDr1Q+GoRBkCB8wbQjOzaf2lF/fvjs+/noNvfliYIYQ4fSLrbPquPQegSDKuvnLEZH2sdfiQ0JVFbjBMM8YVm81S3K/PRft27t7fQpIEhvXtgoYNMtaZwdY1GmBN+csLZ1xijIFpKmxWC+LjXIiNdSIuzoU4lwuU6CaoEIJcfdXwa+rUro1rrxp5pQEHEUKQh+6/rt3tN49Ty8r8mDrta+tjT7/TZer731pTUxLRqGGdNV6fL5ZpDKrKw04Zo4QwIQSpVzd9c6+enZCdW4DePTuiaZP6yw3nfnmhQxjnQrrxulFjJ7/56PRaKSlgTKAgvwTHj59Dbm4Rios9SE9LwVVXDD9GCdFUVbMzjYHpTMv6YWNcUKYF2Zep8Y7169fZGOOKQ5nbh8++nH1v1ulzHSmlWgTbDAeAxo3rr3LYnCgqdmP6Jz++fDY7t5XTYct76/WJ3YYM6oOjx87ipVem13vi2Skdv5u5GK1bNYHDYc/3+1UHUzW9PUyvm2nMwjSdNVlTVWtsrOuMzWLD/RNfGzhgyC2fLFu+Cf37dMW140dfJYDgYUVGHzaon77hxWfveSspIRH79h3DpDc/a1BW6gYRFPXr1obTbss1AjmGIAMAi9VSlpqchP+8PL1e30E3fvnl1/PRumUm7pow/hohQOrWrb0lxhWD0lIvPvti9p0nss50oZSy55++o/74f10Cd5kfr7/5WfpPPy1DYnwcXnruvjmXjhjw74CUhepn0FQGM0De6L8xowbcmxAfB0IJrrxsyL2BW4Jyj/wddPE15X/V7NVxc3l5BY1OZJ3uIkmS38wKJCCoRKnaLLPxEkUxUsOEtGrNtgf69Or4drT81z17D4/+/ciJvkIImpGRuqN92xbfK4rs8fn8rkOHj13s96vOtLTkPbXTa+0y6jd2/H9PfE3M+GoO5v845Z5ePTpONUDPFQruAOg3L7+w0YpVWycePHh0YFlZWXJKatLBzCYNfrmoc6sZKcmJhwCgpLSs1pEjJ3oLwWmdjPTtycmJh4uKSjKOHc/qzoWQ69VN35yUGMLIbd6658a8/MJGDrs1v0njeisyatfaWVFe7voNOycUl5Sl2+2WwmaZDZak1UrZqyuYgmzevOemM2ez28iK7G3cqO6qFs0aLQQAr9cbe+jw8Ys1TbOmpaXsTU9L3X0y60znnNz8TJvVUtSkcYMVFovi9ni88dt27LsmOzu3mcvlzOnVo8NUh8OeL6KcrmH0x7ETp7tv3brnuvS0lN2ZTesvPXT4xMVtWjedFRPjPFdRX2oas+74df+VWafOdLQoFnfXLm0/Tk6KP2y885ate6/PzSto4nBY8hs3qreqTkbaduPeHTv3X3n8+KluikXxtGuT+UOdOmnbjTHNzs5tdur0uQ6yJPmaNm2wzGazFRttJQT8ZNa5iwYMu3lTi+aNMOe7yRYSma1Sg1er+fxf+HDOiYEpq85HJ/zVcXH1mw0Ww8feKfx+1c45J1wE6eDOe/+F/v5X9sd/49l/5vsa9VQ0DpxzEq0tVWmDcc0zL7x72p7UWXz746KPIjGKQogaH2BN+VsCIKSyg5eikVtGfkcIEQRgRg6vYWqZSTNNUBJu4pHkBQXF9R54eNKKrNPZ+M+z93ytKLInEvpSWdvMOaQRpnKQtMNMyGuuP5KA0/yOBjHp+chIo11LCBECIIJzau4Pc79F6w+jPaF2C2LkShvvdB6fJAuk4gXbEyS1rQJhsdFWcz0EupYe7R3N7x/Z55FzK5TnLSRKKVu4eN0LU6Z9nd6qRVMMvrj78+aIv1FqBGBN+cuLgW2r6vWVJeNXlgsc9fhKQsSqNVsesFoV3HHLOAwd1OuZaAvhfO0/n7DUz/qKIrQreO/K3qOq1xJAkGr0R7T26FHY6pGQROYPV2VsTf3DLnBcWVXmlu72ILyoqCRj5apND/br2wUjh/edmRAfe4ILIdGItv4/mJ00Q0jwQ4gAAAAASUVORK5CYII=\";\n  const wmImg = new Image();\n  let wmReady = false, wmOff = false;\n  wmImg.onload = () => { wmReady = true; draw(); qDraw(); };\n  wmImg.src = WM_SRC;\n  function watermark(){\n    if (!wmReady || wmOff) return;\n    ctx.setTransform(1,0,0,1,0,0);\n    const w = CVW*0.185, h = w*wmImg.height/wmImg.width;\n    ctx.save(); ctx.globalAlpha = 1; ctx.drawImage(wmImg, 26, 23, w, h); ctx.restore();\n    const w2 = CVW*0.23, h2 = w2*wmImg.height/wmImg.width;\n    ctx.save(); ctx.globalAlpha = 0.10;\n    ctx.drawImage(wmImg, CVW/2 - w2/2, CVH*0.88 - h2/2, w2, h2);\n    ctx.restore();\n  }\n\n  function syncStageUI(){\n    syncSizePanel();\n    const warn = document.getElementById('pmtWarnLine');\n    if (warn){\n      if (teamMode){ warn.className = 'ov-fit'; warn.textContent = ''; }\n      else { warn.textContent = lastFit.ok ? '' : lastFit.msg;\n             warn.className = 'ov-fit ' + (lastFit.msg && !lastFit.ok ? 'bad' : ''); }\n    }\n    const sizeSum = document.getElementById('pmtAccSizeSum');\n    if (sizeSum) sizeSum.textContent =\n      (st.frontOn ? 'Front ' + fmt(st.front.w) + ' mm' : 'No front') +\n      (st.backOn ? ' \u00B7 Back ' + fmt(st.back.w) + ' mm' : '');\n    const shapeSum = document.getElementById('pmtAccShapeSum');\n    if (shapeSum) shapeSum.textContent = cur().label + ' \u00B7 ' +\n      ({ front:'Front Side Only', back:'Back Side Only', both:'Front & Back Side' }[st.printMode]);\n    const sn = document.getElementById('pmtSideNote');\n    if (sn){\n      const one = cur().sides === 1;\n      sn.classList.toggle('single', one);\n      sn.textContent = one ? '\u2460 Single side engraving \u2014 Hook keychains are engraved on the front only'\n                           : '\u2461 Double side engraving \u2014 front & back both included';\n    }\n  }\n\n  /* ---------- v2.4: draw one side into any canvas (used by the both-sides strip) ---------- */\n  function renderSide(cv, where, opts){\n    if (!cv) return;\n    opts = opts || {};\n    const S = cur(), im = shapeImg(st.shape);\n    const W = cv.width, H = cv.height, x = cv.getContext('2d');\n    x.setTransform(1,0,0,1,0,0);\n    x.clearRect(0, 0, W, H);\n    const bg = x.createRadialGradient(W/2, H*0.34, 30, W/2, H/2, W*0.8);\n    bg.addColorStop(0, '#ffffff'); bg.addColorStop(1, '#ece6df');\n    x.fillStyle = bg; x.fillRect(0, 0, W, H);\n    if (!im) return;\n    /* v2.5: the keychain is turned upright in the thumbnail, so the plate lies\n       flat, the logo reads straight and the card stays short */\n    const f = flatFit(S, W, H, opts.pad != null ? opts.pad : 5, 1);\n    x.save();\n    x.setTransform(f.m[0], f.m[1], f.m[2], f.m[3], f.m[4], f.m[5]);\n    x.drawImage(im, 0, 0, S.iw, S.ih);\n    x.setTransform(1,0,0,1,0,0);\n    const on = where === 'back' ? st.backOn : st.frontOn;\n    if (!on){ x.restore(); return; }\n    /* borrow that side's artwork, draw, then put the editing side back */\n    const keep = snapArt(), a = artFor(where);\n    if (a) putArt(a);\n    try{\n      const A = layout(where);\n      const k = f.s/PU;\n      x.save();\n      x.setTransform(k, 0, 0, k, f.pcx, f.pcy);\n      areaPath(x, S, U(0.6)); x.clip();\n      x.fillStyle = ENG_COL;\n      A.items.forEach(it => {\n        if (it.t === 'logo'){\n          if (engImg && engImg.width) x.drawImage(engImg, it.cx - it.w/2, it.top, it.w, it.h);\n          else if (phReady){ x.save(); x.globalAlpha = 0.85;\n            x.drawImage(phImg, it.cx - it.w/2, it.top, it.w, it.h); x.restore(); }\n        } else {\n          x.font = engFont(it.m.fs);\n          x.textAlign = 'center'; x.textBaseline = 'top';\n          it.m.parts.forEach((t, i) => x.fillText(t, it.cx, it.top + it.m.fs*1.2*i));\n        }\n      });\n      x.restore();\n    } finally { putArt(keep); x.restore(); }\n    if (opts.wm && wmReady && !wmOff){\n      x.setTransform(1,0,0,1,0,0);\n      const w = W*0.185, h = w*wmImg.height/wmImg.width;\n      x.save(); x.globalAlpha = 1; x.drawImage(wmImg, W*0.026, H*0.029, w, h); x.restore();\n      const w2 = W*0.23, h2 = w2*wmImg.height/wmImg.width;\n      x.save(); x.globalAlpha = 0.10;\n      x.drawImage(wmImg, W/2 - w2/2, H*0.88 - h2/2, w2, h2); x.restore();\n    }\n  }\n  let bothTimer = null;\n  function drawBoth(){\n    const wrap = document.getElementById('pmtBoth');\n    if (!wrap) return;\n    wrap.classList.add('hide');          /* v3.0: both sides live in the main preview now */\n    const left0 = document.querySelector('.pmt-m-left');\n    if (left0) left0.classList.toggle('has-both', bothMode());\n    if (true) return;\n    const two = cur().sides !== 1 && st.printMode === 'both';\n    wrap.classList.toggle('hide', !two);\n    const left = document.querySelector('.pmt-m-left');\n    if (left) left.classList.toggle('has-both', two);\n    if (!two) return;\n    wrap.querySelectorAll('button').forEach(b => {\n      b.classList.toggle('on', b.dataset.side === st.view);\n      renderSide(b.querySelector('canvas'), b.dataset.side);\n    });\n  }\n  function scheduleBoth(){\n    if (bothTimer) return;\n    bothTimer = setTimeout(() => { bothTimer = null; drawBoth(); }, 90);\n  }\n  document.querySelectorAll('#pmtBoth button').forEach(b => {\n    b.addEventListener('click', () => { setView(b.dataset.side); syncSeg(); draw(); });\n  });\n\n  let raf = false;\n  /* every redraw of the big preview refreshes the two side thumbnails too */\n  const drawMain = draw;\n  draw = function(showGuides){ drawMain(showGuides); scheduleBoth(); };\n  function scheduleDraw(){\n    if (raf) return;\n    raf = true;\n    requestAnimationFrame(() => { raf = false; draw(); });\n  }\n\n  /* ================= ZOOM ================= */\n  function setZoom(z){\n    st.zoom = clamp(z, 1, 2.5);\n    const lab = document.getElementById('pmtZoomLab');\n    if (lab) lab.textContent = (Math.round(st.zoom*10)/10) + 'x';\n    draw();\n  }\n  document.querySelectorAll('#pmtZoom button').forEach(b => {\n    b.addEventListener('click', () => {\n      const k = b.dataset.z;\n      setZoom(k === 'up' ? st.zoom + 0.25 : k === 'down' ? st.zoom - 0.25 : 1);\n    });\n  });\n  /* ============ QUICK UPLOAD (team will design) ============ */\n  const quickBtn = document.getElementById('pmtQuickBtn');\n  const quickFile = document.getElementById('pmtQuickFile');\n  function markMode(mode){\n    const a = document.querySelector('.pmt-cta'), b = document.querySelector('.pmt-cta2');\n    if (a){ a.classList.toggle('muted', mode === 'quick'); a.classList.toggle('chosen', mode === 'design'); }\n    if (b){ b.classList.toggle('muted', mode === 'design'); b.classList.toggle('chosen', mode === 'quick'); }\n  }\n  const qNoteTxt = document.getElementById('pmtQNoteTxt');\n  let quickLogo = null, qShape = KEYS[0], qView = 'front', qMode = 'both';\n\n  function pushQuick(silent){\n    if (!quickLogo) return;\n    const props = {\n      'Design':'PrintMine team will design \u2014 proof shared for approval within 24 hours',\n      'Finish':'Laser engraved \u2014 silver on black plate',\n      'Keychain Shape': SHAPES[qShape].label,\n      'Engraving Side': ({ front:'Front Side Only', back:'Back Side Only', both:'Front & Back Side' })[qMode]\n    };\n    const note = qNoteTxt && qNoteTxt.value.trim();\n    if (note) props['Customization Note'] = note.replace(/\\n+/g, ' / ');\n    const design = { props, files:{ 'Original Logo': quickLogo }, team:true, quick:true, silent:!!silent,\n                     colourHex:'#141414', shapeImg:SHAPES[qShape].img };\n    markMode('quick');\n    try{ if (typeof window.pmtOnReady === 'function') window.pmtOnReady(design); }catch(e){ console.error(e); }\n  }\n  if (qNoteTxt){\n    let nt = null;\n    qNoteTxt.addEventListener('input', () => { clearTimeout(nt); nt = setTimeout(() => pushQuick(true), 700); });\n    qNoteTxt.addEventListener('change', () => { clearTimeout(nt); pushQuick(true); });\n  }\n\n  const qOv  = document.getElementById('pmtQOverlay');\n  const qCv  = document.getElementById('pmtQCv');\n  const qCtx = qCv ? qCv.getContext('2d') : null;\n  const qUp  = document.getElementById('pmtQUp');\n\n  function qDraw(){\n    if (!qCtx) return;\n    const W = qCv.width, H = qCv.height;\n    qCtx.setTransform(1,0,0,1,0,0);\n    qCtx.clearRect(0, 0, W, H);\n    const bg = qCtx.createRadialGradient(W/2, H*0.34, 60, W/2, H/2, W*0.8);\n    bg.addColorStop(0, '#ffffff'); bg.addColorStop(1, '#ece6df');\n    qCtx.fillStyle = bg; qCtx.fillRect(0, 0, W, H);\n    const S = SHAPES[qShape], im = shapeImg(qShape);\n    if (!im) return;\n    const f = flatFit(S, W, H, 12, 1);\n    qCtx.save();\n    qCtx.setTransform(f.m[0], f.m[1], f.m[2], f.m[3], f.m[4], f.m[5]);\n    qCtx.drawImage(im, 0, 0, S.iw, S.ih);\n    qCtx.setTransform(1,0,0,1,0,0);\n    if (phReady){\n      const k = f.s/PU;\n      qCtx.save();\n      qCtx.setTransform(k, 0, 0, k, f.pcx, f.pcy);\n      areaPath(qCtx, S, 0); qCtx.clip();\n      const wmm = S.kind === 'round' ? S.areaD*0.72 : S.areaW*0.78;\n      const w = U(wmm), h = w*phImg.height/phImg.width;\n      qCtx.globalAlpha = 0.85;\n      qCtx.drawImage(phImg, U(S.ou||0) - w/2, U(S.ov||0) - h/2, w, h);\n      qCtx.restore();\n    }\n    qCtx.restore();\n    if (wmReady && !wmOff){\n      qCtx.setTransform(1,0,0,1,0,0);\n      const w = W*0.17, h = w*wmImg.height/wmImg.width;\n      qCtx.save(); qCtx.globalAlpha = 1; qCtx.drawImage(wmImg, 18, 16, w, h); qCtx.restore();\n    }\n  }\n\n  /* shape cards \u2014 dono jagah (main modal + quick popup) */\n  function buildShapeCards(wrapId, get, set){\n    const wrap = document.getElementById(wrapId);\n    if (!wrap) return;\n    wrap.innerHTML = '';\n    KEYS.forEach(k => {\n      const S = SHAPES[k];\n      const b = document.createElement('button');\n      b.type = 'button';\n      b.className = 'pmt-shape' + (k === get() ? ' on' : '');\n      b.dataset.shape = k;\n      b.innerHTML = '<canvas class=\"pmt-shape-cv\" width=\"300\" height=\"220\"></canvas>' +\n                    '<b>' + S.label + '</b><small>' + S.sub + '</small>';\n      b.addEventListener('click', () => {\n        set(k);\n        wrap.querySelectorAll('.pmt-shape').forEach(e => e.classList.toggle('on', e.dataset.shape === k));\n      });\n      wrap.appendChild(b);\n    });\n  }\n  /* every card draws its own plate with the current artwork on it */\n  function drawShapeCard(cv, key){\n    const S = SHAPES[key], im = shapeImg(key);\n    if (!im || !cv) return;\n    const W = cv.width, H = cv.height, x = cv.getContext('2d');\n    x.setTransform(1,0,0,1,0,0);\n    x.clearRect(0, 0, W, H);\n    const f = flatFit(S, W, H, 3, 1);\n    x.save();\n    x.setTransform(f.m[0], f.m[1], f.m[2], f.m[3], f.m[4], f.m[5]);\n    x.drawImage(im, 0, 0, S.iw, S.ih);\n    x.setTransform(1,0,0,1,0,0);\n    if (!(engImg && engImg.width)){ x.restore(); return; }\n    const k = f.s/PU;\n    x.save();\n    x.setTransform(k, 0, 0, k, f.pcx, f.pcy);\n    areaPath(x, S, 0); x.clip();\n    const r = logoRatio();\n    const availW = S.kind === 'round' ? S.areaD : S.areaW;\n    const availH = S.kind === 'round' ? S.areaD : S.areaH;\n    const wmm = Math.min(availW, availH*r) * (S.kind === 'round' ? 0.72 : 0.86);\n    const w = U(wmm), h = w/r;\n    x.drawImage(engImg, U(S.ou||0) - w/2, U(S.ov||0) - h/2, w, h);\n    x.restore();\n    x.restore();\n  }\n  function renderShapeCards(){\n    ['pmtShapes','pmtQShapes'].forEach(id => {\n      const wrap = document.getElementById(id);\n      if (!wrap) return;\n      wrap.querySelectorAll('.pmt-shape').forEach(b => {\n        drawShapeCard(b.querySelector('canvas'), b.dataset.shape);\n      });\n    });\n  }\n\n  buildShapeCards('pmtShapes', () => st.shape, k => {\n    st.shape = k;\n    /* plates are very different sizes (45x27 vs 45x17 vs dia 32) \u2014\n       re-fit the engraving and re-centre it instead of carrying the old mm over */\n    st.front.w = st.front.wRef = cur().defW;\n    st.back.w  = st.back.wRef  = cur().defW;\n    st.front.off = { x:0, y:0 };\n    st.back.off  = { x:0, y:0 };\n    applyShapeSides();\n    applyLimits();\n    draw();\n  });\n  buildShapeCards('pmtQShapes', () => qShape, k => {\n    qShape = k;\n    const n = document.getElementById('pmtQShapeName');\n    if (n) n.textContent = SHAPES[k].label.toUpperCase();\n    qApplySides();\n    qDraw();\n    if (quickLogo) pushQuick(true);\n  });\n\n  function qApplySides(){\n    qMode = SHAPES[qShape].sides !== 1 ? 'both' : 'front';\n    if (qMode === 'front') qView = 'front';\n    const qn = document.getElementById('pmtQSideNote');\n    if (qn){\n      const one = qMode === 'front';\n      qn.classList.toggle('single', one);\n      qn.textContent = one ? '\u2460 Single side engraving \u2014 Hook keychains are engraved on the front only'\n                           : '\u2461 Double side engraving \u2014 front & back both included';\n    }\n    qSyncSeg();\n  }\n  function qSyncSeg(){\n    document.querySelectorAll('#pmtQSeg button').forEach(b => {\n      b.classList.toggle('on', b.dataset.view === qView);\n      b.disabled = (b.dataset.view === 'front') ? (qMode === 'back') : (qMode === 'front');\n    });\n  }\n  document.querySelectorAll('#pmtQSeg button').forEach(b => {\n    b.addEventListener('click', () => { qView = b.dataset.view; qSyncSeg(); qDraw(); });\n  });\n\n  function qOpen(){\n    qOv.classList.add('open');\n    document.body.style.overflow = 'hidden';\n    qApplySides(); qDraw(); preloadAll();\n  }\n  function qClose(){ qOv.classList.remove('open'); document.body.style.overflow = ''; }\n  if (qOv){\n    qOv.addEventListener('click', e => { if (e.target === qOv) qClose(); });\n    document.getElementById('pmtQClose').addEventListener('click', qClose);\n    document.getElementById('pmtQBack').addEventListener('click', qClose);\n    document.getElementById('pmtQConfirm').addEventListener('click', () => {\n      if (!quickLogo){ pickLogo(); return; }\n      pushQuick(false);\n      qClose();\n      const sp = document.getElementById('pmt-summary');\n      if (sp && sp.scrollIntoView) setTimeout(() => sp.scrollIntoView({ behavior:'smooth', block:'center' }), 120);\n    });\n  }\n\n  /* ---------- file picker (iOS-safe) ---------- */\n  let lastPick = 0;\n  function pickLogo(e){\n    if (e && e.preventDefault) e.preventDefault();\n    const now = Date.now();\n    if (now - lastPick < 500) return;\n    lastPick = now;\n    if (document.activeElement && document.activeElement.blur) document.activeElement.blur();\n    quickFile.value = '';\n    quickFile.click();\n  }\n  function onTap(el, fn){\n    let sx = 0, sy = 0, t0 = 0, moved = false;\n    el.addEventListener('touchstart', e => {\n      const t = e.touches[0]; sx = t.clientX; sy = t.clientY; t0 = Date.now(); moved = false;\n    }, { passive:true });\n    el.addEventListener('touchmove', e => {\n      const t = e.touches[0];\n      if (Math.abs(t.clientX - sx) > 10 || Math.abs(t.clientY - sy) > 10) moved = true;\n    }, { passive:true });\n    el.addEventListener('touchend', e => {\n      if (moved || Date.now() - t0 > 700) return;\n      e.preventDefault(); fn(e);\n    }, { passive:false });\n    el.addEventListener('click', fn);\n  }\n\n  if (quickBtn && quickFile){\n    const openQuick = e => {\n      if (e && e.preventDefault) e.preventDefault();\n      const now = Date.now();\n      if (now - lastPick < 500) return;\n      lastPick = now;\n      qOpen();\n    };\n    onTap(quickBtn, openQuick);\n    if (qUp) onTap(qUp, pickLogo);\n    document.addEventListener('click', e => {\n      const t = e.target && e.target.closest ? e.target.closest('#pmtQuickChange') : null;\n      if (t){ e.preventDefault(); qOpen(); }\n    });\n    const releaseFocus = () => { if (document.activeElement === quickFile) quickFile.blur(); };\n    window.addEventListener('focus', releaseFocus);\n    document.addEventListener('visibilitychange', () => { if (!document.hidden) setTimeout(releaseFocus, 50); });\n\n    quickFile.addEventListener('change', () => {\n      const f = quickFile.files && quickFile.files[0];\n      if (!f) return;\n      if (f.size > 25*1024*1024){ alert('File is too large. Please upload under 25 MB.'); return; }\n      quickLogo = f;\n      if (qUp){\n        qUp.classList.add('done');\n        document.getElementById('pmtQFileName').textContent =\n          f.name.length > 24 ? f.name.slice(0, 21) + '\u2026' : f.name;\n        try{ document.getElementById('pmtQThumb').src = URL.createObjectURL(f); }catch(err){}\n      }\n      pushQuick(false);\n    });\n  }\n\n  /* ================= TABS ================= */\n  const tabBtns = document.querySelectorAll('.pmt-tabs button');\n  const panels  = document.querySelectorAll('.pmt-panel');\n  function showTab(name){\n    tabBtns.forEach(b => b.classList.toggle('on', b.dataset.tab === name));\n    panels.forEach(p => p.classList.toggle('on', p.dataset.tab === name));\n    const right = document.querySelector('.pmt-m-right');\n    if (right) right.scrollTop = 0;\n  }\n  tabBtns.forEach(b => b.addEventListener('click', () => showTab(b.dataset.tab)));\n  const accOpen = () => showTab('logo');\n\n  /* ================= UPLOAD + BACKGROUND REMOVAL ================= */\n  const busy = document.getElementById('pmtBusy');\n  const setBusy = t => { busy.style.display = t ? 'block' : 'none'; if (t) busy.textContent = '\u23F3 ' + t; };\n  const drop = document.getElementById('pmtDrop');\n  const fileEl = document.getElementById('pmtFile');\n\n  drop.addEventListener('dragover', e => { e.preventDefault(); drop.classList.add('over'); });\n  drop.addEventListener('dragleave', () => drop.classList.remove('over'));\n  drop.addEventListener('drop', e => {\n    e.preventDefault(); drop.classList.remove('over');\n    if (e.dataTransfer.files[0]) load(e.dataTransfer.files[0]);\n  });\n  fileEl.addEventListener('change', () => { if (fileEl.files[0]) load(fileEl.files[0]); });\n\n  let pdfLibP = null;\n  function ensurePdfJs(){\n    if (window.pdfjsLib) return Promise.resolve(window.pdfjsLib);\n    if (pdfLibP) return pdfLibP;\n    pdfLibP = new Promise((res, rej) => {\n      const sc = document.createElement('script');\n      sc.src = 'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.min.js';\n      sc.onload = () => {\n        window.pdfjsLib.GlobalWorkerOptions.workerSrc =\n          'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.worker.min.js';\n        res(window.pdfjsLib);\n      };\n      sc.onerror = rej;\n      document.head.appendChild(sc);\n    });\n    return pdfLibP;\n  }\n  function loadPdf(f){\n    setBusy('Reading PDF\u2026');\n    ensurePdfJs()\n      .then(lib => blobBytes(f).then(buf => lib.getDocument({ data:buf }).promise))\n      .then(pdf => pdf.getPage(1))\n      .then(page => {\n        const vp1 = page.getViewport({ scale:1 });\n        const scale = 1400/Math.max(vp1.width, vp1.height);\n        const vp = page.getViewport({ scale });\n        const c = document.createElement('canvas');\n        c.width = Math.round(vp.width); c.height = Math.round(vp.height);\n        const cx = c.getContext('2d');\n        cx.fillStyle = '#ffffff'; cx.fillRect(0, 0, c.width, c.height);\n        return page.render({ canvasContext:cx, viewport:vp }).promise.then(() => c);\n      })\n      .then(c => { const im = new Image(); im.onload = () => { rawImg = im; processImage(); }; im.src = c.toDataURL('image/png'); })\n      .catch(() => { setBusy(''); alert('Could not read the PDF \u2014 check your internet or upload a PNG/JPG.'); });\n  }\n  function load(f){\n    origFile = f;\n    if (f.type === 'application/pdf' || /\\.pdf$/i.test(f.name || '')){ loadPdf(f); return; }\n    setBusy('Reading logo\u2026');\n    const im = new Image();\n    im.onload = () => { rawImg = im; processImage(); };\n    im.onerror = () => { setBusy(''); alert('This file could not be opened. Please try a PNG or JPG.'); };\n    im.src = URL.createObjectURL(f);\n  }\n\n  /* v3.4: a single stray transparent pixel used to count as a \"transparent logo\",\n     so background removal was skipped and the white box stayed on the plate.\n     Ported from the Logo Preview page: a real transparent area (>4%) is required. */\n  function detectAlpha(im){\n    try{\n      const MAX = 400;\n      const iw = im.naturalWidth || im.width || 1;\n      const ih = im.naturalHeight || im.height || 1;\n      const k = Math.min(1, MAX/Math.max(iw, ih));\n      const w = Math.max(1, Math.round(iw*k)), h = Math.max(1, Math.round(ih*k));\n      const c = document.createElement('canvas');\n      c.width = w; c.height = h;\n      const x = c.getContext('2d', { willReadFrequently:true });\n      x.drawImage(im, 0, 0, w, h);\n      const d = x.getImageData(0, 0, w, h).data;\n      const n = w*h;\n      let trans = 0, seen = 0;\n      for (let i = 0; i < n; i += 3){ if (d[i*4 + 3] < 200) trans++; seen++; }\n      return seen ? (trans/seen) > 0.04 : false;\n    }catch(e){ return false; }\n  }\n  function toImage(canvas, cb){\n    const out = new Image();\n    out.onload = () => cb(out);\n    out.src = canvas.toDataURL('image/png');\n  }\n  function trim(canvas){\n    const w = canvas.width, h = canvas.height;\n    const x = canvas.getContext('2d');\n    let d;\n    try{ d = x.getImageData(0, 0, w, h).data; }catch(e){ return canvas; }\n    let x0 = w, x1 = -1, y0 = h, y1 = -1;\n    for (let yy = 0; yy < h; yy++){\n      for (let xx = 0; xx < w; xx++){\n        if (d[(yy*w + xx)*4 + 3] > 10){\n          if (xx < x0) x0 = xx;\n          if (xx > x1) x1 = xx;\n          if (yy < y0) y0 = yy;\n          if (yy > y1) y1 = yy;\n        }\n      }\n    }\n    if (x1 < 0) return canvas;\n    const out = document.createElement('canvas');\n    out.width = x1 - x0 + 1; out.height = y1 - y0 + 1;\n    out.getContext('2d').drawImage(canvas, x0, y0, out.width, out.height, 0, 0, out.width, out.height);\n    return out;\n  }\n  function removeBg(im, tol){\n    const MAX = 1200;\n    const k = Math.min(1, MAX/Math.max(im.width, im.height));\n    const w = Math.max(1, Math.round(im.width*k)), h = Math.max(1, Math.round(im.height*k));\n    const c = document.createElement('canvas');\n    c.width = w; c.height = h;\n    const x = c.getContext('2d', { willReadFrequently:true });\n    x.drawImage(im, 0, 0, w, h);\n    let dat;\n    try{ dat = x.getImageData(0, 0, w, h); }catch(e){ return c; }\n    const d = dat.data;\n    const at = (xx, yy) => (yy*w + xx)*4;\n    const corners = [[0,0],[w-1,0],[0,h-1],[w-1,h-1]];\n    let br = 0, bg2 = 0, bb = 0;\n    corners.forEach(p => { const i = at(p[0], p[1]); br += d[i]; bg2 += d[i+1]; bb += d[i+2]; });\n    br /= 4; bg2 /= 4; bb /= 4;\n    const lim = tol*tol*3;\n    const near = i => {\n      const dr = d[i] - br, dg = d[i+1] - bg2, db = d[i+2] - bb;\n      return (dr*dr + dg*dg + db*db) < lim;\n    };\n    const seen = new Uint8Array(w*h);\n    const stack = [];\n    for (let xx = 0; xx < w; xx++){ stack.push(xx, 0); stack.push(xx, h-1); }\n    for (let yy = 0; yy < h; yy++){ stack.push(0, yy); stack.push(w-1, yy); }\n    while (stack.length){\n      const yy = stack.pop(), xx = stack.pop();\n      if (xx < 0 || yy < 0 || xx >= w || yy >= h) continue;\n      const p = yy*w + xx;\n      if (seen[p]) continue;\n      const i = p*4;\n      if (!near(i)) continue;\n      seen[p] = 1; d[i+3] = 0;\n      stack.push(xx+1, yy); stack.push(xx-1, yy); stack.push(xx, yy+1); stack.push(xx, yy-1);\n    }\n    for (let yy = 1; yy < h-1; yy++){\n      for (let xx = 1; xx < w-1; xx++){\n        const p = yy*w + xx;\n        if (seen[p]) continue;\n        if (seen[p-1] || seen[p+1] || seen[p-w] || seen[p+w]){\n          const i = p*4;\n          if (near(i)) d[i+3] = 90;\n        }\n      }\n    }\n    let kept = 0;\n    const lim2 = (tol*0.8)*(tol*0.8)*3;\n    const near2 = i => {\n      const dr = d[i] - br, dg = d[i+1] - bg2, db = d[i+2] - bb;\n      return (dr*dr + dg*dg + db*db) < lim2;\n    };\n    const alphaBackup = new Uint8ClampedArray(w*h);\n    for (let p = 0; p < w*h; p++) alphaBackup[p] = d[p*4 + 3];\n    for (let p = 0; p < w*h; p++){\n      const i = p*4;\n      if (d[i+3] === 0) continue;\n      if (near2(i)) d[i+3] = 0; else kept++;\n    }\n    if (kept < w*h*0.02){\n      for (let p = 0; p < w*h; p++) d[p*4 + 3] = alphaBackup[p];\n    } else {\n      const lim3 = (tol*1.25)*(tol*1.25)*3;\n      const edge = [];\n      for (let yy = 1; yy < h-1; yy++){\n        for (let xx = 1; xx < w-1; xx++){\n          const p = yy*w + xx, i = p*4;\n          if (!d[i+3]) continue;\n          if (d[(p-1)*4+3] && d[(p+1)*4+3] && d[(p-w)*4+3] && d[(p+w)*4+3]) continue;\n          const dr = d[i] - br, dg = d[i+1] - bg2, db = d[i+2] - bb;\n          if ((dr*dr + dg*dg + db*db) < lim3) edge.push(p);\n        }\n      }\n      edge.forEach(p => { d[p*4 + 3] = 0; });\n    }\n    x.putImageData(dat, 0, 0);\n    return trim(c);\n  }\n  function avgLuma(src){\n    try{\n      const n = 60, t = document.createElement('canvas');\n      t.width = t.height = n;\n      const x = t.getContext('2d', { willReadFrequently:true });\n      x.drawImage(src, 0, 0, n, n);\n      const d = x.getImageData(0, 0, n, n).data;\n      let sum = 0, cnt = 0;\n      for (let i = 0; i < d.length; i += 4){\n        if (d[i+3] < 60) continue;\n        sum += 0.299*d[i] + 0.587*d[i+1] + 0.114*d[i+2];\n        cnt++;\n      }\n      return cnt ? sum/cnt : null;\n    }catch(e){ return null; }\n  }\n\n  function processImage(){\n    if (!rawImg) return;\n    hadAlpha = detectAlpha(rawImg);\n    document.getElementById('pmtFinetune').classList.toggle('on', st.bgRemove && !hadAlpha);\n    setBusy((hadAlpha || !st.bgRemove) ? 'Preparing\u2026' : 'Removing background\u2026');\n    setTimeout(() => {\n      let out;\n      if (hadAlpha || !st.bgRemove){\n        const c = document.createElement('canvas');\n        c.width = rawImg.width; c.height = rawImg.height;\n        c.getContext('2d').drawImage(rawImg, 0, 0);\n        out = trim(c);\n      } else {\n        out = removeBg(rawImg, st.bgTol);\n      }\n      toImage(out, im2 => {\n        baseImg = im2;\n        autoCrop = denseBox(out);\n        crop = autoCrop ? Object.assign({}, autoCrop) : { x:0, y:0, w:1, h:1 };\n        cropUI();\n        needAutoEng = true;\n        applyCrop();\n        drop.classList.add('uploaded');\n        document.getElementById('pmtThumbImg').src = im2.src;\n        const label = (origFile && origFile.name\n                        ? (origFile.name.length > 20 ? origFile.name.slice(0, 17) + '\u2026' : origFile.name)\n                        : 'Logo') + (hadAlpha ? ' \u00B7 transparent' : ' \u00B7 background removed');\n        document.getElementById('pmtDoneTitle').textContent = label;\n        document.getElementById('pmtAccStatus').textContent = '\u2713 ' + label;\n        document.querySelector('.pmt-tabs button[data-tab=\"logo\"]').classList.add('dot');\n        setBusy('');\n      });\n    }, 40);\n  }\n\n  /* ================= CROP ================= */\n  const cropWrap = document.getElementById('pmtCrop');\n  const ccv = document.getElementById('pmtCropCv');\n  const cctx = ccv.getContext('2d');\n\n  function denseBox(src){\n    try{\n      const N = 200, t = document.createElement('canvas');\n      const W = N, H = Math.max(1, Math.round(N*src.height/src.width));\n      t.width = W; t.height = H;\n      const x = t.getContext('2d', { willReadFrequently:true });\n      x.drawImage(src, 0, 0, W, H);\n      const d = x.getImageData(0, 0, W, H).data;\n      const on = new Uint8Array(W*H);\n      let total = 0;\n      for (let i = 0; i < W*H; i++){ if (d[i*4 + 3] > 40){ on[i] = 1; total++; } }\n      if (!total) return null;\n      const lab = new Int32Array(W*H).fill(-1);\n      const comps = [], stack = [];\n      for (let p0 = 0; p0 < W*H; p0++){\n        if (!on[p0] || lab[p0] >= 0) continue;\n        const id = comps.length;\n        let area = 0, x0 = W, x1 = -1, y0 = H, y1 = -1;\n        stack.push(p0); lab[p0] = id;\n        while (stack.length){\n          const p = stack.pop();\n          const px = p % W, py = (p - px)/W;\n          area++;\n          if (px < x0) x0 = px;\n          if (px > x1) x1 = px;\n          if (py < y0) y0 = py;\n          if (py > y1) y1 = py;\n          for (let dy = -1; dy <= 1; dy++){\n            for (let dx = -1; dx <= 1; dx++){\n              const nx = px + dx, ny = py + dy;\n              if (nx < 0 || ny < 0 || nx >= W || ny >= H) continue;\n              const q = ny*W + nx;\n              if (on[q] && lab[q] < 0){ lab[q] = id; stack.push(q); }\n            }\n          }\n        }\n        comps.push({ area, x0, x1, y0, y1 });\n      }\n      const minArea = Math.max(4, total*0.0008);\n      const keep = comps.filter(c => c.area >= minArea);\n      const use = keep.length ? keep : comps;\n      let bx0 = W, bx1 = -1, by0 = H, by1 = -1;\n      use.forEach(c => {\n        if (c.x0 < bx0) bx0 = c.x0;\n        if (c.x1 > bx1) bx1 = c.x1;\n        if (c.y0 < by0) by0 = c.y0;\n        if (c.y1 > by1) by1 = c.y1;\n      });\n      if (bx1 < 0) return null;\n      const pad = 0.012;\n      const nx0 = clamp(bx0/W - pad, 0, 1), ny0 = clamp(by0/H - pad, 0, 1);\n      const nw = clamp((bx1 + 1)/W - nx0 + pad, 0.05, 1 - nx0);\n      const nh = clamp((by1 + 1)/H - ny0 + pad, 0.05, 1 - ny0);\n      return { x:nx0, y:ny0, w:nw, h:nh };\n    }catch(e){ return null; }\n  }\n\n  function applyCrop(){\n    if (!baseImg) return Promise.resolve();\n    return new Promise(resolve => {\n      const sx = Math.round(crop.x*baseImg.width);\n      const sy = Math.round(crop.y*baseImg.height);\n      const sw = Math.max(1, Math.round(crop.w*baseImg.width));\n      const sh = Math.max(1, Math.round(crop.h*baseImg.height));\n      const c = document.createElement('canvas');\n      c.width = sw; c.height = sh;\n      c.getContext('2d').drawImage(baseImg, sx, sy, sw, sh, 0, 0, sw, sh);\n      toImage(c, im2 => {\n        cropped = im2;\n        if (needAutoEng){\n          /* v3.4: the plan sets the threshold too, so a light or flat logo\n             can no longer be thresholded away into a blank plate */\n          const ep = engPlan(im2);\n          st.engMode = ep.mode;\n          st.engThr  = (ep.mode === 'mask') ? 128 : ep.thr;\n          st.engPlanAlts = ep.alts || [];\n          needAutoEng = false;\n        }\n        syncEngUI();\n        buildEngraving().then(() => { draw(); resolve(); });\n      });\n    });\n  }\n\n  function cropUI(){\n    if (!baseImg){ cropWrap.classList.remove('on'); return; }\n    cropWrap.classList.add('on');\n    const tight = autoCrop && (autoCrop.w < 0.97 || autoCrop.h < 0.97);\n    document.getElementById('pmtCropAuto').classList.toggle('on', !!tight);\n    drawCropCv();\n  }\n  function cropFit(){\n    const pad = 14;\n    const bw = ccv.width - pad*2, bh = ccv.height - pad*2;\n    const sc = Math.min(bw/baseImg.width, bh/baseImg.height);\n    const w = baseImg.width*sc, h = baseImg.height*sc;\n    return { x:(ccv.width - w)/2, y:(ccv.height - h)/2, w, h };\n  }\n  function drawCropCv(){\n    if (!baseImg) return;\n    cctx.clearRect(0, 0, ccv.width, ccv.height);\n    const f = cropFit();\n    const sq = 12;\n    for (let y = 0; y < ccv.height; y += sq)\n      for (let x = 0; x < ccv.width; x += sq){\n        cctx.fillStyle = ((x/sq + y/sq) % 2) ? '#f2efeb' : '#ffffff';\n        cctx.fillRect(x, y, sq, sq);\n      }\n    cctx.drawImage(baseImg, f.x, f.y, f.w, f.h);\n    const r = { x:f.x + crop.x*f.w, y:f.y + crop.y*f.h, w:crop.w*f.w, h:crop.h*f.h };\n    cctx.save();\n    cctx.fillStyle = 'rgba(20,18,14,.45)';\n    cctx.fillRect(0, 0, ccv.width, r.y);\n    cctx.fillRect(0, r.y + r.h, ccv.width, ccv.height - r.y - r.h);\n    cctx.fillRect(0, r.y, r.x, r.h);\n    cctx.fillRect(r.x + r.w, r.y, ccv.width - r.x - r.w, r.h);\n    cctx.strokeStyle = '#f7941d'; cctx.lineWidth = 2;\n    cctx.strokeRect(r.x, r.y, r.w, r.h);\n    cctx.fillStyle = '#f7941d';\n    [[r.x, r.y], [r.x + r.w, r.y], [r.x, r.y + r.h], [r.x + r.w, r.y + r.h]].forEach(p => {\n      cctx.beginPath(); cctx.arc(p[0], p[1], 8, 0, Math.PI*2); cctx.fill();\n      cctx.strokeStyle = '#fff'; cctx.lineWidth = 2.2; cctx.stroke();\n      cctx.strokeStyle = '#f7941d'; cctx.lineWidth = 2;\n    });\n    cctx.restore();\n  }\n  let cdrag = null;\n  const cPos = e => {\n    const b = ccv.getBoundingClientRect();\n    return { x:(e.clientX - b.left)*ccv.width/b.width, y:(e.clientY - b.top)*ccv.height/b.height };\n  };\n  ccv.addEventListener('pointerdown', e => {\n    if (!baseImg) return;\n    const p = cPos(e), f = cropFit();\n    const r = { x:f.x + crop.x*f.w, y:f.y + crop.y*f.h, w:crop.w*f.w, h:crop.h*f.h };\n    const corners = { tl:[r.x, r.y], tr:[r.x + r.w, r.y], bl:[r.x, r.y + r.h], br:[r.x + r.w, r.y + r.h] };\n    let hit = null;\n    Object.keys(corners).forEach(k => {\n      if (Math.hypot(p.x - corners[k][0], p.y - corners[k][1]) < 22) hit = k;\n    });\n    if (!hit && p.x > r.x && p.x < r.x + r.w && p.y > r.y && p.y < r.y + r.h) hit = 'move';\n    if (!hit) return;\n    cdrag = { k:hit, sx:p.x, sy:p.y, c:Object.assign({}, crop), f };\n    ccv.setPointerCapture(e.pointerId);\n    e.preventDefault();\n  });\n  ccv.addEventListener('pointermove', e => {\n    if (!cdrag) return;\n    const p = cPos(e);\n    const dx = (p.x - cdrag.sx)/cdrag.f.w, dy = (p.y - cdrag.sy)/cdrag.f.h;\n    const c0 = cdrag.c, MIN = 0.08;\n    if (cdrag.k === 'move'){\n      crop.x = clamp(c0.x + dx, 0, 1 - c0.w);\n      crop.y = clamp(c0.y + dy, 0, 1 - c0.h);\n    } else {\n      let x0 = c0.x, y0 = c0.y, x1 = c0.x + c0.w, y1 = c0.y + c0.h;\n      if (cdrag.k[0] === 't') y0 = clamp(y0 + dy, 0, y1 - MIN); else y1 = clamp(y1 + dy, y0 + MIN, 1);\n      if (cdrag.k[1] === 'l') x0 = clamp(x0 + dx, 0, x1 - MIN); else x1 = clamp(x1 + dx, x0 + MIN, 1);\n      crop = { x:x0, y:y0, w:x1 - x0, h:y1 - y0 };\n    }\n    drawCropCv();\n    e.preventDefault();\n  });\n  const cEnd = () => { if (cdrag){ cdrag = null; applyCrop(); } };\n  ccv.addEventListener('pointerup', cEnd);\n  ccv.addEventListener('pointercancel', cEnd);\n  document.getElementById('pmtCropAuto').addEventListener('click', () => {\n    if (!autoCrop) return;\n    crop = Object.assign({}, autoCrop);\n    drawCropCv(); applyCrop();\n  });\n  document.getElementById('pmtCropReset').addEventListener('click', () => {\n    crop = { x:0, y:0, w:1, h:1 };\n    drawCropCv(); applyCrop();\n  });\n  /* ================= ENGRAVING CONTROLS ================= */\n  /* v1.4: the engraving-artwork picker is gone from the UI \u2014 the mode is\n     still chosen automatically (autoEngMode) and kept in the state. */\n  function syncEngUI(){\n    const wrap = document.getElementById('pmtEng');\n    if (wrap) wrap.classList.toggle('on', !!cropped);\n  }\n\n  /* bg tolerance + remove toggle */\n  const tolEl = document.getElementById('pmtBgTol');\n  tolEl.addEventListener('input', () => {\n    document.getElementById('pmtBgTolVal').textContent = tolEl.value;\n    fill(tolEl);\n  });\n  tolEl.addEventListener('change', () => {\n    st.bgTol = +tolEl.value;\n    document.getElementById('pmtBgTolVal').textContent = st.bgTol;\n    if (rawImg && !hadAlpha) processImage();\n  });\n  const bgBtn = document.getElementById('pmtBgRemove');\n  bgBtn.addEventListener('click', () => {\n    st.bgRemove = !st.bgRemove;\n    bgBtn.classList.toggle('on', st.bgRemove);\n    bgBtn.textContent = (st.bgRemove ? '\u2713 ' : '') + 'Remove BG';\n    document.getElementById('pmtFinetune').classList.toggle('on', st.bgRemove && !hadAlpha);\n    if (rawImg) processImage();\n  });\n\n  /* ================= PER-SIDE ARTWORK =================\n     Rectangle aur Round dono side engrave ho sakte hain, aur customer chahe to\n     har side par alag design de sakta hai. Working variables (rawImg, engImg...)\n     hamesha \"jis side ko abhi edit kar rahe hain\" uske hote hain; side badalte hi\n     purani side snapshot ho jaati hai aur nayi load ho jaati hai. */\n  const ART = { front:null, back:null };\n  let editSide = 'front';\n\n  function blankArt(){\n    return { rawImg:null, baseImg:null, cropped:null, engImg:null, engBlack:null,\n             hadAlpha:false, origFile:null, needAutoEng:false,\n             crop:{ x:0, y:0, w:1, h:1 }, autoCrop:null,\n             bgRemove:true, bgTol:45, engMode:'mask', engThr:128, engPlanAlts:[] };\n  }\n  function snapArt(){\n    return { rawImg, baseImg, cropped, engImg, engBlack, hadAlpha, origFile, needAutoEng,\n             crop:Object.assign({}, crop), autoCrop:autoCrop ? Object.assign({}, autoCrop) : null,\n             bgRemove:st.bgRemove, bgTol:st.bgTol, engMode:st.engMode, engThr:st.engThr,\n             engPlanAlts:(st.engPlanAlts || []).slice() };\n  }\n  function putArt(a){\n    rawImg = a.rawImg; baseImg = a.baseImg; cropped = a.cropped;\n    engImg = a.engImg; engBlack = a.engBlack;\n    hadAlpha = a.hadAlpha; origFile = a.origFile; needAutoEng = a.needAutoEng;\n    crop = Object.assign({}, a.crop);\n    autoCrop = a.autoCrop ? Object.assign({}, a.autoCrop) : null;\n    st.bgRemove = a.bgRemove; st.bgTol = a.bgTol; st.engMode = a.engMode; st.engThr = a.engThr;\n    st.engPlanAlts = (a.engPlanAlts || []).slice();\n  }\n  function artFor(v){ return st.diffArt ? (v === editSide ? snapArt() : ART[v]) : snapArt(); }\n\n  function refreshLogoUI(){\n    const has = !!baseImg;\n    drop.classList.toggle('uploaded', has);\n    const thumb = document.getElementById('pmtThumbImg');\n    if (has){\n      thumb.src = baseImg.src;\n      const label = (origFile && origFile.name\n                      ? (origFile.name.length > 20 ? origFile.name.slice(0, 17) + '\u2026' : origFile.name)\n                      : 'Logo') + (hadAlpha ? ' \u00B7 transparent' : ' \u00B7 background removed');\n      document.getElementById('pmtDoneTitle').textContent = label;\n      document.getElementById('pmtAccStatus').textContent = '\u2713 ' + label;\n    } else {\n      thumb.removeAttribute('src');\n      document.getElementById('pmtAccStatus').textContent = 'JPG \u00B7 PNG \u00B7 WebP \u00B7 PDF';\n    }\n    document.querySelector('.pmt-tabs button[data-tab=\"logo\"]').classList.toggle('dot', has);\n    const bg = document.getElementById('pmtBgRemove');\n    bg.classList.toggle('on', st.bgRemove);\n    bg.textContent = (st.bgRemove ? '\u2713 ' : '') + 'Remove BG';\n    const tol = document.getElementById('pmtBgTol');\n    tol.value = st.bgTol; fill(tol);\n    document.getElementById('pmtBgTolVal').textContent = st.bgTol;\n    document.getElementById('pmtFinetune').classList.toggle('on', st.bgRemove && !hadAlpha && has);\n    cropUI();\n    syncEngUI();\n    renderShapeCards();\n  }\n\n  function syncEditSide(){\n    const el = document.getElementById('pmtEditSide');\n    if (!el) return;\n    const show = false;   /* v1.2: the Front / Back side tabs say this now */\n    el.classList.toggle('hide', !show);\n    el.classList.toggle('on', show);\n    if (show){\n      el.innerHTML = 'Editing artwork for <b>' + (st.view === 'back' ? 'Back Side' : 'Front Side') +\n                     '</b> \u2014 use the Front / Back switch on the preview to work on the other side.';\n    }\n  }\n\n  function useSide(v){\n    if (!st.diffArt || v === editSide) return;\n    ART[editSide] = snapArt();\n    editSide = v;\n    putArt(ART[v] || blankArt());\n    refreshLogoUI();\n    applyLimits();\n  }\n  function setView(v){\n    const changed = st.view !== v;\n    if (changed || (st.diffArt && editSide !== v)){ st.view = v; useSide(v); }\n    syncEditSide();\n    syncSideTabs();\n    if (changed) renderTextList();\n  }\n\n  /* ---------- side tabs (Front Side / Back Side) ---------- */\n  function syncSideTabs(){\n    const bar = document.getElementById('pmtSideTabs');\n    if (!bar) return;\n    const two = cur().sides !== 1 && st.printMode === 'both';\n    bar.classList.toggle('hide', !two);\n    const wrap = document.getElementById('pmtSideWrap');\n    if (wrap) wrap.classList.toggle('no-tabs', !two);\n    bar.querySelectorAll('button').forEach(b => {\n      const isBack = b.dataset.side === 'back';\n      /* v1.5: with \"same design on both sides\" ticked there is only one side to edit */\n      b.disabled = (isBack ? !st.backOn : !st.frontOn) || (isBack && !st.diffArt);\n      b.classList.toggle('on', b.dataset.side === st.view && !b.disabled);\n    });\n    const same = document.getElementById('pmtArtMode');\n    if (same) same.classList.toggle('hide', !two);\n  }\n  document.querySelectorAll('#pmtSideTabs button').forEach(b => {\n    b.addEventListener('click', () => {\n      setView(b.dataset.side);\n      syncSeg();\n      showTab('logo');\n      draw();\n    });\n  });\n\n  function setDiffArt(on){\n    if (on === st.diffArt) return;\n    if (on){\n      /* v2.3: the side you are on keeps the design, the other side starts empty */\n      const now = snapArt();\n      editSide = st.view === 'back' ? 'back' : 'front';\n      ART[editSide] = now;\n      ART[editSide === 'front' ? 'back' : 'front'] = blankArt();\n    } else {\n      /* v1.3: jis side par ho wahi design dono sides par chalega */\n      const keep = snapArt();\n      editSide = 'front';\n      ART.front = ART.back = null;\n      putArt(keep);\n      refreshLogoUI();\n    }\n    st.diffArt = on;\n    const same = document.getElementById('pmtSameBoth');\n    if (same) same.checked = !on;\n    syncEditSide();\n    applyLimits();\n  }\n  const sameBoth = document.getElementById('pmtSameBoth');\n  if (sameBoth) sameBoth.addEventListener('change', () => {\n    setDiffArt(!sameBoth.checked);     /* checked = one design on both sides */\n    if (sameBoth.checked && st.frontOn){ setView('front'); syncSeg(); }\n    syncSideTabs(); draw();\n  });\n\n  /* har shape apne hisaab se: hook sirf single side, baaki dono side */\n  /* Engraving side is a property of the product, not a choice:\n     Rectangle & Round engrave on both faces, Hook only on the front. */\n  function applyShapeSides(){\n    const two = cur().sides !== 1;\n    st.printMode = two ? 'both' : 'front';\n    if (!two && st.diffArt) setDiffArt(false);\n    /* v1.5: default is one design on both sides \u2014 customer unticks it for separate sides */\n    const am = document.getElementById('pmtArtMode');\n    if (am) am.classList.toggle('hide', !two);\n    syncPrintMode();\n    syncEditSide();\n  }\n\n  /* ================= SIDE / SIZE CONTROLS ================= */\n  function syncSizePanel(){\n    const fOn = st.frontOn && st.view === 'front';\n    const bOn = st.backOn && st.view === 'back';\n    document.getElementById('pmtFrontBlock').classList.toggle('off', !fOn);\n    document.getElementById('pmtBackBlock').classList.toggle('off', !bOn);\n    const note = document.getElementById('pmtSizeNote');\n    if (note){\n      let msg = '';\n      if (fOn && st.backOn)       msg = 'Switch preview to Back Side to resize it. ';\n      else if (bOn && st.frontOn) msg = 'Switch preview to Front Side to resize it. ';\n      note.textContent = msg;\n    }\n  }\n  function syncSeg(){\n    /* v3.0: the stage itself shows both sides, so the little Front/Back switch is retired */\n    const seg = document.getElementById('pmtSeg');\n    if (seg) seg.style.display = 'none';\n    document.querySelectorAll('#pmtSeg button').forEach(e => e.classList.toggle('on', e.dataset.view === st.view));\n    syncSizePanel();\n    syncSideTabs();\n    scheduleBoth();\n  }\n  function syncPrintMode(){\n    st.frontOn = st.printMode !== 'back';\n    st.backOn  = st.printMode !== 'front';\n    if (!st.frontOn && st.view === 'front'){ st.view = 'back'; useSide('back'); }\n    if (!st.backOn && st.view === 'back'){ st.view = 'front'; useSide('front'); }\n    document.querySelectorAll('#pmtSeg button').forEach(b => {\n      b.disabled = b.dataset.view === 'front' ? !st.frontOn : !st.backOn;\n    });\n    /* jo side band hai uski text lines dusri side par le aao */\n    st.lines.forEach(l => {\n      if (l.p === 'front' && !st.frontOn) l.p = st.backOn ? 'back' : 'off';\n      if (l.p === 'back'  && !st.backOn)  l.p = st.frontOn ? 'front' : 'off';\n    });\n    renderTextList();\n    syncSeg();\n  }\n  document.querySelectorAll('#pmtSeg button').forEach(b => {\n    b.addEventListener('click', () => {\n      setView(b.dataset.view);\n      syncSeg(); draw();\n    });\n  });\n\n  const fSize = document.getElementById('pmtFrontSize');\n  fSize.addEventListener('input', () => {\n    st.front.w = st.front.wRef = clamp(+fSize.value, +fSize.min, maxLogoW());\n    fSize.value = st.front.w;\n    document.getElementById('pmtFrontSizeVal').textContent = fmt(st.front.w) + ' mm';\n    setView('front'); syncSeg(); fill(fSize); scheduleDraw();\n  });\n  const bSize = document.getElementById('pmtBackSize');\n  bSize.addEventListener('input', () => {\n    st.back.w = st.back.wRef = clamp(+bSize.value, +bSize.min, maxLogoW());\n    bSize.value = st.back.w;\n    document.getElementById('pmtBackSizeVal').textContent = fmt(st.back.w) + ' mm';\n    setView('back'); syncSeg(); fill(bSize); scheduleDraw();\n  });\n\n  /* ================= TEXT FIELDS ================= */\n  const textList = document.getElementById('pmtTextList');\n  const MAX_LINES = 3;\n  const sideLines = () => st.lines.filter(l => l.p === st.view);\n  function renderTextList(){\n    textList.innerHTML = '';\n    /* v1.2: text belongs to the side you are on \u2014 the side tabs pick it */\n    if (!st.lines.some(l => l.p === st.view)) st.lines.push({ v:'', p:st.view, s:1, ox:0, oy:0 });\n    st.lines.forEach((ln, i) => {\n      if (ln.p !== st.view) return;\n      const row = document.createElement('div');\n      row.className = 'pmt-field';\n      row.innerHTML =\n        '<textarea rows=\"2\" maxlength=\"80\" placeholder=\"Shop name, address or phone \u2014 2 lines allowed\"></textarea>' +\n        '<div class=\"pmt-frow\">' +\n          '<div class=\"pmt-tsize\"><button type=\"button\" data-d=\"-1\">\u2212</button>' +\n          '<button type=\"button\" data-d=\"1\">+</button></div>' +\n          '<button type=\"button\" class=\"pmt-del' + (sideLines().length > 1 ? '' : ' hide') + '\">\u00D7</button>' +\n        '</div>';\n      const inp = row.querySelector('textarea');\n      inp.value = ln.v;\n      inp.addEventListener('input', () => { ln.v = inp.value; scheduleDraw(); });\n      row.querySelectorAll('.pmt-tsize button').forEach(b => {\n        b.addEventListener('click', () => {\n          ln.s = clamp((ln.s || 1) + (+b.dataset.d)*0.2, 0.5, ln._sMax || 2.4);\n          draw();\n        });\n      });\n      row.querySelector('.pmt-del').addEventListener('click', () => {\n        st.lines.splice(i, 1);\n        if (!sideLines().length) st.lines.push({ v:'', p:st.view, s:1, ox:0, oy:0 });\n        renderTextList(); draw();\n      });\n      textList.appendChild(row);\n    });\n    const ttl = document.getElementById('pmtTextSideTtl');\n    if (ttl) ttl.textContent = st.view === 'back' ? 'Back Side text' : 'Front Side text';\n    document.getElementById('pmtAddText').style.display = sideLines().length >= MAX_LINES ? 'none' : 'block';\n  }\n  document.getElementById('pmtAddText').addEventListener('click', () => {\n    if (sideLines().length >= MAX_LINES) return;\n    st.lines.push({ v:'', p:st.view, s:1, ox:0, oy:0 });\n    renderTextList();\n  });\n  document.getElementById('pmtBackBtn').addEventListener('click', pmtCloseModal);\n\n  function fill(el){\n    const mn = +el.min || 0, mx = +el.max || 100;\n    el.style.setProperty('--fill', ((el.value - mn)/(mx - mn)*100) + '%');\n  }\n  document.querySelectorAll('.pmt-slider-row input[type=range]').forEach(fill);\n\n  /* ================= DRAG / RESIZE ON PREVIEW ================= */\n  function setEngWidth(v){\n    const w = st.view === 'back' ? 'back' : 'front';\n    const el = document.getElementById(w === 'back' ? 'pmtBackSize' : 'pmtFrontSize');\n    v = clamp(Math.round(v*2)/2, +el.min, maxLogoW());\n    st[w].w = st[w].wRef = v; el.value = v;\n    document.getElementById(w === 'back' ? 'pmtBackSizeVal' : 'pmtFrontSizeVal').textContent = fmt(v) + ' mm';\n    fill(el);\n  }\n  const curSide = () => st.view === 'back' ? st.back : st.front;\n  function cvPos(e){\n    const r = cv.getBoundingClientRect();\n    return { x:(e.clientX - r.left)*CVW/r.width, y:(e.clientY - r.top)*CVH/r.height };\n  }\n  const ptrs = new Map();\n  let drag = null, pinch = null;\n\n  function hitTarget(p){\n    const near = (b, pad) => b && p.x > b.x - pad && p.x < b.x + b.w + pad &&\n                              p.y > b.y - pad && p.y < b.y + b.h + pad;\n    const handle = b => b && Math.hypot(p.x - (b.x + b.w), p.y - (b.y + b.h + 6)) < 22;\n    for (let i = 0; i < textBoxes.length; i++) if (handle(textBoxes[i])) return { t:'text' + i, mode:'size' };\n    if (handle(printBox)) return { t:'logo', mode:'size' };\n    const hits = [];\n    for (let i = 0; i < textBoxes.length; i++) if (near(textBoxes[i], 10)) hits.push('text' + i);\n    if (hits.length){\n      const c = hits.indexOf(sel);\n      return { t:hits[(c + 1) % hits.length], mode:'move' };\n    }\n    if (near(printBox, 8)) return { t:'logo', mode:'move' };\n    return null;\n  }\n  function objFor(t){\n    if (t === 'logo') return null;\n    const i = +t.slice(4);\n    const L = lines(st.view);\n    return L[i] || null;\n  }\n\n  cv.addEventListener('pointerdown', e => {\n    const ae = document.activeElement;\n    if (ae && ae !== document.body && ae.blur) ae.blur();\n    if (teamMode || !lastG) return;\n    const p = cvPos(e);\n    ptrs.set(e.pointerId, p);\n    if (ptrs.size === 2){\n      const q = [...ptrs.values()];\n      const mid = { x:(q[0].x + q[1].x)/2, y:(q[0].y + q[1].y)/2 };\n      const cd = b => b ? Math.hypot(mid.x - (b.x + b.w/2), mid.y - (b.y + b.h/2)) : Infinity;\n      let target = 'logo', best = cd(printBox);\n      textBoxes.forEach((b, i) => { const dd = cd(b); if (dd < best){ best = dd; target = 'text' + i; } });\n      if (sel !== target){ sel = target; draw(); }\n      const ln = objFor(target);\n      pinch = { d:Math.hypot(q[0].x - q[1].x, q[0].y - q[1].y),\n                w:curSide().w, t:target, ls:(ln ? (ln.s || 1) : 1) };\n      drag = null;\n      return;\n    }\n    /* tapping the other plate simply switches to that side */\n    if (bothMode()){\n      const rs = sideRects();\n      for (let i = 0; i < rs.length; i++){\n        const r = rs[i];\n        if (r.where !== st.view && p.x >= r.x && p.x <= r.x + r.w && p.y >= r.y && p.y <= r.y + r.h){\n          ptrs.delete(e.pointerId);\n          setView(r.where); syncSeg(); draw();\n          return;\n        }\n      }\n    }\n    const hit = hitTarget(p);\n    if (!hit){ if (sel){ sel = null; draw(); } return; }\n    if (sel !== hit.t){ sel = hit.t; draw(); }\n    const ln = objFor(hit.t);\n    const off = ln ? { x:ln.ox || 0, y:ln.oy || 0 } : curSide().off;\n    drag = { t:hit.t, mode:hit.mode, sx:p.x, sy:p.y, ox:off.x, oy:off.y,\n             w:curSide().w, ls:(ln ? (ln.s || 1) : 1) };\n    dragging = hit.t;\n    cv.classList.add('dragging');\n    cv.setPointerCapture(e.pointerId);\n    e.preventDefault();\n  });\n  cv.addEventListener('pointermove', e => {\n    if (!ptrs.has(e.pointerId)) return;\n    ptrs.set(e.pointerId, cvPos(e));\n    if (pinch && ptrs.size === 2){\n      const q = [...ptrs.values()];\n      const d = Math.hypot(q[0].x - q[1].x, q[0].y - q[1].y);\n      const ln = objFor(pinch.t);\n      if (ln) ln.s = clamp(pinch.ls*(d/pinch.d), 0.5, ln._sMax || 2.4);\n      else setEngWidth(pinch.w*(d/pinch.d));\n      scheduleDraw(); e.preventDefault();\n      return;\n    }\n    if (!drag || !lastG) return;\n    const p = cvPos(e);\n    const ln = objFor(drag.t);\n    if (drag.mode === 'move'){\n      const d = toPlate(lastG, p.x - drag.sx, p.y - drag.sy);\n      const du = MM(d.u), dv = MM(d.v);\n      if (ln){ ln.ox = drag.ox + du; ln.oy = drag.oy + dv; }\n      else { const off = curSide().off; off.x = drag.ox + du; off.y = drag.oy + dv; }\n    } else if (ln){\n      ln.s = clamp(drag.ls*(1 + (p.x - drag.sx)/160), 0.5, ln._sMax || 2.4);\n    } else {\n      setEngWidth(drag.w + (p.x - drag.sx)*2/lastG.kmm);\n    }\n    scheduleDraw(); e.preventDefault();\n  });\n  const endPtr = e => {\n    ptrs.delete(e.pointerId);\n    if (ptrs.size < 2) pinch = null;\n    if (!ptrs.size){ drag = null; dragging = null; cv.classList.remove('dragging'); draw(); }\n  };\n  cv.addEventListener('pointerup', endPtr);\n  cv.addEventListener('pointercancel', endPtr);\n\n  /* ================= ENGRAVING FILES (600 DPI) ================= */\n  const DPI = 600;\n  const SVG_DPI = 1200;                     // tracing grid for the vector file\n  function crc32(buf){\n    let c, tbl = crc32.t;\n    if (!tbl){\n      tbl = crc32.t = new Int32Array(256);\n      for (let n = 0; n < 256; n++){\n        c = n;\n        for (let k = 0; k < 8; k++) c = c & 1 ? 0xEDB88320 ^ (c >>> 1) : c >>> 1;\n        tbl[n] = c;\n      }\n    }\n    let crc = -1;\n    for (let i = 0; i < buf.length; i++) crc = (crc >>> 8) ^ tbl[(crc ^ buf[i]) & 0xFF];\n    return (crc ^ -1) >>> 0;\n  }\n  function blobBytes(b){\n    if (b.arrayBuffer) return b.arrayBuffer();\n    return new Promise((res, rej) => {\n      const r = new FileReader();\n      r.onload = () => res(r.result);\n      r.onerror = rej;\n      r.readAsArrayBuffer(b);\n    });\n  }\n  async function pngDpi(blob, dpi){\n    try{\n      const bytes = new Uint8Array(await blobBytes(blob));\n      const ppm = Math.round(dpi/0.0254);\n      const data = new Uint8Array(9);\n      const dv = new DataView(data.buffer);\n      dv.setUint32(0, ppm); dv.setUint32(4, ppm); data[8] = 1;\n      const chunk = new Uint8Array(21);\n      new DataView(chunk.buffer).setUint32(0, 9);\n      chunk.set([0x70, 0x48, 0x59, 0x73], 4);\n      chunk.set(data, 8);\n      const src = new Uint8Array(13);\n      src.set(chunk.subarray(4, 8), 0); src.set(data, 4);\n      new DataView(chunk.buffer).setUint32(17, crc32(src));\n      const at = 33;\n      const out = new Uint8Array(bytes.length + chunk.length);\n      out.set(bytes.subarray(0, at), 0);\n      out.set(chunk, at);\n      out.set(bytes.subarray(at), at + chunk.length);\n      return new Blob([out], { type:'image/png' });\n    }catch(e){ return blob; }\n  }\n\n  /* laser software ke liye: black = engrave, white = skip */\n  function engCanvas(where, dpi, alpha){\n    const A = layout(where);\n    if (!A.items.length) return null;\n    const sc = dpi/25.4/PU;                 // px per plate unit\n    const pad = U(0.5);\n    let minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity;\n    A.items.forEach(it => {\n      minX = Math.min(minX, it.cx - it.w/2); maxX = Math.max(maxX, it.cx + it.w/2);\n      minY = Math.min(minY, it.top);         maxY = Math.max(maxY, it.top + it.h);\n    });\n    minX -= pad; minY -= pad; maxX += pad; maxY += pad;\n    const c = document.createElement('canvas');\n    c.width  = Math.max(1, Math.round((maxX - minX)*sc));\n    c.height = Math.max(1, Math.round((maxY - minY)*sc));\n    const x = c.getContext('2d');\n    x.imageSmoothingEnabled = true; x.imageSmoothingQuality = 'high';\n    if (!alpha){ x.fillStyle = '#ffffff'; x.fillRect(0, 0, c.width, c.height); }\n    x.setTransform(sc, 0, 0, sc, -minX*sc, -minY*sc);\n    x.fillStyle = '#000000';\n    A.items.forEach(it => {\n      if (it.t === 'logo'){\n        if (engBlack && engBlack.width) x.drawImage(engBlack, it.cx - it.w/2, it.top, it.w, it.h);\n      } else {\n        x.font = engFont(it.m.fs);\n        x.textAlign = 'center'; x.textBaseline = 'top';\n        it.m.parts.forEach((t, i) => x.fillText(t, it.cx, it.top + it.m.fs*1.2*i));\n      }\n    });\n    return { canvas:c, wmm: MM(maxX - minX), hmm: MM(maxY - minY),\n             mm: fmt(MM(maxX - minX)) + 'x' + fmt(MM(maxY - minY)) };\n  }\n  async function engFile(where){\n    const e = engCanvas(where, DPI);\n    if (!e) return null;\n    const blob = await new Promise(r => e.canvas.toBlob(r, 'image/png'));\n    return { blob: await pngDpi(blob, DPI), mm: e.mm };\n  }\n\n  /* ---------- vector engraving file (SVG) ----------\n     The artwork is rendered on a fine grid, the outline is taken with\n     interpolated marching squares (so the edges are not stair-stepped) and\n     every outline is then fitted with smooth curves, with real corners kept\n     sharp. The result is a clean vector the laser can cut straight away. */\n  function msContours(fld, w, h, t){\n    const segs = [];\n    const ip = (a, b) => {\n      const d = b - a;\n      return Math.abs(d) < 1e-9 ? 0.5 : (t - a)/d;\n    };\n    for (let y = 0; y < h - 1; y++){\n      const r0 = y*w, r1 = r0 + w;\n      for (let x = 0; x < w - 1; x++){\n        const f00 = fld[r0 + x], f10 = fld[r0 + x + 1], f11 = fld[r1 + x + 1], f01 = fld[r1 + x];\n        const ci = (f00 > t ? 1 : 0) | (f10 > t ? 2 : 0) | (f11 > t ? 4 : 0) | (f01 > t ? 8 : 0);\n        if (ci === 0 || ci === 15) continue;\n        const T = [x + ip(f00, f10), y];\n        const R = [x + 1, y + ip(f10, f11)];\n        const B = [x + ip(f01, f11), y + 1];\n        const L = [x, y + ip(f00, f01)];\n        const put = (p, q) => segs.push([p[0], p[1], q[0], q[1]]);\n        switch (ci){\n          case 1: case 14: put(L, T); break;\n          case 2: case 13: put(T, R); break;\n          case 3: case 12: put(L, R); break;\n          case 4: case 11: put(R, B); break;\n          case 6: case 9:  put(T, B); break;\n          case 7: case 8:  put(L, B); break;\n          case 5: {\n            const c = (f00 + f10 + f11 + f01)/4;\n            if (c > t){ put(L, T); put(R, B); } else { put(T, R); put(L, B); }\n            break;\n          }\n          case 10: {\n            const c = (f00 + f10 + f11 + f01)/4;\n            if (c > t){ put(T, R); put(L, B); } else { put(L, T); put(R, B); }\n            break;\n          }\n        }\n      }\n    }\n    /* join the little segments into closed rings */\n    const key = (x, y) => Math.round(x*128) + ',' + Math.round(y*128);\n    const map = new Map();\n    segs.forEach((s, i) => {\n      [key(s[0], s[1]), key(s[2], s[3])].forEach(k => {\n        let a = map.get(k);\n        if (!a){ a = []; map.set(k, a); }\n        a.push(i);\n      });\n    });\n    const used = new Uint8Array(segs.length), loops = [];\n    for (let i = 0; i < segs.length; i++){\n      if (used[i]) continue;\n      used[i] = 1;\n      const s = segs[i], pts = [[s[0], s[1]], [s[2], s[3]]];\n      let cx = s[2], cy = s[3];\n      const startKey = key(s[0], s[1]);\n      for (let guard = 0; guard < segs.length + 8; guard++){\n        if (key(cx, cy) === startKey) break;\n        const arr = map.get(key(cx, cy));\n        let nxt = -1;\n        if (arr) for (let k = 0; k < arr.length; k++) if (!used[arr[k]]){ nxt = arr[k]; break; }\n        if (nxt < 0) break;\n        used[nxt] = 1;\n        const q = segs[nxt];\n        const fromStart = key(q[0], q[1]) === key(cx, cy);\n        cx = fromStart ? q[2] : q[0];\n        cy = fromStart ? q[3] : q[1];\n        pts.push([cx, cy]);\n      }\n      if (pts.length > 5) loops.push(pts);\n    }\n    return loops;\n  }\n  function rdp(pts, eps){\n    if (pts.length < 3) return pts;\n    const keep = new Uint8Array(pts.length);\n    keep[0] = keep[pts.length - 1] = 1;\n    const stack = [[0, pts.length - 1]];\n    while (stack.length){\n      const seg = stack.pop(), a = pts[seg[0]], b = pts[seg[1]];\n      let far = -1, best = eps;\n      const dx = b[0] - a[0], dy = b[1] - a[1], len = Math.hypot(dx, dy) || 1;\n      for (let i = seg[0] + 1; i < seg[1]; i++){\n        const d = Math.abs(dy*(pts[i][0] - a[0]) - dx*(pts[i][1] - a[1]))/len;\n        if (d > best){ best = d; far = i; }\n      }\n      if (far > 0){ keep[far] = 1; stack.push([seg[0], far], [far, seg[1]]); }\n    }\n    return pts.filter((p, i) => keep[i]);\n  }\n  /* a closed ring has to be cut in two before Douglas-Peucker, otherwise\n     start and end are the same point and everything collapses */\n  function rdpLoop(pts, eps){\n    if (pts.length < 6) return pts;\n    let far = 1, best = -1;\n    for (let i = 1; i < pts.length - 1; i++){\n      const d = Math.hypot(pts[i][0] - pts[0][0], pts[i][1] - pts[0][1]);\n      if (d > best){ best = d; far = i; }\n    }\n    const a = rdp(pts.slice(0, far + 1), eps), b = rdp(pts.slice(far), eps);\n    return a.concat(b.slice(1));\n  }\n  /* closed ring of points -> smooth cubic path, sharp where the outline really turns */\n  function ringToPath(ring, k, r3){\n    let p = ring.slice();\n    if (p.length > 1 &&\n        Math.abs(p[0][0] - p[p.length - 1][0]) < 1e-6 &&\n        Math.abs(p[0][1] - p[p.length - 1][1]) < 1e-6) p.pop();\n    const n = p.length;\n    if (n < 3) return '';\n    const at = i => p[(i % n + n) % n];\n    const corner = new Uint8Array(n);\n    for (let i = 0; i < n; i++){\n      const a = at(i - 1), b = at(i), c = at(i + 1);\n      const v1x = b[0] - a[0], v1y = b[1] - a[1], v2x = c[0] - b[0], v2y = c[1] - b[1];\n      const l1 = Math.hypot(v1x, v1y), l2 = Math.hypot(v2x, v2y);\n      if (l1 < 1e-9 || l2 < 1e-9){ corner[i] = 1; continue; }\n      const cos = (v1x*v2x + v1y*v2y)/(l1*l2);\n      if (cos < 0.72) corner[i] = 1;            /* turns more than ~44\u00B0 = a real corner */\n    }\n    const X = i => r3(at(i)[0]*k), Y = i => r3(at(i)[1]*k);\n    let d = 'M' + X(0) + ' ' + Y(0);\n    for (let i = 0; i < n; i++){\n      const p0 = at(i - 1), p1 = at(i), p2 = at(i + 1), p3 = at(i + 2);\n      let c1x, c1y, c2x, c2y;\n      if (corner[i]){ c1x = p1[0] + (p2[0] - p1[0])/3; c1y = p1[1] + (p2[1] - p1[1])/3; }\n      else { c1x = p1[0] + (p2[0] - p0[0])/6; c1y = p1[1] + (p2[1] - p0[1])/6; }\n      if (corner[(i + 1) % n]){ c2x = p2[0] - (p2[0] - p1[0])/3; c2y = p2[1] - (p2[1] - p1[1])/3; }\n      else { c2x = p2[0] - (p3[0] - p1[0])/6; c2y = p2[1] - (p3[1] - p1[1])/6; }\n      /* a straight run stays a straight line \u2014 no wobble on long edges */\n      const sx = p2[0] - p1[0], sy = p2[1] - p1[1], sl = Math.hypot(sx, sy) || 1;\n      const off = (qx, qy) => Math.abs(sy*(qx - p1[0]) - sx*(qy - p1[1]))/sl;\n      if (off(c1x, c1y) < 0.12 && off(c2x, c2y) < 0.12){\n        d += 'L' + r3(p2[0]*k) + ' ' + r3(p2[1]*k);\n      } else {\n        d += 'C' + r3(c1x*k) + ' ' + r3(c1y*k) + ' ' + r3(c2x*k) + ' ' + r3(c2y*k) +\n             ' ' + r3(p2[0]*k) + ' ' + r3(p2[1]*k);\n      }\n    }\n    return d + 'Z';\n  }\n  function engSvg(where){\n    const e = engCanvas(where, SVG_DPI, true);\n    if (!e) return null;\n    const c = e.canvas, w = c.width, h = c.height;\n    let px;\n    try{ px = c.getContext('2d').getImageData(0, 0, w, h).data; }catch(err){ return null; }\n    /* ink coverage 0..1 \u2014 anti-aliased, so the outline lands between pixels */\n    const fld = new Float32Array(w*h);\n    for (let i = 0, n = w*h; i < n; i++) fld[i] = px[i*4 + 3]/255;\n    const loops = msContours(fld, w, h, 0.5);\n    const mmPer = 25.4/SVG_DPI, r3 = v => Math.round(v*1000)/1000;\n    const minLen = Math.max(4, SVG_DPI/600);        /* skip specks smaller than ~0.05 mm */\n    let d = '';\n    loops.forEach(ring => {\n      let s = rdpLoop(ring, 0.9);\n      if (s.length < 5) return;\n      let per = 0;\n      for (let i = 1; i < s.length; i++) per += Math.hypot(s[i][0] - s[i-1][0], s[i][1] - s[i-1][1]);\n      if (per < minLen*4) return;\n      d += ringToPath(s, mmPer, r3);\n    });\n    if (!d) return null;\n    const W = r3(e.wmm), H = r3(e.hmm);\n    const svg = '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n' +\n      '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' + W + 'mm\" height=\"' + H + 'mm\" ' +\n      'viewBox=\"0 0 ' + W + ' ' + H + '\">\\n' +\n      '<title>PrintMine laser engraving \u2014 ' + e.mm + ' mm</title>\\n' +\n      '<path fill=\"#000000\" fill-rule=\"evenodd\" d=\"' + d + '\"/>\\n</svg>\\n';\n    return { blob: new Blob([svg], { type:'image/svg+xml' }), mm: e.mm };\n  }\n\n  async function viewBlob(view){\n    /* v3.3: one image per side \u2014 the stage shows both sides, the order preview must not */\n    const tmp = document.createElement('canvas');\n    tmp.width = CVW; tmp.height = CVH;\n    renderSide(tmp, view, { pad:26, wm:true });\n    return await new Promise(r => tmp.toBlob(r, 'image/png'));\n  }\n\n  /* ================= CONFIRM ================= */\n  function detailStr(where){\n    const L = lines(where).map(o => o.v.trim().replace(/\\n+/g, ' / '));\n    return L.length ? L.join(' | ') : '';\n  }\n  async function confirmDesign(btn){\n    const anyText = st.lines.some(l => String(l.v||'').trim());\n    const fArt = artFor('front'), bArt = artFor('back');\n    const anyArt = !!(fArt && fArt.engImg) || !!(bArt && bArt.engImg);\n    if (!teamMode && !anyArt && !anyText){ accOpen(); alert('Please upload your logo first, or add some text.'); return; }\n    const old = btn.textContent;\n    btn.disabled = true; btn.textContent = '\u23F3 Preparing\u2026';\n    try{\n      const props = {}, files = {};\n      props['Keychain Shape'] = cur().label;\n      props['Finish'] = 'Laser engraved \u2014 silver on black plate';\n      props['Design'] = 'Approved by Customer';\n      props['Engraving Side'] = ({ front:'Front Side Only', back:'Back Side Only',\n                                   both:'Front & Back Side' })[st.printMode];\n      const mv = o => (Math.abs(o.x) > 0.4 || Math.abs(o.y) > 0.4)\n        ? ' (moved ' + o.x.toFixed(1) + ' / ' + o.y.toFixed(1) + ' mm)' : '';\n      if (st.frontOn) props['Front Engraving'] = fmt(st.front.w) + ' mm wide' + mv(st.front.off);\n      if (st.backOn)  props['Back Engraving']  = fmt(st.back.w)  + ' mm wide' + mv(st.back.off);\n      if (st.printMode === 'both')\n        props['Artwork'] = st.diffArt ? 'Different design on each side' : 'Same design on both sides';\n      const fd = detailStr('front'), bd = detailStr('back');\n      if (fd) props['Front Text'] = fd;\n      if (bd) props['Back Text'] = bd;\n\n      let fB = null, bB = null;\n      try{\n        if (st.frontOn) fB = await viewBlob('front');\n        if (st.backOn)  bB = await viewBlob('back');\n      }catch(err){\n        wmOff = true; draw();\n        if (st.frontOn) fB = await viewBlob('front');\n        if (st.backOn)  bB = await viewBlob('back');\n      }\n      if (fB) files['Front Preview'] = new File([fB], 'keychain-front-preview.png', { type:'image/png' });\n      if (bB) files['Back Preview']  = new File([bB], 'keychain-back-preview.png',  { type:'image/png' });\n      /* \"_\" = hidden line item property: it travels to the order but is not shown in the cart */\n      for (const w of ['front','back']){\n        if (!(w === 'front' ? st.frontOn : st.backOn)) continue;\n        setView(w);\n        const p = await engFile(w);\n        if (p) files['_' + (w === 'front' ? 'Front' : 'Back') + ' Engraving File'] =\n          new File([p.blob], 'engraving-' + w + '-' + p.mm + 'mm-600dpi.png', { type:'image/png' });\n        try{\n          const s = engSvg(w);\n          if (s) files['_' + (w === 'front' ? 'Front' : 'Back') + ' Engraving SVG'] =\n            new File([s.blob], 'engraving-' + w + '-' + s.mm + 'mm.svg', { type:'image/svg+xml' });\n        }catch(err){ console.warn('SVG engraving:', err); }\n      }\n      if (st.diffArt){\n        const fa = artFor('front'), ba = artFor('back');\n        if (st.frontOn && fa && fa.origFile) files['Front Original Logo'] = fa.origFile;\n        if (st.backOn  && ba && ba.origFile) files['Back Original Logo']  = ba.origFile;\n      } else if (origFile) files['Original Logo'] = origFile;\n\n      const design = { props, files, team:teamMode, colourHex:'#141414', shapeImg:cur().img };\n      markMode('design');\n      try{ if (typeof window.pmtOnReady === 'function') window.pmtOnReady(design); }\n      catch(err){ console.error('pmtOnReady:', err); }\n      pmtCloseModal();\n    }catch(e){\n      console.error(e);\n      alert('Could not prepare the design. Please try again.');\n    }finally{\n      btn.disabled = false; btn.textContent = old;\n    }\n  }\n  document.getElementById('pmtConfirmBtn').addEventListener('click', function(){ confirmDesign(this); });\n\n  /* ---------- boot ---------- */\n  st.front.w = st.front.wRef = cur().defW;\n  st.back.w  = st.back.wRef  = cur().defW;\n  applyShapeSides();          /* syncPrintMode() isi ke andar chalta hai */\n  syncEngUI();\n  applyLimits();\n  renderTextList();\n  qApplySides();\n  shapeImg(st.shape);\n  renderShapeCards();\n  setTimeout(preloadAll, 500);\n  if (document.fonts && document.fonts.ready) document.fonts.ready.then(() => { draw(); qDraw(); });\n  draw();\n\n  return { draw, state:st, loadFile:load, confirm:confirmDesign, svg:engSvg,\n           boxes: () => ({ logo:printBox, text:textBoxes }), sel: () => sel };\n})();\n\n(function(){ const h = document.getElementById('pmt-host'); if (h) h.classList.add('pmt-ready'); })();\n\n/* ==========================================================================\n   PrintMine \u2014 Metal Keychain Live Preview \u00B7 Shopify glue\n   mk06-v31 \u00B7 Shopify v3.5 \u00B7 09 Oct 2026\n   - mounts the buttons in place of the Upload Lift + text box blocks\n   - keeps the popup shape and the page \"Type\" swatch in sync (both ways)\n   - writes the design into the product form as line-item properties\n     (text + image files) so it reaches the cart and the order\n   ========================================================================== */\n(function(){\n  var VERSION = 'mk06-v31 \u00B7 Shopify v3.5 \u00B7 09 Oct 2026';\n  /* page \"Type\" value  ->  preview shape key */\n  var TO_KEY  = { 'Rectangle':'rect1', 'Circle (Heavy)':'round', 'With Hook':'hook' };\n  var TO_TYPE = { rect1:'Rectangle', round:'Circle (Heavy)', hook:'With Hook' };\n\n  var root = document.getElementById('pmt-root');\n  if (!root) return;\n  root.setAttribute('data-version', VERSION);\n\n  function productForm(){\n    return document.querySelector('form.t4s-form__product[data-type=\"add-to-cart-form\"]:not(.is--main-sticky)') ||\n           document.querySelector('form.t4s-form__product[data-type=\"add-to-cart-form\"]') ||\n           document.querySelector('form[action*=\"/cart/add\"]');\n  }\n  function typeOption(){\n    var list = document.querySelectorAll('.t4s-swatch__option');\n    for (var i = 0; i < list.length; i++){\n      if (list[i].querySelector('[data-swatch-item][data-value=\"Rectangle\"],[data-swatch-item][data-value=\"With Hook\"],[data-swatch-item][data-value=\"Circle (Heavy)\"]'))\n        return list[i];\n    }\n    return null;\n  }\n  function pageType(){\n    var o = typeOption(); if (!o) return null;\n    var s = o.querySelector('[data-swatch-item].is--selected');\n    return s ? s.getAttribute('data-value') : null;\n  }\n\n  /* ---------- 1. mount ---------- */\n  function mount(){\n    ['pmtOverlay','pmtQOverlay'].forEach(function(id){\n      var ov = document.getElementById(id);\n      if (ov && ov.parentNode !== document.body) document.body.appendChild(ov);\n    });\n    /* v1.9: the buttons sit right under the Type swatch, above Add to Cart */\n    var after = typeOption() || document.querySelector('.t4s-form__product .t4s-swatch');\n    if (after && after.parentNode){\n      after.parentNode.insertBefore(root, after.nextSibling);\n    } else {\n      var anchor = document.querySelector('.t4s-product-form__buttons') ||\n                   document.querySelector('.shopify-app-block[id*=\"upload_lift\"]') ||\n                   document.querySelector('.t4s-product__info-container .t4s-product-form__variants');\n      if (anchor && anchor.parentNode) anchor.parentNode.insertBefore(root, anchor);\n    }\n    root.style.display = '';\n  }\n\n  /* ---------- 2. shape sync ---------- */\n  var syncing = false;\n  function setPreviewShape(key){\n    ['pmtShapes','pmtQShapes'].forEach(function(w){\n      var b = document.querySelector('#' + w + ' .pmt-shape[data-shape=\"' + key + '\"]');\n      if (b && !b.classList.contains('on')) b.click();\n    });\n  }\n  function setPageType(val){\n    var o = typeOption(); if (!o) return;\n    var it = o.querySelector('[data-swatch-item][data-value=\"' + val + '\"]');\n    if (it && !it.classList.contains('is--selected')) it.click();\n  }\n  var lastType = null;\n  function pageToPreview(){\n    if (syncing) return;\n    var t = pageType(); if (!t || t === lastType) return;\n    var key = TO_KEY[t]; if (!key) return;\n    var changed = lastType !== null;\n    var wasDesign = mode === 'design';\n    lastType = t;\n    syncing = true;\n    try{ setPreviewShape(key); } finally { syncing = false; }\n    if (changed && wasDesign) staleDesign();\n  }\n  ['pmtShapes','pmtQShapes'].forEach(function(w){\n    var wrap = document.getElementById(w);\n    if (!wrap) return;\n    wrap.addEventListener('click', function(e){\n      var b = e.target.closest && e.target.closest('.pmt-shape');\n      if (!b || syncing) return;\n      var val = TO_TYPE[b.getAttribute('data-shape')];\n      if (!val) return;\n      syncing = true;\n      try{\n        setPreviewShape(b.getAttribute('data-shape'));   /* keep both popups on the same shape */\n        setPageType(val);\n        lastType = val;\n      } finally { syncing = false; }\n    });\n  });\n  function watchSwatch(){\n    var o = typeOption(); if (!o) return;\n    new MutationObserver(function(){ setTimeout(pageToPreview, 0); })\n      .observe(o, { subtree:true, attributes:true, attributeFilter:['class'] });\n    pageToPreview();\n  }\n\n  /* ---------- 3. cart properties ---------- */\n  var lastDesign = null, mode = 'none';     /* none | quick | design | stale */\n  function clearProps(){\n    var f = productForm(); if (!f) return;\n    f.querySelectorAll('.pmt-prop').forEach(function(e){ e.parentNode.removeChild(e); });\n  }\n  function addText(f, name, value){\n    var i = document.createElement('input');\n    i.type = 'hidden'; i.className = 'pmt-prop';\n    i.name = 'properties[' + name + ']'; i.value = value;\n    f.appendChild(i);\n  }\n  function addFile(f, name, file){\n    try{\n      var dt = new DataTransfer(); dt.items.add(file);\n      var i = document.createElement('input');\n      i.type = 'file'; i.className = 'pmt-prop'; i.name = 'properties[' + name + ']';\n      i.style.cssText = 'display:none !important';\n      i.files = dt.files;\n      f.appendChild(i);\n    }catch(err){ console.warn('PMT: file not attached', name, err); }\n  }\n  function writeProps(d){\n    var f = productForm(); if (!f) return;\n    clearProps();\n    var props = Object.assign({}, d.props);\n    var t = pageType(); if (t) props['Keychain Shape'] = t;\n    Object.keys(props).forEach(function(k){ if (props[k]) addText(f, k, props[k]); });\n    Object.keys(d.files || {}).forEach(function(k){ if (d.files[k]) addFile(f, k, d.files[k]); });\n  }\n  function staleDesign(){\n    lastDesign = null; mode = 'stale'; clearProps();\n    var p = document.getElementById('pmt-summary');\n    if (p){\n      p.innerHTML = '<div class=\"pmt-sum-head\"><b style=\"color:#b3261e\">Type changed \u2014 please preview again</b>' +\n                    '<button type=\"button\" class=\"pmt-edit\" onclick=\"pmtOpenModal()\">Open preview</button></div>';\n      p.style.display = 'block';\n    }\n    document.querySelectorAll('#pmt-host .pmt-cta,#pmt-host .pmt-cta2').forEach(function(b){ b.classList.remove('muted','chosen'); });\n  }\n\n  /* ---------- 4. summary card under the buttons ---------- */\n  function esc(s){ return String(s == null ? '' : s).replace(/[&<>\"]/g, function(c){ return {'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;'}[c]; }); }\n  function renderSummary(design){\n    var panel = document.getElementById('pmt-summary'); if (!panel) return;\n    var shape = pageType() || design.props['Keychain Shape'] || '';\n    var html = '<div class=\"pmt-sum-head\"><b>' + (design.quick ? '\u2713 Logo uploaded' : '\u2713 Design ready') +\n               '</b><button type=\"button\" class=\"pmt-edit\" onclick=\"pmtOpenModal()\">' +\n               (design.quick ? 'Design it myself' : 'Edit design') + '</button></div>';\n    var lf0 = design.files['Original Logo'];\n    if (design.quick && lf0){\n      html += '<div class=\"pmt-up-row\"><span class=\"pmt-up-thumb\"><img src=\"' + URL.createObjectURL(lf0) + '\" alt=\"\"></span>' +\n              '<span class=\"pmt-up-txt\"><b>' + esc(lf0.name) + '</b>' +\n              '<small>Our team will design &amp; share preview for approval</small></span>' +\n              '<button type=\"button\" class=\"pmt-chg-btn\" id=\"pmtQuickChange\">Change</button></div>';\n      var qd = design.props['Engraving Side'], qn = design.props['Customization Note'];\n      html += '<div class=\"pmt-caps\">' +\n              (shape ? '<span class=\"pmt-cap\"><i style=\"background:#141414\"></i>' + esc(shape) + '</span>' : '') +\n              (qd ? '<span class=\"pmt-cap pmt-cap-side\">' + esc(qd) + '</span>' : '') + '</div>';\n      if (qn) html += '<div class=\"pmt-note-line\">\uD83D\uDCDD ' + esc(qn) + '</div>';\n    }\n    var f = design.files['Front Preview'], b = design.files['Back Preview'];\n    if (f || b){\n      html += '<div class=\"pmt-main-prev\">';\n      if (f) html += '<figure class=\"pmt-prev-fig\"><img src=\"' + URL.createObjectURL(f) +\n                     '\" alt=\"Front side preview\"><figcaption>Front Side</figcaption></figure>';\n      if (b) html += '<figure class=\"pmt-prev-fig\"><img src=\"' + URL.createObjectURL(b) +\n                     '\" alt=\"Back side preview\"><figcaption>Back Side</figcaption></figure>';\n      html += '</div>';\n    }\n    if (!design.quick){\n      html += '<div class=\"pmt-caps\"><span class=\"pmt-sum-flag\"><span class=\"pmt-tick\">\u2713</span>' + esc(design.props['Design']) + '</span>' +\n              '<span class=\"pmt-cap\"><i style=\"background:#141414\"></i>' + esc(shape) + '</span></div>';\n      /* v1.7: engraving-size capsules removed from the card */\n    }\n    panel.innerHTML = html;\n    panel.style.display = 'block';\n    if (panel.scrollIntoView) panel.scrollIntoView({ behavior:'smooth', block:'center' });\n  }\n\n  window.pmtOnReady = function(design){\n    /* silent quick re-pushes (note typing / shape change) only count while quick upload is the active choice */\n    if (design.silent && mode !== 'quick') return;\n    mode = design.quick ? 'quick' : 'design';\n    lastDesign = design;\n    writeProps(design);\n    if (!design.silent) renderSummary(design);\n  };\n\n  /* after a successful add-to-cart the theme keeps the page \u2014 keep props for the next add */\n  function boot(){\n    mount();\n    watchSwatch();\n    if (window.console) console.log('%cPrintMine keychain preview ' + VERSION, 'color:#e07f0a;font-weight:700');\n  }\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', boot); else boot();\n})();"],
  "mappings": "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",
  "names": ["cv", "ln"]
}
