{"id":414,"date":"2026-01-23T06:14:45","date_gmt":"2026-01-23T06:14:45","guid":{"rendered":"https:\/\/arttao.net\/?page_id=414"},"modified":"2026-04-07T00:01:50","modified_gmt":"2026-04-07T00:01:50","slug":"f-%e0%ae%b5%e0%ae%9f%e0%ae%bf%e0%ae%b5%e0%ae%bf%e0%ae%af%e0%ae%b2%e0%af%8d-%e0%ae%85%e0%ae%b0%e0%af%81%e0%ae%b5%e0%ae%ae%e0%ae%be%e0%ae%95%e0%af%8d%e0%ae%95%e0%ae%b2%e0%ae%bf%e0%ae%a9%e0%af%8d","status":"publish","type":"page","link":"https:\/\/arttao.net\/ta\/f%e3%80%81%e5%87%a0%e4%bd%95%e6%8a%bd%e8%b1%a1%e7%9a%84%e5%86%85%e5%9c%a8%e6%9e%84%e6%88%90%e8%a6%81%e7%b4%a0%e5%88%86%e6%9e%90\/","title":{"rendered":"F. \u0bb5\u0b9f\u0bbf\u0bb5\u0bbf\u0baf\u0bb2\u0bcd \u0b85\u0bb0\u0bc1\u0bb5\u0b95\u0bcd \u0b95\u0bb2\u0bc8\u0baf\u0bbf\u0ba9\u0bcd \u0b8e\u0b9f\u0bcd\u0b9f\u0bc1 \u0baa\u0bca\u0ba4\u0bc1\u0bb5\u0bbe\u0ba9 \u0b95\u0b9f\u0bcd\u0b9f\u0bae\u0bc8\u0baa\u0bcd\u0baa\u0bc1 \u0bb5\u0b9f\u0bbf\u0bb5\u0b99\u0bcd\u0b95\u0bb3\u0bcd"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-f5ffc0a8 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<h1 class=\"wp-block-heading has-text-align-center alignwide has-x-large-font-size\"><br> <em><br> <\/em>F1\u3001\u6838\u5fc3\u76ee\u7684<\/h1>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">\u51e0\u4f55\u62bd\u8c61\u827a\u672f\u5e76\u975e\u53ea\u662f\u4ee5\u7ebf\u6761\u3001\u8272\u5757\u548c\u5f62\u4f53\u6784\u6210\u753b\u9762\uff0c\u66f4\u91cd\u8981\u7684\u662f\u901a\u8fc7\u4e0d\u540c\u7ed3\u6784\u65b9\u5f0f\u5efa\u7acb\u79e9\u5e8f\u3001\u8282\u594f\u3001\u5f20\u529b\u4e0e\u7a7a\u95f4\u5173\u7cfb\u3002\u57fa\u7840\u7f51\u683c\u3001\u6761\u72b6\u5206\u5272\u3001\u7a7a\u95f4\u6784\u6210\u3001\u540c\u5fc3\u6269\u5f20\u3001\u5bf9\u89d2\u5207\u5165\u3001\u9519\u4f4d\u53e0\u5c42\u3001\u5757\u9762\u62fc\u63a5\u4e0e\u5f00\u653e\u5f0f\u6a21\u5757\uff0c\u6784\u6210\u4e86\u51e0\u4f55\u62bd\u8c61\u4e2d\u6700\u5177\u4ee3\u8868\u6027\u7684\u516b\u79cd\u5178\u578b\u7ed3\u6784\u5f62\u5f0f\u3002\u5b83\u4eec\u65e2\u662f\u89c6\u89c9\u7ec4\u7ec7\u7684\u65b9\u6cd5\uff0c\u4e5f\u662f\u827a\u672f\u5bb6\u5c55\u5f00\u5f62\u5f0f\u5b9e\u9a8c\u3001\u8868\u8fbe\u89c2\u5ff5\u4e0e\u63a8\u52a8\u8bed\u8a00\u66f4\u65b0\u7684\u91cd\u8981\u8def\u5f84\u3002\u7406\u89e3\u8fd9\u4e9b\u6a21\u5757\uff0c\u6709\u52a9\u4e8e\u66f4\u6df1\u5165\u628a\u63e1\u51e0\u4f55\u62bd\u8c61\u827a\u672f\u7684\u6784\u6210\u903b\u8f91\u4e0e\u53d1\u5c55\u65b9\u5411\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized has-custom-border\"><a href=\"https:\/\/arttao.net\/f1-%e5%87%a0%e4%bd%95%e6%8a%bd%e8%b1%a1%e8%89%ba%e6%9c%af8%e7%a7%8d%e5%85%b8%e5%9e%8b%e7%bb%93%e6%9e%84%e5%bd%a2%e5%bc%8f%e6%a8%a1%e5%9d%97\/\"><img loading=\"lazy\" decoding=\"async\" width=\"1536\" height=\"1024\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1.png\" alt=\"\" class=\"wp-image-2358\" style=\"border-top-left-radius:11px;border-top-right-radius:11px;border-bottom-left-radius:11px;border-bottom-right-radius:11px;aspect-ratio:1.5001723543605654;width:130px;height:auto\" srcset=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1.png 1536w, https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1-600x400.png 600w, https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1-300x200.png 300w, https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1-1024x683.png 1024w, https:\/\/arttao.net\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-27-2026-12_07_32-PM-1-768x512.png 768w\" sizes=\"auto, (max-width: 1536px) 100vw, 1536px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f1-%e5%87%a0%e4%bd%95%e6%8a%bd%e8%b1%a1%e8%89%ba%e6%9c%af8%e7%a7%8d%e5%85%b8%e5%9e%8b%e7%bb%93%e6%9e%84%e5%bd%a2%e5%bc%8f%e6%a8%a1%e5%9d%97\/\" data-type=\"page\" data-id=\"2425\">F1.<strong>\u6838\u5fc3\u76ee\u7684<\/strong><\/a><br><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignwide has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-71c1e314 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:10%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p class=\"has-large-font-size wp-block-paragraph\">F2. \u51e0\u4f55\u62bd\u8c61\u827a\u672f8\u79cd\u5178\u578b\u7ed3\u6784\u5f62\u5f0f\u6a21\u5757<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"481\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/01\/art178.gif\" alt=\"\" class=\"wp-image-417\" style=\"width:407px;height:auto\"\/><\/figure>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">1. <strong>\u57fa\u7840\u7f51\u683c\u6a21\u5757<\/strong><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-1-piet-mondrian-%e7%9a%84%e3%80%8acomposition-no-ii-with-red-and-blue%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2109\">F2-1.Piet Mondrian \u7684\u300aComposition No. II, with Red and Blue\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-2-joaquin-torres-garcia-%e7%9a%84%e3%80%8acolor-structure%e3%80%8b%e5%88%9b%e4%bd%9c%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2115\">F2-2.Anni Albers\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-3-agnes-martin-%e7%9a%84%e3%80%8atremolo%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2112\">F2-3.Agnes Martin \u7684\u300aTremolo\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/2118-2\/\" data-type=\"page\" data-id=\"2118\">F2-4. Josef Albers \u7684\u300aTwo Whites Between Two Yellows\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading has-medium-font-size\">2. <strong>\u6761\u72b6\u5206\u5272\u6a21\u5757<\/strong><\/h2>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-5-morris-louis-%e7%9a%84%e3%80%8anumber-182%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2122\">F2-5.Cristina Ghetti\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-6-bridget-riley-%e3%80%8afall%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2125\">F2-6.Bridget Riley \u300aFall\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-7-frank-stella-%e7%9a%84%e3%80%8athe-marriage-of-reason-and-squalor-ii%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2128\">F2-7.Frank Stella \u7684\u300aThe Marriage of Reason and Squalor, II\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-8-gene-davis-%e7%9a%84%e3%80%8asatans-flag%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2131\">F2-8.Gene Davis \u7684\u300aSatan\u2019s Flag\u300b\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"540\" height=\"540\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/01\/art411.gif\" alt=\"\" class=\"wp-image-376\" style=\"border-top-left-radius:57px;border-top-right-radius:57px;border-bottom-left-radius:57px;border-bottom-right-radius:57px;width:218px;height:auto\"\/><\/figure>\n\n\n\n<div style=\"height:17px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">3. <strong>\u7a7a\u95f4\u6784\u6210\u578b\u6a21\u5757<\/strong><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-28-al-held%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2239\">F2-9.Al Held\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-29-frank-stella%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2246\">F2-10.Frank Stella\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-30-ronald-davis%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2251\">F2-11.Ronald Davis\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-12-victor-vasarely%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2293\">F2-12.Victor Vasarely\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:10%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\">\n<p class=\"has-medium-font-size wp-block-paragraph\">4. <strong>\u540c\u5fc3\u6269\u5f20\u6a21\u5757<\/strong><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-13-frantisek-kupka-%e7%9a%84%e3%80%8astudy-for-disks-of-newton%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2148\">F2-13.Franti\u0161ek Kupka \u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/2152-2\/\" data-type=\"page\" data-id=\"2152\">F2-14.Josef Albers \u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-15-vasily-kandinsky-%e7%9a%84%e3%80%8aseveral-circles%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2156\">F2-15.Vasily Kandinsky \u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"400\" height=\"400\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/01\/art698-1.gif\" alt=\"\" class=\"wp-image-351\" style=\"border-top-left-radius:66px;border-top-right-radius:66px;border-bottom-left-radius:66px;border-bottom-right-radius:66px;width:231px;height:auto\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading has-medium-font-size\">5. <strong>\u5bf9\u89d2\u5207\u5165\u6a21\u5757<\/strong><\/h2>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/g2-16-piet-mondrian-%e7%9a%84%e3%80%8atableau-i-lozenge-with-four-lines-and-gray%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2181\">F2-16. Piet Mondrian \u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-17-rachel-hellmann%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2257\">F2-17.Rachel Hellmann\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-18-carmen-herrera-%e7%9a%84%e3%80%8ablanco-y-verde%e3%80%8b%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2188\">F2-18.Carmen Herrera \u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading has-medium-font-size\">6. <strong>\u9519\u4f4d\u53e0\u5c42\u6a21\u5757<\/strong><\/h2>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-19-tricia-strickfaden%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2268\">F2-19.Tricia Strickfaden\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-20-sonia-delaunay%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2193\">F2-20.Sonia Delaunay\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-21-ygia-clark%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2196\">F2-21.ygia Clark\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"480\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/01\/art731-1.gif\" alt=\"\" class=\"wp-image-724\" style=\"width:228px;height:auto\"\/><\/figure>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">7. <strong>\u5757\u9762\u62fc\u63a5\u6a21\u5757<\/strong><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-22-theo-van-doesburg%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2199\">F2-22.Theo van Doesburg\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-23-carmen-herrera%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2203\">F2-23.Carmen Herrera\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-24-max-bill%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2206\">F2-24.Max Bill\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading has-medium-font-size\">8. <strong>\u5f00\u653e\u5f0f\u6a21\u5757<\/strong><\/h2>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-25-donald-judd%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2209\">F2-25.Donald Judd\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-26-dan-flavin%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2212\">F2-26.Dan Flavin\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><a href=\"https:\/\/arttao.net\/f2-27-osi-audu%e4%bd%9c%e5%93%81%e5%88%86%e6%9e%90\/\" data-type=\"page\" data-id=\"2217\">F2-27.Osi Audu\u4f5c\u54c1\u5206\u6790<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:10%\"><\/div>\n<\/div>\n<\/div>\n\n\n\n<p class=\"has-text-align-center has-large-font-size wp-block-paragraph\">F3-1\u3001\u5185\u5728\u6784\u6210\u8981\u7d20\u5206\u6790\u8bfe\u7a0b\u6d4b\u8bd5<\/p>\n\n\n<div class=\"arttao-hub\"><div class=\"arttao-sub\">\u8bf7\u5148\u767b\u5f55\u540e\u4f7f\u7528\u8bc4\u4f30\u7cfb\u7edf\u3002<\/div><\/div>\n\n\n\n<p class=\"has-text-align-center has-text-color has-link-color has-small-font-size wp-elements-b1baca772c01f0e0a292b10f0a407a03 wp-block-paragraph\" style=\"color:#980303\">\u63d0\u4ea4\u8bbe\u8ba1\u4e3a1\u6b21\uff0c\u8bf7\u8ba4\u771f\u601d\u8003\u540e\u5728\u70b9\u51fb\u63d0\u4ea4\uff0c\u53cd\u590d\u63d0\u4ea4\u4f1a\u4ea7\u751f\u6263\u5206\u5f71\u54cd\u8bc4\u5956\uff01\uff01\uff01\uff01\uff01\uff01\uff01\uff01<\/p>\n\n\n\n<div style=\"height:78px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-large-font-size\">E3. AI \u5185\u5728\u6784\u6210\u6a21\u62df\u7cfb\u7edf<\/h2>\n\n\n\n<div style=\"height:55px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"512\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/02\/art187.gif\" alt=\"\" class=\"wp-image-1093\" style=\"border-top-left-radius:214px;border-top-right-radius:214px;border-bottom-left-radius:214px;border-bottom-right-radius:214px;width:71px;height:auto\"\/><\/figure>\n\n\n\r\n    <style>\r\n        .st-wrap-st_6a0d8e8441d07{\r\n            max-width:1000px;\r\n            margin:15px auto;\r\n            font-family:Arial, Helvetica, sans-serif;\r\n        }\r\n        .st-launcher-st_6a0d8e8441d07{\r\n            max-width:1000px;\r\n            margin:15px auto;\r\n            background:#AEE5E5;\r\n            border-radius:30px;\r\n            padding:16px;\r\n            text-align:center;\r\n            cursor:pointer;\r\n            color:#455A64;\r\n            box-shadow:0 10px 25px rgba(69,90,100,0.2);\r\n            transition:all .3s ease;\r\n            border:1px solid #FFCCFF;\r\n        }\r\n        .st-launcher-st_6a0d8e8441d07:hover{\r\n            transform:translateY(-3px);\r\n            background:#D9FFFF;\r\n        }\r\n        .st-main-container-st_6a0d8e8441d07{\r\n            max-width:1000px;\r\n            margin:0 auto;\r\n            overflow:hidden;\r\n            max-height:0;\r\n            transition:max-height .6s cubic-bezier(.4,0,.2,1), margin-top .6s ease;\r\n        }\r\n        .st-main-container-st_6a0d8e8441d07.is-open{\r\n            max-height:2800px;\r\n            margin-top:20px;\r\n        }\r\n        .st-head-st_6a0d8e8441d07{\r\n            width:100%;\r\n            display:flex;\r\n            justify-content:space-between;\r\n            align-items:center;\r\n            padding:15px 20px;\r\n            background:#AEE5E5;\r\n            border:1px solid #FFCCFF;\r\n            border-radius:15px 15px 0 0;\r\n            font-size:16px;\r\n            cursor:pointer;\r\n            font-weight:bold;\r\n            color:#455A64;\r\n            box-sizing:border-box;\r\n        }\r\n        .st-body-st_6a0d8e8441d07{\r\n            padding:25px;\r\n            border:1px solid #ECEFF1;\r\n            border-top:none;\r\n            border-radius:0 0 15px 15px;\r\n            background:#fff;\r\n        }\r\n        .st-tabs-st_6a0d8e8441d07{\r\n            display:flex;\r\n            flex-wrap:wrap;\r\n            gap:6px;\r\n            justify-content:center;\r\n            margin-bottom:20px;\r\n        }\r\n        .st-tab-btn-st_6a0d8e8441d07{\r\n            padding:6px 10px;\r\n            border:1px solid #CFD8DC;\r\n            border-radius:8px;\r\n            background:#f9fbfb;\r\n            cursor:pointer;\r\n            font-size:11px;\r\n            font-weight:bold;\r\n            color:#455A64;\r\n        }\r\n        .st-tab-btn-st_6a0d8e8441d07.active{\r\n            background:#455A64 !important;\r\n            color:#fff !important;\r\n        }\r\n        .st-canvas-box-st_6a0d8e8441d07{\r\n            max-width:1000px !important;\r\n            width:100%;\r\n            aspect-ratio:1\/1;\r\n            background:#fff;\r\n            margin-bottom:20px;\r\n            border-radius:10px;\r\n            border:1px solid #f0f0f0;\r\n            overflow:hidden;\r\n        }\r\n        #cv-st_6a0d8e8441d07{\r\n            width:100%;\r\n            height:100%;\r\n            display:block;\r\n            cursor:crosshair;\r\n            background:#fff;\r\n        }\r\n        .st-palette-st_6a0d8e8441d07{\r\n            display:grid;\r\n            grid-template-columns:repeat(auto-fill, minmax(22px, 1fr));\r\n            gap:4px;\r\n            margin-bottom:20px;\r\n        }\r\n        .st-swatch-st_6a0d8e8441d07{\r\n            aspect-ratio:3\/4;\r\n            border-radius:12px;\r\n            cursor:pointer;\r\n            border:1px solid rgba(0,0,0,.1);\r\n        }\r\n        .st-swatch-st_6a0d8e8441d07.active{\r\n            border:2px solid #455A64;\r\n            transform:scale(1.1);\r\n        }\r\n        .st-btns-st_6a0d8e8441d07{\r\n            display:flex;\r\n            gap:12px;\r\n            justify-content:center;\r\n            flex-wrap:wrap;\r\n        }\r\n        .st-btns-st_6a0d8e8441d07 button{\r\n            padding:10px 30px;\r\n            background:#ECEFF1;\r\n            border:1px solid #CFD8DC;\r\n            border-radius:50px;\r\n            font-weight:bold;\r\n            cursor:pointer;\r\n            font-size:14px;\r\n            color:#455A64;\r\n        }\r\n        .st-gate-notice-st_6a0d8e8441d07{\r\n            display:none;\r\n            margin:0 0 16px;\r\n            padding:12px 14px;\r\n            border:1px solid #F5DEB3;\r\n            border-radius:14px;\r\n            background:#FFFAF2;\r\n            color:#7A4F01;\r\n            line-height:1.6;\r\n            text-align:left;\r\n        }\r\n        .st-locked-st_6a0d8e8441d07{\r\n            pointer-events:none !important;\r\n            opacity:.55 !important;\r\n        }\r\n    <\/style>\r\n\r\n    <div class=\"st-wrap-st_6a0d8e8441d07\">\r\n        <div\r\n            class=\"st-launcher-st_6a0d8e8441d07\"\r\n            id=\"launcher-st_6a0d8e8441d07\"\r\n            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].openPanel(); }\"\r\n        >\r\n            <h3 style=\"margin:0\">\u25cf AI \u7acb\u4f53\u6784\u6210\u5f15\u64ce \u25cf<\/h3>\r\n            <span style=\"font-size:12px;border:1px solid rgba(255,255,255,0.4);padding:2px 8px;border-radius:4px;margin-top:10px;display:inline-block;\">\u5f00\u542f\u7a7a\u95f4\u7ec3\u4e60<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"st-main-container-st_6a0d8e8441d07 \" id=\"main-st_6a0d8e8441d07\">\r\n            <div\r\n                class=\"st-head-st_6a0d8e8441d07\"\r\n                id=\"head-st_6a0d8e8441d07\"\r\n                onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].closePanel(); }\"\r\n            >\r\n                <span>\u2190 \u7acb\u4f53\u6784\u6210\u7ec3\u4e60\u8fdb\u884c\u4e2d<\/span>\r\n                <span>\u8fd4\u56de \u2715<\/span>\r\n            <\/div>\r\n\r\n            <div class=\"st-body-st_6a0d8e8441d07\" id=\"body-st_6a0d8e8441d07\">\r\n                <div class=\"st-gate-notice-st_6a0d8e8441d07\" id=\"notice-st_6a0d8e8441d07\"><\/div>\r\n\r\n                <div class=\"st-tabs-st_6a0d8e8441d07\" id=\"tabs-st_6a0d8e8441d07\">\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 active\"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('A', this); }\"\r\n                        >A<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('B', this); }\"\r\n                        >B<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('C', this); }\"\r\n                        >C<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('D', this); }\"\r\n                        >D<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('E', this); }\"\r\n                        >E<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('F', this); }\"\r\n                        >F<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('G', this); }\"\r\n                        >G<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('H', this); }\"\r\n                        >H<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('I', this); }\"\r\n                        >I<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('J', this); }\"\r\n                        >J<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('K', this); }\"\r\n                        >K<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('L', this); }\"\r\n                        >L<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('M', this); }\"\r\n                        >M<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('N', this); }\"\r\n                        >N<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('O', this); }\"\r\n                        >O<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('P', this); }\"\r\n                        >P<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('Q', this); }\"\r\n                        >Q<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('R', this); }\"\r\n                        >R<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('S', this); }\"\r\n                        >S<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('T', this); }\"\r\n                        >T<\/button>\r\n                                            <button\r\n                            type=\"button\"\r\n                            class=\"st-tab-btn-st_6a0d8e8441d07 \"\r\n                            onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].switchTpl('U', this); }\"\r\n                        >U<\/button>\r\n                                    <\/div>\r\n\r\n                <div class=\"st-canvas-box-st_6a0d8e8441d07\">\r\n                    <canvas id=\"cv-st_6a0d8e8441d07\"><\/canvas>\r\n                <\/div>\r\n\r\n                <div class=\"st-palette-st_6a0d8e8441d07\" id=\"pal-st_6a0d8e8441d07\"><\/div>\r\n\r\n                <div class=\"st-btns-st_6a0d8e8441d07\">\r\n                    <button type=\"button\" onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].reset(); }\">\u91cd\u7f6e<\/button>\r\n                    <button type=\"button\" onclick=\"if(window['logic_st_6a0d8e8441d07']){ window['logic_st_6a0d8e8441d07'].save(); }\">\u5bfc\u51fa<\/button>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n    (function(){\r\n        \"use strict\";\r\n\r\n        window['logic_st_6a0d8e8441d07'] = new (function(){\r\n            var uid = \"st_6a0d8e8441d07\";\r\n            var AJAX_URL = \"https:\\\/\\\/arttao.net\\\/wp-admin\\\/admin-ajax.php\";\r\n            var AJAX_NONCE = \"d8aeb73030\";\r\n\r\n            var launcher = document.getElementById('launcher-' + uid);\r\n            var main = document.getElementById('main-' + uid);\r\n            var body = document.getElementById('body-' + uid);\r\n            var notice = document.getElementById('notice-' + uid);\r\n            var cv = document.getElementById('cv-' + uid);\r\n            if (!cv) return;\r\n\r\n            var ctx = cv.getContext('2d');\r\n            var CANVAS_BASE = 800;\r\n            var unlocked = false;\r\n            var unlockPending = false;\r\n            var stopped = false;\r\n\r\n            var COLORS = [\r\n                \"#FFEBEE\",\"#FFCDD2\",\"#EF9A9A\",\"#E57373\",\"#EF5350\",\"#F44336\",\"#E53935\",\"#D32F2F\",\"#C62828\",\"#8E0000\",\r\n                \"#FFF3E0\",\"#FFE0B2\",\"#FFCC80\",\"#FFB74D\",\"#FFA726\",\"#FF9800\",\"#FB8C00\",\"#F57C00\",\"#EF6C00\",\"#BF360C\",\r\n                \"#FFFDE7\",\"#FFF9C4\",\"#FFF59D\",\"#FFF176\",\"#FFEE58\",\"#FDD835\",\"#FBC02D\",\"#F9A825\",\"#F57F17\",\"#C49000\",\r\n                \"#E8F5E9\",\"#C8E6C9\",\"#A5D6A7\",\"#81C784\",\"#66BB6A\",\"#4CAF50\",\"#43A047\",\"#388E3C\",\"#2E7D32\",\"#1B5E20\",\r\n                \"#E0F7FA\",\"#B2EBF2\",\"#80DEEA\",\"#4DD0E1\",\"#26C6DA\",\"#00BCD4\",\"#00ACC1\",\"#0097A7\",\"#00838F\",\"#006064\",\r\n                \"#E3F2FD\",\"#BBDEFB\",\"#90CAF9\",\"#64B5F6\",\"#42A5F5\",\"#2196F3\",\"#1E88E5\",\"#1976D2\",\"#1565C0\",\"#0D47A1\",\r\n                \"#F3E5F5\",\"#E1BEE7\",\"#CE93D8\",\"#BA68C8\",\"#AB47BC\",\"#9C27B0\",\"#8E24AA\",\"#7B1FA2\",\"#6A1B9A\",\"#4A148C\",\r\n                \"#FFFFFF\",\"#F5F5F5\",\"#E0E0E0\",\"#BDBDBD\",\"#9E9E9E\",\"#757575\",\"#616161\",\"#424242\",\"#212121\",\"#000000\"\r\n            ];\r\n\r\n            var STEREO_TEMPLATES = {};\r\n            \"ABCDEFGHIJKLMNOPQRSTU\".split(\"\").forEach(function(l){\r\n                if (l === 'A') {\r\n                    STEREO_TEMPLATES[l] = [\r\n                        { pts: [[259,115],[110,328],[194,328],[222,396],[194,464],[112,463],[260,679],[259,115]] },\r\n                        { pts: [[194,327],[193,463],[221,395],[194,327]] },\r\n                        { pts: [[109,327],[153,395],[193,394],[193,327],[109,327]] },\r\n                        { pts: [[152,394],[193,394],[193,463],[113,463],[152,394]] },\r\n                        { pts: [[258,116],[266,108],[306,162],[306,262],[259,327],[258,116]] },\r\n                        { pts: [[306,260],[313,271],[267,338],[302,395],[267,451],[313,520],[306,530],[259,462],[259,326],[306,260]] },\r\n                        { pts: [[258,461],[260,678],[265,683],[306,630],[306,529],[258,461]] },\r\n                        { pts: [[306,259],[355,328],[354,114],[348,109],[306,162],[305,258],[306,259]] },\r\n                        { pts: [[313,269],[355,327],[354,338],[267,337],[313,269]] },\r\n                        { pts: [[266,337],[354,338],[354,394],[302,394],[266,337]] },\r\n                        { pts: [[302,394],[353,394],[354,453],[268,451],[302,394]] },\r\n                        { pts: [[267,451],[312,520],[354,463],[353,452],[267,451]] },\r\n                        { pts: [[306,528],[353,464],[354,678],[347,682],[306,629],[306,528]] },\r\n                        { pts: [[312,519],[341,560],[353,560],[353,463],[312,519]] },\r\n                        { pts: [[313,270],[340,230],[354,230],[354,327],[313,270]] },\r\n                        { pts: [[353,678],[421,583],[460,636],[460,162],[424,210],[353,113],[353,678]] },\r\n                        { pts: [[460,161],[465,157],[500,200],[500,285],[489,300],[460,256],[460,161]] },\r\n                        { pts: [[460,255],[488,300],[460,343],[460,255]] },\r\n                        { pts: [[488,299],[519,343],[460,342],[488,299]] },\r\n                        { pts: [[460,342],[518,342],[483,400],[460,399],[460,342]] },\r\n                        { pts: [[460,399],[481,399],[518,456],[460,457],[460,399]] },\r\n                        { pts: [[460,456],[518,456],[490,498],[460,456]] },\r\n                        { pts: [[460,456],[490,499],[460,541],[460,456]] },\r\n                        { pts: [[460,541],[489,500],[500,514],[501,597],[466,640],[460,637],[460,541]] },\r\n                        { pts: [[490,299],[518,342],[482,400],[518,455],[489,499],[500,511],[541,453],[541,342],[500,284],[490,299]] },\r\n                        { pts: [[540,452],[500,511],[501,596],[535,641],[540,636],[540,452]] },\r\n                        { pts: [[500,283],[541,342],[540,161],[534,157],[500,201],[500,283]] },\r\n                        { pts: [[540,162],[665,342],[594,341],[570,399],[594,456],[665,455],[540,634],[540,162]] },\r\n                        { pts: [[596,341],[664,341],[630,398],[595,398],[596,341]] },\r\n                        { pts: [[594,397],[594,455],[665,455],[629,398],[594,397]] },\r\n                        { pts: [[594,341],[594,454],[570,399],[594,342],[594,341]] }\r\n                    ];\r\n                }           \r\n             else if (l === 'B') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[178, 112], [132, 345], [176, 392], [178, 113], [178, 112]] },\r\n        { pts: [[131, 345], [131, 345], [175, 392], [121, 391], [130, 345], [131, 345]] },\r\n        { pts: [[121, 391], [175, 391], [165, 436], [121, 391], [121, 391]] },\r\n        { pts: [[121, 390], [164, 435], [121, 661], [120, 390], [121, 390]] },\r\n        { pts: [[120, 111], [80, 73], [45, 109], [119, 110], [120, 111]] },\r\n        { pts: [[45, 109], [118, 110], [121, 389], [82, 390], [44, 109], [45, 109]] },\r\n        { pts: [[44, 109], [81, 389], [45, 388], [43, 109], [44, 109]] },\r\n        { pts: [[44, 387], [46, 661], [121, 662], [80, 389], [43, 388], [44, 387]] },\r\n        { pts: [[45, 661], [119, 661], [85, 702], [45, 661], [45, 661]] },\r\n        { pts: [[85, 701], [118, 661], [119, 737], [85, 701], [85, 701]] },\r\n        { pts: [[174, 391], [120, 660], [176, 661], [175, 391], [174, 391]] },\r\n        { pts: [[118, 661], [396, 661], [396, 697], [118, 736], [117, 661], [118, 661]] },\r\n        { pts: [[117, 735], [396, 696], [396, 738], [117, 735], [117, 735]] },\r\n        { pts: [[396, 695], [667, 660], [396, 661], [396, 695], [396, 695]] },\r\n        { pts: [[396, 694], [665, 659], [666, 738], [395, 737], [395, 694], [396, 694]] },\r\n        { pts: [[665, 659], [703, 700], [665, 738], [665, 659], [665, 659]] },\r\n        { pts: [[665, 659], [737, 660], [702, 700], [664, 658], [665, 659]] },\r\n        { pts: [[665, 659], [737, 659], [702, 381], [665, 381], [665, 658], [665, 659]] },\r\n        { pts: [[701, 381], [739, 381], [737, 658], [701, 381], [701, 381]] },\r\n        { pts: [[666, 113], [741, 113], [738, 381], [701, 381], [665, 113], [666, 113]] },\r\n        { pts: [[665, 113], [665, 381], [701, 381], [665, 113], [665, 113]] },\r\n        { pts: [[665, 113], [706, 77], [740, 112], [665, 113], [665, 113]] },\r\n        { pts: [[666, 113], [666, 37], [706, 77], [666, 113], [666, 113]] },\r\n        { pts: [[666, 113], [665, 37], [389, 36], [389, 73], [665, 113], [666, 113]] },\r\n        { pts: [[665, 113], [389, 73], [389, 113], [665, 113], [665, 113]] },\r\n        { pts: [[389, 112], [117, 110], [118, 34], [389, 73], [388, 112], [389, 112]] },\r\n        { pts: [[118, 34], [389, 36], [389, 73], [117, 33], [118, 34]] },\r\n        { pts: [[117, 34], [80, 73], [117, 109], [116, 34], [117, 34]] },\r\n        { pts: [[177, 110], [452, 113], [452, 193], [176, 110], [177, 110]] },\r\n        { pts: [[177, 111], [453, 384], [452, 193], [177, 110], [177, 111]] },\r\n        { pts: [[177, 111], [453, 383], [173, 391], [177, 111], [177, 111]] },\r\n        { pts: [[174, 389], [174, 524], [452, 383], [173, 389], [174, 389]] },\r\n        { pts: [[174, 524], [176, 660], [453, 565], [453, 382], [173, 524], [174, 524]] },\r\n        { pts: [[176, 660], [452, 659], [453, 564], [176, 659], [176, 660]] },\r\n        { pts: [[453, 565], [665, 659], [452, 660], [453, 565], [453, 565]] },\r\n        { pts: [[608, 634], [656, 425], [606, 381], [608, 634], [608, 634]] },\r\n        { pts: [[606, 380], [663, 381], [655, 424], [606, 381], [606, 380]] },\r\n        { pts: [[606, 380], [665, 381], [665, 381], [619, 333], [606, 380], [606, 380]] },\r\n        { pts: [[619, 333], [665, 380], [665, 113], [619, 333], [619, 333]] },\r\n        { pts: [[607, 113], [606, 381], [453, 382], [606, 113], [607, 113]] },\r\n        { pts: [[605, 113], [452, 113], [453, 381], [605, 113], [605, 113]] },\r\n        { pts: [[453, 382], [605, 380], [453, 564], [453, 382], [453, 382]] },\r\n        { pts: [[605, 380], [453, 565], [607, 634], [605, 380], [605, 380]] },\r\n        { pts: [[451, 659], [606, 633], [453, 565], [451, 659], [451, 659]] },\r\n        { pts: [[451, 659], [607, 633], [665, 660], [451, 659], [451, 659]] },\r\n        { pts: [[80, 388], [121, 658], [121, 389], [81, 389], [80, 388]] },\r\n        { pts: [[118, 109], [121, 388], [177, 111], [118, 109], [118, 109]] },\r\n        { pts: [[607, 113], [666, 113], [607, 380], [607, 113]] },\r\n        { pts: [[665, 380], [666, 659], [609, 633], [665, 379], [665, 380]] }\r\n    ];\r\n}\r\n            else if (l === 'C') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[109, 106], [682, 29], [682, 105], [107, 106], [109, 106]] },\r\n        { pts: [[108, 105], [109, 29], [682, 29], [108, 105], [108, 105]] },\r\n        { pts: [[107, 105], [70, 67], [108, 29], [107, 105], [107, 105]] },\r\n        { pts: [[681, 30], [682, 105], [720, 69], [681, 30]] },\r\n        { pts: [[681, 105], [719, 69], [757, 105], [681, 105]] },\r\n        { pts: [[681, 105], [757, 105], [758, 685], [681, 105]] },\r\n        { pts: [[681, 105], [757, 685], [681, 686], [681, 105]] },\r\n        { pts: [[681, 685], [720, 724], [757, 685], [681, 685]] },\r\n        { pts: [[681, 685], [720, 724], [681, 761], [681, 685]] },\r\n        { pts: [[681, 685], [681, 761], [108, 761], [681, 685]] },\r\n        { pts: [[108, 760], [108, 686], [70, 725], [107, 761], [108, 760]] },\r\n        { pts: [[107, 760], [681, 685], [107, 686], [106, 760], [107, 760]] },\r\n        { pts: [[106, 685], [69, 723], [106, 685]] },\r\n        { pts: [[107, 685], [30, 687], [69, 725], [107, 685]] },\r\n        { pts: [[30, 686], [107, 685], [33, 105], [29, 685], [30, 686]] },\r\n        { pts: [[32, 104], [107, 685], [108, 105], [31, 104], [32, 104]] },\r\n        { pts: [[31, 104], [69, 67], [107, 105], [30, 104], [31, 104]] },\r\n        { pts: [[107, 105], [313, 105], [339, 324], [300, 375], [107, 165], [107, 105]] },\r\n        { pts: [[106, 165], [240, 671], [299, 375], [105, 165], [106, 165]] },\r\n        { pts: [[106, 685], [241, 670], [395, 685], [106, 685]] },\r\n        { pts: [[338, 324], [299, 375], [240, 670], [393, 685], [338, 324]] },\r\n        { pts: [[240, 670], [392, 685], [386, 645], [239, 669], [240, 670]] },\r\n        { pts: [[385, 645], [537, 620], [392, 685], [385, 645]] },\r\n        { pts: [[392, 685], [537, 620], [681, 685], [392, 685]] },\r\n        { pts: [[536, 619], [681, 593], [681, 685], [536, 619]] },\r\n        { pts: [[338, 324], [386, 644], [536, 620], [338, 324]] },\r\n        { pts: [[313, 105], [338, 325], [491, 105], [313, 105]] },\r\n        { pts: [[490, 105], [338, 325], [536, 619], [490, 105]] },\r\n        { pts: [[681, 105], [543, 353], [681, 592], [681, 105]] },\r\n        { pts: [[542, 353], [489, 105], [681, 105], [542, 353]] },\r\n        { pts: [[489, 105], [542, 351], [536, 620], [489, 105]] },\r\n        { pts: [[542, 350], [681, 592], [536, 619], [542, 350]] },\r\n        { pts: [[106, 168], [239, 670], [107, 685], [107, 169], [106, 168]] }\r\n    ];\r\n}\r\nelse if (l === 'D') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[117, 32], [117, 32], [670, 119], [117, 118], [117, 33], [117, 32]] },\r\n        { pts: [[117, 32], [118, 118], [75, 74], [117, 33], [117, 32]] },\r\n        { pts: [[74, 73], [117, 118], [31, 118], [73, 73], [74, 73]] },\r\n        { pts: [[31, 118], [31, 675], [116, 118], [30, 118], [31, 118]] },\r\n        { pts: [[115, 118], [30, 675], [117, 677], [115, 118]] },\r\n        { pts: [[29, 675], [116, 677], [73, 717], [29, 675]] },\r\n        { pts: [[73, 717], [117, 676], [116, 757], [73, 718], [73, 717]] },\r\n        { pts: [[117, 677], [669, 756], [115, 756], [116, 676], [117, 677]] },\r\n        { pts: [[117, 677], [669, 678], [668, 755], [116, 678], [117, 677]] },\r\n        { pts: [[668, 678], [713, 716], [668, 756], [668, 678]] },\r\n        { pts: [[667, 678], [757, 677], [713, 716], [667, 678]] },\r\n        { pts: [[669, 677], [757, 677], [757, 118], [669, 678], [669, 677]] },\r\n        { pts: [[668, 677], [668, 119], [757, 119], [668, 677]] },\r\n        { pts: [[667, 119], [717, 78], [757, 119], [667, 119]] },\r\n        { pts: [[668, 119], [666, 31], [717, 79], [668, 119]] },\r\n        { pts: [[668, 119], [666, 32], [117, 33], [668, 119]] },\r\n        { pts: [[433, 119], [449, 395], [562, 119], [433, 119]] },\r\n        { pts: [[448, 395], [605, 452], [668, 393], [448, 395]] },\r\n        { pts: [[449, 395], [562, 119], [667, 119], [668, 393], [449, 395]] },\r\n        { pts: [[433, 119], [446, 342], [116, 347], [433, 119]] },\r\n        { pts: [[116, 347], [433, 119], [115, 118], [116, 347]] },\r\n        { pts: [[114, 347], [449, 395], [445, 343], [114, 347]] },\r\n        { pts: [[115, 347], [116, 513], [451, 470], [449, 395], [115, 347]] },\r\n        { pts: [[116, 513], [456, 528], [450, 470], [116, 513]] },\r\n        { pts: [[116, 514], [454, 527], [116, 677], [116, 514]] },\r\n        { pts: [[115, 676], [463, 677], [455, 526], [115, 676]] },\r\n        { pts: [[449, 395], [605, 452], [450, 470], [449, 395]] },\r\n        { pts: [[449, 471], [455, 527], [669, 677], [605, 451], [449, 471]] },\r\n        { pts: [[605, 452], [668, 393], [669, 676], [605, 452]] },\r\n        { pts: [[454, 527], [669, 678], [463, 678], [454, 527]] }\r\n    ];\r\n}\r\nelse if (l === 'E') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[0, 27], [53, -1], [54, 788], [0, 789], [0, 27]] },\r\n        { pts: [[53, -1], [53, 37], [735, 37], [789, 1], [53, -1]] },\r\n        { pts: [[735, 37], [788, 2], [788, 753], [741, 753], [735, 37]] },\r\n        { pts: [[742, 752], [789, 752], [789, 789], [742, 789], [742, 752]] },\r\n        { pts: [[742, 752], [742, 790], [53, 790], [84, 774], [54, 755], [742, 752]] },\r\n        { pts: [[51, 36], [1, 27], [53, 0], [52, 37], [51, 36]] },\r\n        { pts: [[738, 36], [789, 52], [788, 3], [738, 36]] },\r\n        { pts: [[735, -1], [737, 36], [789, 1], [735, -1]] },\r\n        { pts: [[54, 37], [283, 227], [513, 231], [737, 36], [54, 37]] },\r\n        { pts: [[53, 230], [257, 232], [53, 60], [53, 230]] },\r\n        { pts: [[257, 231], [260, 589], [54, 755], [53, 229], [257, 231]] },\r\n        { pts: [[55, 754], [260, 658], [260, 587], [55, 754]] },\r\n        { pts: [[54, 753], [260, 658], [623, 658], [742, 750], [54, 753]] },\r\n        { pts: [[513, 566], [622, 657], [623, 502], [513, 414], [513, 566]] },\r\n        { pts: [[513, 413], [739, 416], [623, 501], [513, 413]] },\r\n        { pts: [[623, 499], [623, 657], [742, 750], [739, 416], [623, 499]] },\r\n        { pts: [[514, 230], [738, 37], [739, 416], [514, 230]] },\r\n        { pts: [[513, 229], [740, 415], [512, 412], [511, 229], [513, 229]] },\r\n        { pts: [[283, 227], [511, 229], [513, 414], [283, 227]] },\r\n        { pts: [[282, 229], [515, 414], [513, 567], [284, 566], [282, 229]] },\r\n        { pts: [[53, 35], [283, 227], [285, 657], [260, 658], [257, 230], [53, 58], [53, 35]] },\r\n        { pts: [[285, 658], [284, 566], [513, 566], [620, 658], [285, 658]] }\r\n    ];\r\n}\r\nelse if (l === 'F') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[26, 52], [73, 80], [92, 595], [26, 52]] },\r\n        { pts: [[25, 51], [90, 594], [26, 718], [25, 51]] },\r\n        { pts: [[90, 594], [24, 718], [83, 765], [89, 596], [90, 594]] },\r\n        { pts: [[88, 594], [229, 765], [82, 765], [88, 594]] },\r\n        { pts: [[227, 765], [223, 623], [88, 594], [227, 765]] },\r\n        { pts: [[222, 624], [320, 644], [226, 763], [222, 624]] },\r\n        { pts: [[321, 644], [225, 762], [706, 718], [321, 644]] },\r\n        { pts: [[224, 761], [705, 767], [706, 717], [224, 761]] },\r\n        { pts: [[705, 718], [769, 728], [704, 767], [705, 718]] },\r\n        { pts: [[705, 718], [768, 729], [769, 93], [704, 718], [705, 718]] },\r\n        { pts: [[704, 718], [683, 52], [768, 94], [704, 718]] },\r\n        { pts: [[681, 50], [768, 94], [752, 16], [681, 50]] },\r\n        { pts: [[682, 50], [752, 17], [107, 16], [682, 50]] },\r\n        { pts: [[105, 16], [153, 75], [73, 81], [105, 16]] },\r\n        { pts: [[103, 17], [152, 76], [683, 52], [103, 17]] },\r\n        { pts: [[103, 16], [73, 81], [24, 52], [103, 16]] },\r\n        { pts: [[72, 81], [682, 52], [564, 164], [72, 81]] },\r\n        { pts: [[683, 51], [564, 164], [686, 186], [683, 51]] },\r\n        { pts: [[563, 164], [686, 186], [699, 603], [613, 701], [563, 164]] },\r\n        { pts: [[699, 605], [703, 718], [613, 701], [699, 605]] },\r\n        { pts: [[72, 81], [307, 194], [346, 556], [467, 192], [562, 164], [72, 81]] },\r\n        { pts: [[73, 82], [208, 205], [305, 194], [73, 82]] },\r\n        { pts: [[72, 82], [91, 594], [222, 624], [208, 205], [72, 82]] },\r\n        { pts: [[208, 204], [306, 194], [345, 556], [221, 624], [208, 204]] },\r\n        { pts: [[222, 625], [320, 645], [344, 558], [221, 626], [222, 625]] },\r\n        { pts: [[344, 555], [318, 644], [600, 591], [344, 555]] },\r\n        { pts: [[319, 644], [613, 700], [602, 591], [319, 644]] },\r\n        { pts: [[465, 193], [346, 553], [601, 592], [465, 193]] },\r\n        { pts: [[463, 194], [563, 164], [602, 593], [463, 194]] },\r\n        { pts: [[306, 195], [222, 625], [344, 556], [306, 195]] }\r\n    ];\r\n}\r\nelse if (l === 'G') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[13, 12], [775, 13], [777, 776], [13, 776], [13, 12]] },\r\n        { pts: [[27, 26], [761, 28], [761, 760], [28, 760], [27, 26]] },\r\n        { pts: [[43, 39], [744, 43], [513, 230], [282, 228], [43, 39]] },\r\n        { pts: [[42, 38], [282, 227], [42, 224], [41, 37], [42, 38]] },\r\n        { pts: [[42, 229], [255, 233], [260, 588], [42, 745], [42, 229]] },\r\n        { pts: [[55, 745], [260, 599], [260, 657], [622, 657], [747, 743], [55, 745]] },\r\n        { pts: [[57, 743], [260, 598], [261, 742], [57, 743]] },\r\n        { pts: [[282, 227], [513, 414], [513, 229], [282, 227]] },\r\n        { pts: [[282, 227], [513, 413], [514, 569], [285, 566], [282, 227]] },\r\n        { pts: [[623, 656], [625, 505], [513, 413], [513, 568], [623, 656]] },\r\n        { pts: [[747, 742], [624, 656], [625, 505], [745, 591], [747, 742]] },\r\n        { pts: [[284, 565], [260, 598], [261, 657], [623, 656], [513, 567], [284, 565]] },\r\n        { pts: [[514, 228], [513, 410], [747, 418], [745, 41], [514, 228]] },\r\n        { pts: [[529, 417], [747, 422], [748, 586], [625, 499], [529, 417]] },\r\n        { pts: [[42, 703], [260, 541], [260, 588], [42, 744], [42, 703]] },\r\n        { pts: [[42, 690], [259, 530], [259, 481], [42, 641], [42, 690]] },\r\n        { pts: [[42, 628], [259, 468], [258, 417], [42, 573], [42, 628]] },\r\n        { pts: [[42, 229], [258, 417], [255, 233], [42, 228], [42, 229]] },\r\n        { pts: [[41, 38], [283, 227], [282, 39], [41, 38]] },\r\n        { pts: [[513, 228], [745, 43], [511, 41], [513, 228]] }\r\n    ];\r\n}\r\nelse if (l === 'H') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[56, 13], [18, 42], [17, 271], [274, 153], [272, 14], [56, 13]] },\r\n        { pts: [[272, 14], [769, 13], [772, 321], [273, 154], [272, 14]] },\r\n        { pts: [[17, 270], [273, 153], [519, 236], [272, 363], [17, 270]] },\r\n        { pts: [[272, 363], [272, 571], [523, 439], [517, 236], [272, 363]] },\r\n        { pts: [[516, 236], [522, 442], [771, 521], [771, 321], [516, 236]] },\r\n        { pts: [[521, 440], [770, 521], [520, 669], [271, 573], [521, 440]] },\r\n        { pts: [[520, 668], [520, 774], [727, 774], [772, 731], [771, 519], [520, 668]] },\r\n        { pts: [[273, 573], [18, 478], [17, 268], [270, 362], [273, 573]] },\r\n        { pts: [[17, 477], [520, 668], [520, 774], [17, 774], [17, 477]] }\r\n    ];\r\n}\r\nelse if (l === 'I') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[13, 13], [777, 13], [778, 776], [12, 776], [13, 13]] },\r\n        { pts: [[51, 743], [740, 743], [740, 44], [52, 44], [51, 743]] },\r\n        { pts: [[12, 711], [87, 775], [12, 776], [12, 711]] },\r\n        { pts: [[778, 709], [703, 775], [778, 775], [778, 709]] },\r\n        { pts: [[89, 13], [13, 76], [13, 13], [89, 13]] },\r\n        { pts: [[708, 13], [777, 76], [777, 13], [708, 13]] },\r\n        { pts: [[134, 506], [418, 606], [420, 502], [242, 428], [135, 470], [134, 506]] },\r\n        { pts: [[135, 470], [136, 386], [241, 346], [242, 428], [135, 470]] },\r\n        { pts: [[242, 428], [492, 531], [493, 454], [241, 346], [242, 428]] },\r\n        { pts: [[245, 313], [274, 304], [406, 354], [515, 425], [410, 396], [245, 313]] },\r\n        { pts: [[246, 313], [274, 305], [412, 398], [246, 313]] },\r\n        { pts: [[245, 313], [290, 366], [493, 454], [492, 482], [514, 495], [516, 426], [413, 398], [245, 313]] },\r\n        { pts: [[514, 496], [597, 458], [601, 396], [516, 426], [514, 496]] },\r\n        { pts: [[276, 305], [407, 354], [516, 426], [601, 396], [276, 305]] },\r\n        { pts: [[298, 270], [463, 358], [582, 378], [466, 318], [324, 264], [298, 270]] },\r\n        { pts: [[299, 270], [462, 358], [348, 326], [299, 270]] },\r\n        { pts: [[561, 385], [657, 353], [646, 417], [598, 436], [601, 396], [561, 385]] },\r\n        { pts: [[325, 264], [657, 354], [582, 378], [464, 317], [325, 264]] },\r\n        { pts: [[420, 501], [543, 557], [420, 501]] },\r\n        { pts: [[418, 606], [419, 501], [546, 554], [418, 606]] },\r\n        { pts: [[494, 482], [514, 497], [597, 458], [598, 435], [638, 420], [678, 430], [674, 504], [545, 554], [493, 530], [494, 482]] },\r\n        { pts: [[323, 264], [478, 235], [657, 354], [323, 264]] },\r\n        \r\n    ];\r\n}\r\nelse if (l === 'J') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[772, 30], [670, 30], [686, 762], [773, 762], [772, 30]] },\r\n        { pts: [[669, 30], [74, 33], [73, 71], [525, 73], [669, 30]] },\r\n        { pts: [[306, 138], [632, 41], [639, 742], [622, 732], [630, 731], [625, 284], [306, 138]] },\r\n        { pts: [[639, 39], [649, 36], [662, 752], [647, 745], [639, 39]] },\r\n        { pts: [[668, 754], [685, 762], [670, 30], [655, 33], [668, 754]] },\r\n        { pts: [[159, 72], [624, 284], [625, 304], [332, 298], [172, 176], [159, 72]] },\r\n        { pts: [[171, 176], [358, 320], [239, 652], [227, 648], [217, 567], [298, 344], [181, 255], [171, 176]] },\r\n        { pts: [[176, 216], [324, 327], [222, 615], [227, 648], [239, 652], [357, 319], [171, 175], [176, 216]] },\r\n        { pts: [[331, 299], [625, 304], [630, 732], [607, 730], [584, 724], [584, 366], [343, 360], [356, 321], [331, 299]] },\r\n        { pts: [[358, 328], [603, 337], [606, 729], [583, 722], [583, 365], [343, 360], [354, 328], [358, 328]] },\r\n        { pts: [[179, 254], [298, 344], [216, 564], [179, 254]] },\r\n        { pts: [[343, 360], [583, 365], [583, 722], [240, 652], [343, 360]] },\r\n        { pts: [[226, 787], [511, 708], [583, 722], [607, 729], [622, 731], [685, 763], [772, 761], [788, 788], [226, 787]] },\r\n        { pts: [[71, 71], [33, 56], [28, 760], [69, 788], [71, 71]] },\r\n        { pts: [[73, 71], [158, 72], [227, 648], [510, 708], [224, 788], [69, 787], [73, 71]] },\r\n        { pts: [[773, 761], [788, 788], [787, 1], [33, 0], [73, 33], [772, 31], [773, 761]] },\r\n        { pts: [[73, 32], [33, 55], [72, 71], [73, 32]] },\r\n        { pts: [[33, 2], [33, 55], [72, 32], [33, 2]] },\r\n        { pts: [[160, 72], [305, 138], [524, 73], [160, 72]] }\r\n    ];\r\n}\r\nelse if (l === 'K') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[23, 140], [345, 140], [344, 151], [46, 152], [23, 140]] },\r\n        { pts: [[46, 153], [46, 644], [81, 644], [82, 152], [46, 153]] },\r\n        { pts: [[90, 152], [89, 644], [259, 644], [257, 152], [90, 152]] },\r\n        { pts: [[265, 152], [269, 644], [299, 645], [298, 152], [265, 152]] },\r\n        { pts: [[306, 659], [305, 152], [345, 152], [342, 660], [306, 659]] },\r\n        { pts: [[89, 644], [88, 660], [259, 659], [259, 644], [89, 644]] },\r\n        { pts: [[47, 644], [82, 644], [82, 660], [46, 660], [47, 644]] },\r\n        { pts: [[269, 645], [268, 658], [300, 659], [299, 644], [269, 645]] },\r\n        { pts: [[35, 147], [36, 660], [46, 660], [46, 152], [35, 147]] },\r\n        { pts: [[24, 140], [24, 660], [36, 659], [35, 148], [24, 140]] },\r\n        { pts: [[89, 660], [299, 660], [300, 725], [89, 726], [89, 660]] },\r\n        { pts: [[90, 140], [90, 125], [298, 124], [298, 140], [90, 140]] },\r\n        { pts: [[345, 244], [453, 146], [472, 146], [345, 262], [342, 632], [422, 556], [448, 557], [342, 655], [345, 244]] },\r\n        { pts: [[422, 556], [343, 556], [342, 630], [422, 556]] },\r\n        { pts: [[472, 146], [502, 147], [344, 294], [345, 262], [472, 146]] },\r\n        { pts: [[491, 166], [407, 246], [377, 377], [410, 495], [490, 584], [491, 166]] },\r\n        { pts: [[491, 167], [686, 383], [665, 268], [590, 173], [491, 167]] },\r\n        { pts: [[490, 220], [682, 433], [645, 521], [573, 580], [490, 587], [490, 220]] },\r\n        { pts: [[504, 167], [504, 183], [548, 230], [548, 170], [504, 167]] },\r\n        { pts: [[502, 232], [546, 280], [545, 582], [504, 586], [502, 232]] },\r\n        { pts: [[408, 246], [491, 167], [490, 246], [408, 246]] },\r\n        { pts: [[409, 246], [489, 582], [490, 246], [409, 246]] },\r\n        { pts: [[451, 246], [452, 640], [489, 641], [490, 246], [451, 246]] },\r\n        { pts: [[504, 640], [504, 585], [545, 581], [545, 640], [504, 640]] },\r\n        { pts: [[546, 640], [703, 640], [705, 148], [548, 148], [589, 172], [664, 268], [688, 388], [682, 433], [645, 523], [571, 580], [546, 640]] },\r\n        { pts: [[504, 167], [504, 148], [548, 148], [548, 170], [504, 167]] },\r\n        { pts: [[706, 149], [754, 148], [754, 640], [703, 640], [706, 149]] },\r\n        { pts: [[503, 132], [706, 133], [706, 149], [503, 147], [503, 132]] },\r\n        { pts: [[706, 133], [771, 134], [771, 656], [754, 655], [753, 148], [706, 133]] },\r\n        { pts: [[754, 149], [770, 135], [706, 134], [706, 148], [754, 149]] },\r\n        { pts: [[703, 639], [754, 639], [755, 655], [702, 656], [703, 639]] },\r\n        { pts: [[546, 639], [546, 657], [703, 655], [702, 639], [546, 639]] },\r\n        { pts: [[504, 640], [546, 640], [546, 657], [503, 656], [504, 640]] },\r\n        { pts: [[451, 640], [489, 641], [489, 656], [450, 656], [451, 640]] },\r\n        { pts: [[453, 145], [453, 131], [504, 131], [504, 147], [453, 145]] },\r\n        { pts: [[503, 656], [702, 655], [702, 717], [504, 715], [503, 656]] },\r\n        { pts: [[270, 659], [299, 659], [299, 695], [270, 659]] },\r\n        { pts: [[299, 695], [323, 711], [339, 715], [498, 716], [497, 656], [299, 659], [299, 695]] },\r\n        { pts: [[503, 655], [546, 655], [547, 713], [504, 715], [503, 655]] },\r\n        { pts: [[504, 655], [506, 715], [546, 715], [546, 655], [504, 655]] }\r\n    ];\r\n}\r\nelse if (l === 'L') {\r\n   STEREO_TEMPLATES[l] = [\r\n        { pts: [[79, 78], [711, 72], [708, 712], [78, 713], [79, 78]] },\r\n        { pts: [[156, 217], [416, 98], [659, 221], [156, 217]] },\r\n        { pts: [[417, 112], [417, 206], [207, 207], [417, 112]] },\r\n        { pts: [[422, 112], [423, 206], [603, 208], [422, 112]] },\r\n        { pts: [[157, 222], [422, 224], [422, 382], [157, 222]] },\r\n        { pts: [[424, 226], [423, 379], [658, 223], [424, 226]] },\r\n        { pts: [[423, 381], [357, 381], [389, 361], [418, 381], [423, 381]] },\r\n        { pts: [[356, 381], [374, 524], [372, 381], [356, 381]] },\r\n        { pts: [[372, 381], [376, 523], [419, 523], [418, 381], [372, 381]] },\r\n        { pts: [[428, 479], [448, 479], [644, 347], [659, 347], [659, 498], [454, 649], [432, 648], [428, 479]] },\r\n        { pts: [[422, 667], [419, 381], [657, 222], [659, 348], [646, 347], [447, 478], [431, 478], [433, 666], [422, 667]] },\r\n        { pts: [[154, 218], [389, 362], [357, 381], [377, 523], [419, 523], [423, 666], [158, 506], [154, 218]] },\r\n        { pts: [[159, 512], [424, 676], [161, 672], [159, 512]] },\r\n        { pts: [[433, 676], [659, 507], [658, 676], [433, 676]] },\r\n        { pts: [[171, 536], [379, 662], [172, 656], [171, 536]] },\r\n        { pts: [[474, 661], [647, 528], [646, 658], [474, 661]] },\r\n        { pts: [[79, 643], [148, 713], [79, 713], [79, 643]] },\r\n        { pts: [[638, 712], [708, 641], [708, 712], [638, 712]] },\r\n        { pts: [[80, 78], [157, 78], [79, 141], [80, 78]] },\r\n        { pts: [[638, 73], [710, 143], [711, 72], [638, 73]] }\r\n    ];\r\n}\r\nelse if (l === 'M') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[101, 125], [101, 670], [691, 672], [686, 128], [101, 125]] },\r\n        { pts: [[218, 190], [219, 524], [158, 436], [158, 279], [218, 190]] },\r\n        { pts: [[218, 280], [511, 279], [218, 189], [218, 280]] },\r\n        { pts: [[274, 279], [337, 369], [455, 369], [513, 279], [274, 279]] },\r\n        { pts: [[274, 279], [248, 367], [279, 436], [280, 286], [274, 279]] },\r\n        { pts: [[279, 437], [394, 436], [338, 482], [279, 437]] },\r\n        { pts: [[338, 481], [373, 466], [394, 436], [338, 481]] },\r\n        { pts: [[338, 481], [301, 465], [280, 437], [338, 481]] },\r\n        { pts: [[279, 436], [254, 405], [248, 368], [279, 436]] },\r\n        { pts: [[248, 365], [250, 319], [274, 280], [248, 365]] },\r\n        { pts: [[280, 436], [219, 522], [450, 522], [394, 437], [373, 466], [338, 481], [302, 465], [280, 437]] },\r\n        { pts: [[219, 521], [218, 279], [274, 280], [250, 317], [248, 366], [254, 405], [279, 436], [219, 521]] },\r\n        { pts: [[219, 521], [276, 609], [389, 609], [450, 521], [219, 521]] },\r\n        { pts: [[456, 369], [513, 279], [514, 532], [457, 531], [456, 369]] },\r\n        { pts: [[514, 530], [572, 531], [574, 366], [513, 279], [514, 530]] },\r\n        { pts: [[458, 531], [494, 573], [533, 573], [572, 530], [514, 529], [458, 531]] },\r\n        { pts: [[572, 529], [634, 531], [617, 553], [594, 553], [572, 529]] },\r\n        { pts: [[574, 366], [634, 454], [634, 530], [572, 529], [574, 366]] },\r\n        { pts: [[101, 609], [690, 610], [690, 672], [101, 670], [101, 609]] },\r\n        { pts: [[156, 125], [158, 670], [102, 670], [101, 124], [156, 125]] },\r\n        { pts: [[633, 128], [636, 671], [690, 672], [686, 128], [633, 128]] },\r\n        { pts: [[102, 188], [686, 192], [686, 128], [101, 125], [102, 188]] },\r\n        { pts: [[634, 192], [686, 192], [686, 128], [633, 127], [634, 192]] },\r\n        { pts: [[635, 609], [690, 610], [690, 672], [636, 671], [635, 609]] },\r\n        { pts: [[102, 609], [158, 609], [159, 669], [102, 669], [102, 609]] },\r\n        { pts: [[101, 125], [156, 126], [156, 189], [101, 188], [101, 125]] },\r\n        { pts: [[157, 435], [275, 609], [158, 609], [157, 435]] },\r\n        { pts: [[280, 287], [279, 436], [394, 435], [457, 530], [455, 368], [337, 369], [280, 287]] },\r\n        { pts: [[450, 521], [494, 572], [532, 572], [572, 528], [594, 553], [616, 553], [635, 530], [635, 609], [388, 609], [450, 521]] },\r\n        { pts: [[217, 189], [512, 279], [633, 192], [217, 189]] },\r\n        { pts: [[513, 279], [634, 454], [633, 192], [513, 279]] },\r\n        { pts: [[156, 188], [218, 188], [156, 281], [156, 188]] }\r\n    ];\r\n}\r\nelse if (l === 'N') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[85, 81], [702, 79], [695, 701], [86, 703], [85, 81]] },\r\n        { pts: [[150, 176], [241, 123], [596, 122], [638, 177], [150, 176]] },\r\n        { pts: [[152, 175], [128, 186], [150, 451], [152, 175]] },\r\n        { pts: [[153, 175], [150, 450], [638, 177], [153, 175]] },\r\n        { pts: [[154, 453], [638, 453], [500, 261], [154, 453]] },\r\n        { pts: [[500, 261], [502, 453], [637, 454], [500, 261]] },\r\n        { pts: [[501, 261], [641, 180], [638, 453], [501, 261]] },\r\n        { pts: [[154, 451], [192, 477], [340, 477], [423, 453], [154, 451]] },\r\n        { pts: [[193, 477], [339, 478], [342, 658], [194, 658], [193, 477]] },\r\n        { pts: [[193, 477], [156, 452], [194, 658], [193, 477]] },\r\n        { pts: [[429, 453], [340, 477], [342, 658], [489, 658], [638, 454], [429, 453]] },\r\n        { pts: [[431, 453], [489, 658], [637, 454], [431, 453]] },\r\n        { pts: [[638, 454], [637, 658], [489, 659], [638, 454]] }\r\n    ];\r\n}\r\nelse if (l === 'O') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[20, 23], [769, 25], [768, 763], [23, 762], [20, 23]] },\r\n        { pts: [[23, 683], [104, 762], [23, 761], [22, 682], [23, 683]] },\r\n        { pts: [[686, 762], [768, 685], [768, 762], [686, 762]] },\r\n        { pts: [[698, 25], [769, 90], [769, 25], [698, 25]] },\r\n        { pts: [[21, 23], [21, 86], [83, 23], [21, 23]] },\r\n        { pts: [[50, 253], [67, 244], [66, 437], [54, 401], [50, 253]] },\r\n        { pts: [[104, 225], [123, 232], [198, 226], [239, 209], [202, 174], [104, 225]] },\r\n        { pts: [[107, 501], [129, 524], [170, 546], [358, 547], [358, 498], [107, 501]] },\r\n        { pts: [[546, 582], [584, 617], [684, 565], [662, 561], [618, 560], [587, 566], [546, 582]] },\r\n        { pts: [[719, 352], [733, 389], [737, 537], [718, 547], [719, 352]] },\r\n        { pts: [[376, 244], [616, 245], [656, 265], [682, 294], [382, 293], [381, 266], [376, 244]] },\r\n        { pts: [[238, 209], [202, 174], [250, 150], [338, 154], [352, 177], [366, 209], [238, 209]] },\r\n        { pts: [[680, 288], [682, 565], [720, 564], [718, 288], [680, 288]] },\r\n        { pts: [[662, 293], [663, 561], [618, 561], [588, 565], [588, 293], [662, 293]] },\r\n        { pts: [[559, 293], [579, 294], [580, 568], [559, 578], [559, 293]] },\r\n        { pts: [[524, 581], [516, 293], [524, 293], [524, 581]] },\r\n        { pts: [[543, 293], [534, 293], [534, 581], [545, 581], [543, 293]] },\r\n        { pts: [[497, 581], [495, 293], [471, 293], [472, 581], [497, 581]] },\r\n        { pts: [[424, 581], [452, 581], [452, 292], [424, 581]] },\r\n        { pts: [[424, 581], [423, 293], [452, 293], [424, 581]] },\r\n        { pts: [[410, 545], [395, 545], [394, 293], [407, 293], [410, 545]] },\r\n        { pts: [[369, 545], [378, 545], [382, 265], [366, 208], [369, 545]] },\r\n        { pts: [[335, 497], [335, 209], [355, 209], [358, 498], [335, 497]] },\r\n        { pts: [[317, 497], [304, 498], [305, 209], [317, 209], [317, 497]] },\r\n        { pts: [[293, 498], [270, 498], [270, 209], [292, 209], [293, 498]] },\r\n        { pts: [[243, 498], [242, 209], [233, 211], [234, 499], [243, 498]] },\r\n        { pts: [[206, 222], [207, 498], [198, 499], [198, 226], [206, 222]] },\r\n        { pts: [[123, 231], [123, 500], [106, 500], [105, 224], [123, 231]] },\r\n        { pts: [[95, 230], [100, 227], [101, 494], [97, 487], [95, 230]] },\r\n        { pts: [[88, 477], [84, 473], [85, 235], [90, 232], [88, 477]] },\r\n        { pts: [[73, 449], [77, 457], [78, 239], [72, 242], [72, 447], [73, 449]] },\r\n        { pts: [[127, 230], [191, 226], [191, 499], [128, 500], [127, 230]] },\r\n        { pts: [[226, 214], [220, 218], [221, 499], [226, 499], [226, 214]] },\r\n        { pts: [[242, 209], [270, 209], [270, 498], [243, 499], [242, 209]] },\r\n        { pts: [[128, 229], [191, 499], [190, 226], [128, 229]] },\r\n        { pts: [[588, 293], [663, 561], [618, 561], [588, 293]] },\r\n        { pts: [[588, 293], [663, 560], [662, 293], [588, 293]] },\r\n        { pts: [[106, 500], [358, 498], [358, 546], [170, 546], [130, 524], [105, 501], [106, 500]] },\r\n        { pts: [[105, 224], [123, 231], [198, 226], [238, 208], [202, 174], [105, 224]] },\r\n        { pts: [[685, 297], [698, 313], [698, 558], [686, 562], [685, 297]] },\r\n        { pts: [[701, 318], [709, 335], [710, 552], [702, 555], [701, 318]] }\r\n    ];\r\n}\r\nelse if (l === 'P') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[447, 211], [99, 62], [450, 61], [447, 211]] },\r\n        { pts: [[448, 210], [450, 62], [704, 60], [448, 210]] },\r\n        { pts: [[448, 211], [98, 61], [100, 586], [448, 211]] },\r\n        { pts: [[447, 216], [103, 589], [444, 764], [447, 216]] },\r\n        { pts: [[447, 217], [465, 764], [705, 583], [447, 217]] },\r\n        { pts: [[447, 210], [706, 576], [705, 60], [447, 210]] },\r\n        { pts: [[443, 765], [340, 616], [307, 683], [104, 588], [443, 765]] },\r\n        { pts: [[307, 684], [386, 683], [340, 615], [307, 684]] },\r\n        { pts: [[466, 763], [611, 621], [631, 553], [677, 592], [705, 583], [466, 763]] },\r\n        { pts: [[612, 622], [677, 591], [631, 554], [612, 622]] },\r\n        { pts: [[705, 62], [785, 5], [786, 780], [706, 575], [705, 62]] },\r\n        { pts: [[705, 61], [98, 62], [4, 5], [784, 5], [705, 61]] },\r\n        { pts: [[6, 5], [98, 63], [100, 584], [6, 779], [6, 5]] },\r\n        { pts: [[104, 588], [10, 781], [444, 782], [104, 588]] },\r\n        { pts: [[474, 781], [705, 583], [786, 784], [474, 781]] }\r\n    ];\r\n}\r\nelse if (l === 'Q') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[39, 33], [757, 34], [757, 756], [41, 756], [39, 33]] },\r\n        { pts: [[57, 48], [742, 48], [739, 734], [61, 736], [57, 48]] },\r\n        { pts: [[77, 68], [79, 717], [721, 716], [724, 64], [77, 68]] },\r\n        { pts: [[96, 699], [96, 83], [707, 81], [703, 699], [96, 699]] },\r\n        { pts: [[113, 98], [689, 98], [687, 682], [113, 682], [113, 98]] },\r\n        { pts: [[133, 114], [133, 663], [668, 663], [671, 117], [133, 114]] },\r\n        { pts: [[143, 203], [274, 203], [302, 242], [143, 241], [143, 203]] },\r\n        { pts: [[144, 251], [311, 252], [333, 283], [144, 284], [144, 251]] },\r\n        { pts: [[147, 291], [338, 292], [363, 327], [144, 326], [147, 291]] },\r\n        { pts: [[163, 338], [368, 336], [453, 459], [454, 641], [164, 639], [163, 338]] },\r\n        { pts: [[282, 201], [373, 329], [371, 191], [282, 201]] },\r\n        { pts: [[372, 189], [418, 181], [419, 407], [373, 342], [372, 189]] },\r\n        { pts: [[419, 406], [453, 459], [452, 181], [419, 181], [419, 406]] },\r\n        { pts: [[453, 181], [638, 179], [638, 459], [454, 459], [453, 181]] },\r\n        { pts: [[454, 458], [639, 458], [608, 488], [454, 492], [454, 458]] },\r\n        { pts: [[454, 497], [603, 493], [576, 521], [454, 522], [454, 497]] },\r\n        { pts: [[454, 526], [572, 524], [539, 557], [454, 558], [454, 526]] },\r\n        { pts: [[454, 557], [539, 557], [454, 641], [454, 557]] },\r\n        { pts: [[507, 588], [637, 641], [639, 458], [507, 588]] },\r\n        { pts: [[456, 641], [638, 642], [509, 588], [456, 641]] }\r\n    ];\r\n}\r\nelse if (l === 'R') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[61, 56], [729, 55], [777, 12], [11, 12], [61, 56]] },\r\n        { pts: [[10, 23], [60, 67], [61, 732], [9, 778], [10, 23]] },\r\n        { pts: [[19, 779], [71, 733], [729, 733], [778, 779], [19, 779]] },\r\n        { pts: [[779, 769], [729, 722], [729, 65], [778, 21], [779, 769]] },\r\n        { pts: [[72, 67], [715, 66], [716, 720], [72, 721], [72, 67]] },\r\n        { pts: [[82, 79], [702, 78], [703, 707], [83, 707], [82, 79]] },\r\n        { pts: [[225, 212], [192, 279], [223, 280], [225, 212]] },\r\n        { pts: [[232, 212], [231, 280], [563, 279], [232, 212]] },\r\n        { pts: [[190, 284], [299, 284], [299, 494], [138, 391], [190, 284]] },\r\n        { pts: [[303, 284], [303, 496], [466, 598], [464, 284], [303, 284]] },\r\n        { pts: [[473, 602], [506, 623], [563, 282], [470, 284], [473, 602]] },\r\n        { pts: [[139, 402], [494, 625], [383, 614], [294, 585], [201, 519], [139, 402]] },\r\n        { pts: [[510, 621], [568, 277], [629, 276], [629, 485], [597, 541], [559, 584], [510, 621]] },\r\n        { pts: [[573, 273], [628, 273], [629, 217], [616, 241], [591, 263], [573, 273]] },\r\n        { pts: [[564, 274], [592, 258], [614, 237], [627, 211], [613, 195], [566, 183], [472, 184], [232, 207], [563, 274]] },\r\n        { pts: [[509, 621], [559, 585], [567, 277], [509, 621]] },\r\n        { pts: [[559, 585], [596, 543], [566, 277], [559, 585]] },\r\n        { pts: [[566, 182], [613, 195], [563, 274], [566, 182]] },\r\n        { pts: [[563, 273], [471, 183], [564, 183], [563, 273]] },\r\n        { pts: [[563, 274], [471, 183], [231, 207], [563, 274]] },\r\n        { pts: [[136, 402], [200, 519], [227, 457], [136, 402]] },\r\n        { pts: [[294, 586], [384, 614], [324, 518], [294, 586]] },\r\n        { pts: [[384, 615], [494, 625], [323, 517], [384, 615]] }\r\n    ];\r\n}\r\nelse if (l === 'T') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[13, 13], [778, 12], [778, 778], [11, 778], [13, 13]] },\r\n        { pts: [[765, 765], [24, 765], [26, 26], [765, 25], [765, 765]] },\r\n        { pts: [[95, 666], [713, 665], [713, 132], [95, 132], [77, 124], [79, 678], [95, 666]] },\r\n        { pts: [[79, 678], [713, 676], [713, 665], [95, 666], [79, 678]] },\r\n        { pts: [[77, 124], [96, 132], [95, 666], [79, 678], [77, 124]] },\r\n        { pts: [[77, 125], [97, 132], [713, 133], [713, 123], [78, 124], [77, 125]] },\r\n        { pts: [[121, 151], [291, 256], [403, 255], [404, 152], [121, 151]] },\r\n        { pts: [[402, 255], [590, 253], [478, 189], [402, 255]] },\r\n        { pts: [[404, 152], [462, 182], [404, 235], [404, 152]] },\r\n        { pts: [[462, 182], [491, 156], [491, 145], [667, 145], [667, 168], [492, 169], [492, 177], [479, 190], [462, 182]] },\r\n        { pts: [[480, 189], [492, 178], [492, 169], [667, 168], [667, 253], [590, 253], [480, 189]] },\r\n        { pts: [[291, 256], [403, 255], [401, 358], [292, 359], [291, 256]] },\r\n        { pts: [[403, 255], [512, 254], [512, 263], [401, 364], [403, 255]] },\r\n        { pts: [[122, 151], [292, 257], [291, 462], [123, 463], [122, 151]] },\r\n        { pts: [[121, 150], [105, 170], [109, 502], [170, 463], [123, 463], [121, 150]] },\r\n        { pts: [[170, 463], [172, 501], [291, 501], [291, 462], [170, 463]] },\r\n        { pts: [[315, 478], [407, 393], [408, 412], [314, 499], [315, 478]] },\r\n        { pts: [[408, 410], [407, 499], [314, 500], [408, 410]] },\r\n        { pts: [[141, 522], [247, 522], [212, 501], [142, 501], [141, 522]] },\r\n        { pts: [[248, 522], [341, 578], [311, 605], [141, 606], [248, 522]] },\r\n        { pts: [[213, 502], [342, 578], [407, 517], [408, 499], [213, 502]] },\r\n        { pts: [[342, 578], [412, 511], [412, 608], [392, 608], [342, 578]] },\r\n        { pts: [[412, 603], [687, 603], [518, 498], [412, 498], [412, 603]] },\r\n        { pts: [[519, 498], [688, 603], [688, 311], [518, 310], [519, 498]] },\r\n        { pts: [[517, 310], [541, 290], [689, 292], [688, 311], [517, 310]] },\r\n        { pts: [[689, 311], [712, 327], [713, 634], [689, 633], [689, 311]] },\r\n        { pts: [[713, 633], [109, 634], [127, 654], [689, 654], [713, 633]] }\r\n    ];\r\n}\r\nelse if (l === 'S') {\r\n    STEREO_TEMPLATES[l] = [\r\n        { pts: [[12, 12], [778, 13], [778, 778], [12, 778], [12, 12]] },\r\n        { pts: [[25, 26], [765, 27], [764, 765], [26, 765], [25, 26]] },\r\n        { pts: [[706, 214], [753, 214], [751, 599], [546, 600], [704, 496], [706, 214]] },\r\n        { pts: [[704, 495], [547, 600], [751, 600], [705, 494], [704, 495]] },\r\n        { pts: [[633, 214], [580, 354], [634, 414], [633, 214]] },\r\n        { pts: [[455, 215], [580, 352], [634, 215], [455, 215]] },\r\n        { pts: [[453, 222], [700, 493], [542, 599], [453, 599], [453, 222]] },\r\n        { pts: [[637, 417], [699, 485], [700, 215], [637, 215], [637, 417]] },\r\n        { pts: [[344, 327], [454, 326], [454, 222], [344, 327]] },\r\n        { pts: [[346, 327], [347, 590], [453, 490], [453, 326], [346, 327]] },\r\n        { pts: [[346, 318], [300, 319], [298, 601], [347, 601], [346, 318]] },\r\n        { pts: [[300, 319], [300, 212], [346, 319], [300, 319]] },\r\n        { pts: [[300, 210], [346, 210], [346, 318], [300, 210]] },\r\n        { pts: [[79, 344], [298, 583], [300, 210], [79, 344]] },\r\n        { pts: [[168, 442], [79, 496], [80, 343], [168, 442]] },\r\n        { pts: [[39, 602], [299, 601], [298, 582], [167, 443], [79, 496], [39, 602]] },\r\n        { pts: [[40, 602], [39, 218], [288, 217], [80, 342], [79, 497], [40, 602]] },\r\n        { pts: [[346, 325], [454, 222], [346, 209], [346, 325]] },\r\n        { pts: [[453, 598], [347, 589], [453, 489], [453, 598]] },\r\n        { pts: [[38, 218], [80, 218], [78, 495], [39, 601], [38, 218]] },\r\n        { pts: [[78, 493], [80, 601], [38, 601], [77, 495], [78, 493]] }\r\n    ];\r\n}\r\n            else if (l === 'U') {\r\n                STEREO_TEMPLATES[l] = [\r\n                    { pts: [[108, 33], [71, 70], [108, 110], [108, 33]] },\r\n                    { pts: [[108, 34], [679, 104], [108, 108], [108, 34]] },\r\n                    { pts: [[108, 34], [679, 32], [679, 103], [108, 34]] },\r\n                    { pts: [[679, 31], [717, 71], [679, 102], [679, 31]] },\r\n                    { pts: [[717, 72], [678, 103], [748, 104], [717, 72]] },\r\n                    { pts: [[679, 103], [747, 104], [687, 687], [679, 103]] },\r\n                    { pts: [[746, 104], [687, 687], [749, 688], [746, 104]] },\r\n                    { pts: [[687, 687], [749, 688], [718, 718], [687, 687]] },\r\n                    { pts: [[686, 687], [718, 719], [686, 754], [686, 687]] },\r\n                    { pts: [[686, 751], [112, 681], [686, 687], [686, 751]] },\r\n                    { pts: [[686, 752], [114, 748], [112, 680], [686, 752]] },\r\n                    { pts: [[112, 679], [76, 714], [113, 747], [112, 679]] },\r\n                    { pts: [[37, 678], [111, 680], [78, 714], [37, 678]] },\r\n                    { pts: [[37, 678], [112, 680], [108, 108], [37, 678]] },\r\n                    { pts: [[72, 70], [34, 109], [107, 109], [72, 70]] },\r\n                    { pts: [[34, 109], [107, 109], [37, 677], [34, 109]] },\r\n                    { pts: [[551, 204], [681, 104], [661, 237], [551, 204]] },\r\n                    { pts: [[551, 204], [611, 573], [661, 236], [551, 204]] },\r\n                    { pts: [[108, 108], [681, 104], [552, 204], [108, 108]] },\r\n                    { pts: [[108, 108], [165, 120], [109, 260], [108, 108]] },\r\n                    { pts: [[164, 120], [462, 184], [111, 258], [164, 120]] },\r\n                    { pts: [[111, 259], [155, 285], [208, 582], [111, 259]] },\r\n                    { pts: [[208, 581], [526, 506], [612, 574], [265, 648], [208, 581]] },\r\n                    { pts: [[551, 204], [528, 507], [613, 574], [551, 204]] },\r\n                    { pts: [[155, 285], [551, 204], [528, 506], [155, 285]] },\r\n                    { pts: [[289, 257], [353, 405], [155, 286], [289, 257]] },\r\n                    { pts: [[351, 403], [411, 534], [527, 506], [351, 403]] },\r\n                    { pts: [[156, 287], [526, 506], [208, 581], [156, 287]] },\r\n                    { pts: [[208, 580], [112, 680], [265, 648], [208, 580]] },\r\n                    { pts: [[614, 575], [687, 687], [604, 685], [614, 575]] },\r\n                    { pts: [[612, 575], [687, 686], [681, 105], [612, 575]] },\r\n                    { pts: [[208, 580], [112, 680], [109, 258], [208, 580]] },\r\n                    { pts: [[604, 685], [611, 574], [112, 679], [604, 685]] },\r\n                    { pts: [[352, 404], [525, 506], [411, 534], [352, 404]] },\r\n                    { pts: [[111, 259], [156, 286], [551, 204], [461, 184], [111, 259]] },\r\n                    { pts: [[686, 686], [111, 679], [685, 751], [686, 686]] },\r\n                    { pts: [[604, 684], [611, 572], [686, 686], [604, 684]] }\r\n                ];\r\n            } \r\n            \/\/ \u9ed8\u8ba4\u5176\u5b83\u5b57\u6bcd\r\n           else {\r\n                    STEREO_TEMPLATES[l] = [\r\n                        { pts: [[400,200],[600,300],[400,400],[200,300],[400,200]] },\r\n                        { pts: [[200,300],[400,400],[400,600],[200,500],[200,300]] }\r\n                    ];\r\n                }\r\n            });\r\n\r\n            var sState = {\r\n                color: '#455A64',\r\n                fills: {},\r\n                currentTpl: \"A\"            };\r\n\r\n            function showNotice(msg, html){\r\n                if (!notice) return;\r\n                notice.style.display = 'block';\r\n                notice.innerHTML = html ? html : String(msg || 'Access denied.');\r\n            }\r\n\r\n            function lockUI(msg, html){\r\n                stopped = true;\r\n                showNotice(msg, html);\r\n\r\n                var block = main.querySelectorAll('button, .st-swatch-st_6a0d8e8441d07, #cv-' + uid);\r\n                Array.prototype.forEach.call(block, function(el){\r\n                    if (el && el.id !== ('head-' + uid)) el.classList.add('st-locked-st_6a0d8e8441d07');\r\n                });\r\n                if (cv) cv.style.cursor = 'not-allowed';\r\n            }\r\n\r\n            function requestUnlock(done){\r\n                if (stopped) return;\r\n                if (unlocked) {\r\n                    if (typeof done === 'function') done();\r\n                    return;\r\n                }\r\n                if (unlockPending) return;\r\n\r\n                unlockPending = true;\r\n\r\n                fetch(AJAX_URL, {\r\n                    method: 'POST',\r\n                    credentials: 'same-origin',\r\n                    headers: {\r\n                        'Content-Type': 'application\/x-www-form-urlencoded; charset=UTF-8'\r\n                    },\r\n                    body: new URLSearchParams({\r\n                        action: 'arttao_stereo_launcher_unlock',\r\n                        nonce: AJAX_NONCE\r\n                    }).toString()\r\n                })\r\n                .then(function(r){ return r.json(); })\r\n                .then(function(res){\r\n                    unlockPending = false;\r\n                    if (res && res.success) {\r\n                        unlocked = true;\r\n                        if (notice) {\r\n                            notice.style.display = 'none';\r\n                            notice.innerHTML = '';\r\n                        }\r\n                        if (typeof done === 'function') done();\r\n                        return;\r\n                    }\r\n                    lockUI(\r\n                        res && res.data && res.data.message ? res.data.message : 'Access denied.',\r\n                        res && res.data && res.data.upgrade_html ? res.data.upgrade_html : ''\r\n                    );\r\n                })\r\n                .catch(function(){\r\n                    unlockPending = false;\r\n                    lockUI('Request failed.');\r\n                });\r\n            }\r\n\r\n            function ensureUnlocked(run){\r\n                if (stopped) return;\r\n                if (unlocked) {\r\n                    run();\r\n                    return;\r\n                }\r\n                requestUnlock(run);\r\n            }\r\n\r\n            function setupCanvas(){\r\n                var dpr = window.devicePixelRatio || 1;\r\n                cv.width = Math.round(CANVAS_BASE * dpr);\r\n                cv.height = Math.round(CANVAS_BASE * dpr);\r\n                ctx.setTransform(1, 0, 0, 1, 0, 0);\r\n                ctx.clearRect(0, 0, cv.width, cv.height);\r\n                ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\r\n            }\r\n\r\n            function applyPath(pts) {\r\n                ctx.beginPath();\r\n                if (!pts || !pts.length) return;\r\n                ctx.moveTo(pts[0][0], pts[0][1]);\r\n                for (var i = 1; i < pts.length; i++) {\r\n                    ctx.lineTo(pts[i][0], pts[i][1]);\r\n                }\r\n                ctx.closePath();\r\n            }\r\n\r\n            function render(){\r\n                setupCanvas();\r\n\r\n                ctx.fillStyle = \"#ffffff\";\r\n                ctx.fillRect(0, 0, CANVAS_BASE, CANVAS_BASE);\r\n\r\n                var shapes = STEREO_TEMPLATES[sState.currentTpl] || [];\r\n                shapes.forEach(function(shape, i){\r\n                    applyPath(shape.pts);\r\n\r\n                    if (sState.fills[i]) {\r\n                        ctx.fillStyle = sState.fills[i];\r\n                        ctx.fill();\r\n                    }\r\n\r\n                    ctx.strokeStyle = \"#CFD8DC\";\r\n                    ctx.lineWidth = 1;\r\n                    ctx.stroke();\r\n                });\r\n            }\r\n\r\n            this.openPanel = function(){\r\n                if (!launcher || !main) return;\r\n                launcher.style.display = 'none';\r\n                main.classList.add('is-open');\r\n                setTimeout(render, 120);\r\n            };\r\n\r\n            this.closePanel = function(){\r\n                if (!launcher || !main) return;\r\n                main.classList.remove('is-open');\r\n                setTimeout(function(){ launcher.style.display = 'block'; }, 600);\r\n            };\r\n\r\n            this.switchTpl = function(L, btn){\r\n                if (stopped) return;\r\n                ensureUnlocked(function(){\r\n                    Array.prototype.forEach.call(document.querySelectorAll('#tabs-' + uid + ' .st-tab-btn-st_6a0d8e8441d07'), function(b){\r\n                        b.classList.remove('active');\r\n                    });\r\n                    if (btn) btn.classList.add('active');\r\n                    sState.currentTpl = String(L || 'A').toUpperCase();\r\n                    sState.fills = {};\r\n                    render();\r\n                });\r\n            };\r\n\r\n            this.pickColor = function(color, sw){\r\n                if (stopped) return;\r\n                ensureUnlocked(function(){\r\n                    sState.color = color;\r\n                    var all = document.querySelectorAll('#pal-' + uid + ' .st-swatch-st_6a0d8e8441d07');\r\n                    Array.prototype.forEach.call(all, function(el){ el.classList.remove('active'); });\r\n                    if (sw) sw.classList.add('active');\r\n                });\r\n            };\r\n\r\n            this.reset = function(){\r\n                if (stopped) return;\r\n                ensureUnlocked(function(){\r\n                    if (window.confirm('\u786e\u5b9a\u8981\u6e05\u7a7a\u5f53\u524d\u7684\u7acb\u4f53\u8272\u5f69\u5417\uff1f')) {\r\n                        sState.fills = {};\r\n                        render();\r\n                    }\r\n                });\r\n            };\r\n\r\n            this.save = function(){\r\n                if (stopped) return;\r\n                ensureUnlocked(function(){\r\n                    var a = document.createElement('a');\r\n                    a.download = 'stereo_arttao_' + sState.currentTpl + '.png';\r\n                    a.href = cv.toDataURL('image\/png');\r\n                    a.click();\r\n                });\r\n            };\r\n\r\n            cv.onclick = function(e){\r\n                if (stopped) return;\r\n                ensureUnlocked(function(){\r\n                    var rect = cv.getBoundingClientRect();\r\n                    var dpr = window.devicePixelRatio || 1;\r\n                    var x = (e.clientX - rect.left) * (CANVAS_BASE \/ rect.width) * dpr;\r\n                    var y = (e.clientY - rect.top) * (CANVAS_BASE \/ rect.height) * dpr;\r\n                    var shapes = STEREO_TEMPLATES[sState.currentTpl] || [];\r\n\r\n                    for (var i = shapes.length - 1; i >= 0; i--) {\r\n                        applyPath(shapes[i].pts);\r\n                        if (ctx.isPointInPath(x, y)) {\r\n                            sState.fills[i] = (sState.fills[i] === sState.color) ? null : sState.color;\r\n                            render();\r\n                            break;\r\n                        }\r\n                    }\r\n                });\r\n            };\r\n\r\n            window.addEventListener('resize', function(){\r\n                if (main && main.classList.contains('is-open')) render();\r\n            });\r\n\r\n            (function buildPalette(){\r\n                var pal = document.getElementById('pal-' + uid);\r\n                if (!pal) return;\r\n                COLORS.forEach(function(color, idx){\r\n                    var sw = document.createElement('div');\r\n                    sw.className = 'st-swatch-st_6a0d8e8441d07' + (idx === 0 ? ' active' : '');\r\n                    sw.style.background = color;\r\n                    sw.onclick = function(e){\r\n                        e.preventDefault();\r\n                        e.stopPropagation();\r\n                        window['logic_st_6a0d8e8441d07'].pickColor(color, sw);\r\n                    };\r\n                    pal.appendChild(sw);\r\n                });\r\n            })();\r\n\r\n            if (false) {\r\n                setTimeout(function(){ window['logic_st_6a0d8e8441d07'].openPanel(); }, 80);\r\n            } else {\r\n                setTimeout(render, 80);\r\n            }\r\n        })();\r\n    })();\r\n    <\/script>\r\n\r\n    \n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">\u672c\u5f15\u64ce\u4e13\u4e3a\u7a7a\u95f4\u7ef4\u5ea6\u7ec3\u4e60\u8bbe\u8ba1\uff0c\u91c7\u7528\u7cbe\u51c6\u7684\u8f74\u4fa7\u6295\u5f71\u7b97\u6cd5\u4e0e\u51e0\u4f55\u7ed3\u6784\u6f14\u5316\u903b\u8f91\u3002\u652f\u6301 U \u7ea7\u591a\u6a21\u677f\u5207\u6362\uff0c\u5177\u5907\u6df1\u5ea6\u7a7a\u95f4\u611f\u6e32\u67d3\u3001\u5b9e\u65f6\u5c40\u90e8\u64a4\u9500\u4e0e 1200px \u9ad8\u6e05\u89c6\u56fe\u5bfc\u51fa\u529f\u80fd\uff0c\u662f\u63a2\u7d22\u4e09\u7ef4\u5f62\u4f53\u6784\u6210\u7684\u7406\u60f3\u5de5\u5177\u3002<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/02\/art179.gif\" alt=\"\" class=\"wp-image-1090\" style=\"border-top-left-radius:300px;border-top-right-radius:300px;border-bottom-left-radius:300px;border-bottom-right-radius:300px;width:72px;height:auto\"\/><\/figure>\n\n\n\r\n    <style>\r\n        .mx-launcher-mix_YfLFJG45 {\r\n            max-width:1000px;margin:20px auto;background:#E6CCFF;border-radius:30px;\r\n            padding:20px;text-align:center;cursor:pointer;color:#fff;\r\n            box-shadow:0 10px 25px rgba(42,92,170,.2);transition:all .3s ease;border:1px solid #15438a;\r\n        }\r\n        .mx-launcher-mix_YfLFJG45:hover { transform:translateY(-3px); background:#356ab0; }\r\n        .mx-main-container-mix_YfLFJG45 {\r\n            max-width:1000px;margin:0 auto;overflow:hidden;max-height:0;display:none;\r\n            transition:max-height .6s cubic-bezier(.4,0,.2,1);\r\n        }\r\n        .mx-main-container-mix_YfLFJG45.is-open { max-height:2500px; margin-top:20px; display:block; }\r\n        .mx-head-mix_YfLFJG45 {\r\n            width:100%;display:flex;justify-content:space-between;align-items:center;\r\n            padding:15px 20px;background:#CCFFFF;border:1px solid #FFCCFF;border-radius:15px 15px 0 0;\r\n            font-size:16px;cursor:pointer;font-weight:bold;color:#2A5CAA;box-sizing:border-box;\r\n        }\r\n        .mx-close-btn-mix_YfLFJG45 { margin-right:25px; }\r\n        .mx-body-mix_YfLFJG45 { padding:25px;border:1px solid #FFCCFF;border-top:none;border-radius:0 0 15px 15px;background:#fff; }\r\n        .mx-tabs-mix_YfLFJG45 { display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:20px; }\r\n        .mx-tab-btn-mix_YfLFJG45 { padding:6px 10px;border:1px solid #AEE5E5;border-radius:8px;background:#f9ffff;cursor:pointer;font-size:11px;font-weight:bold; }\r\n        .mx-tab-btn-mix_YfLFJG45.active { background:#2A5CAA !important; color:#fff !important; }\r\n        .mx-canvas-box-mix_YfLFJG45 { width:100%;aspect-ratio:1\/1;background:#fff;margin-bottom:20px;border-radius:10px;border:1px solid #f0f0f0; }\r\n        #cv-mix_YfLFJG45 { width:100%;height:100%;display:block;cursor:crosshair; }\r\n        .mx-palette-mix_YfLFJG45 { display:grid;grid-template-columns:repeat(auto-fill, minmax(22px, 1fr));gap:4px;margin-bottom:20px; }\r\n        .mx-swatch-mix_YfLFJG45 { aspect-ratio:3\/4;border-radius:12px;cursor:pointer;border:1px solid rgba(0,0,0,.1); }\r\n        .mx-swatch-mix_YfLFJG45.active { border:2px solid #2A5CAA; transform:scale(1.1); }\r\n        .mx-btns-mix_YfLFJG45 { display:flex;gap:12px;justify-content:center; }\r\n        .mx-btns-mix_YfLFJG45 button { padding:10px 30px;background:#F0F7FF;border:1px solid #AEE5E5;border-radius:50px;font-weight:bold;cursor:pointer;font-size:14px; }\r\n        .mx-gate-notice-mix_YfLFJG45 {\r\n            display:none;margin:0 0 14px;padding:12px 14px;border:1px solid #f5deb3;border-radius:14px;\r\n            background:#fffaf2;color:#7a4f01;line-height:1.6;text-align:left;\r\n        }\r\n        .mx-disabled-mix_YfLFJG45 { opacity:.55; pointer-events:none; }\r\n    <\/style>\r\n\r\n    <div class=\"mx-launcher-mix_YfLFJG45\" id=\"launcher-mix_YfLFJG45\"\r\n         onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].togglePanel(true, event));\">\r\n        <h3 style=\"margin:0\">\u25cf AI \u6df7\u5408\u6784\u6210\u5f15\u64ce \u25cf<\/h3>\r\n        <span style=\"font-size:12px;border:1px solid rgba(255,255,255,.4);padding:2px 8px;border-radius:20px;margin-top:10px;display:inline-block;\">\u70b9\u51fb\u5f00\u59cb\u7ec3\u4e60<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"mx-main-container-mix_YfLFJG45 \" id=\"main-mix_YfLFJG45\" style=\"display:none;\">\r\n        <div class=\"mx-head-mix_YfLFJG45\" id=\"head-mix_YfLFJG45\"\r\n             onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].togglePanel(false, event));\">\r\n            <span>\u2190 \u7ec3\u4e60\u8fdb\u884c\u4e2d<\/span>\r\n            <span class=\"mx-close-btn-mix_YfLFJG45\">\u8fd4\u56de \u2715<\/span>\r\n        <\/div>\r\n        <div class=\"mx-body-mix_YfLFJG45\" id=\"body-mix_YfLFJG45\">\r\n            <div class=\"mx-gate-notice-mix_YfLFJG45\" id=\"notice-mix_YfLFJG45\"><\/div>\r\n            <div class=\"mx-tabs-mix_YfLFJG45\" id=\"tabs-mix_YfLFJG45\">\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 active\"\r\n                            data-id=\"A\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('A', this, event));\">A<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"B\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('B', this, event));\">B<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"C\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('C', this, event));\">C<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"D\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('D', this, event));\">D<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"E\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('E', this, event));\">E<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"F\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('F', this, event));\">F<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"G\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('G', this, event));\">G<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"H\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('H', this, event));\">H<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"I\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('I', this, event));\">I<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"J\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('J', this, event));\">J<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"K\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('K', this, event));\">K<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"L\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('L', this, event));\">L<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"M\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('M', this, event));\">M<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"N\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('N', this, event));\">N<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"O\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('O', this, event));\">O<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"P\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('P', this, event));\">P<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"Q\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('Q', this, event));\">Q<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"R\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('R', this, event));\">R<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"S\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('S', this, event));\">S<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"T\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('T', this, event));\">T<\/button>\r\n                                    <button type=\"button\"\r\n                            class=\"mx-tab-btn-mix_YfLFJG45 \"\r\n                            data-id=\"U\"\r\n                            onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onTabClick('U', this, event));\">U<\/button>\r\n                            <\/div>\r\n            <div class=\"mx-canvas-box-mix_YfLFJG45\"><canvas id=\"cv-mix_YfLFJG45\"><\/canvas><\/div>\r\n            <div class=\"mx-palette-mix_YfLFJG45\" id=\"pal-mix_YfLFJG45\"><\/div>\r\n            <div class=\"mx-btns-mix_YfLFJG45\">\r\n                <button type=\"button\" id=\"reset-mix_YfLFJG45\" onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onReset(event));\">\u91cd\u7f6e<\/button>\r\n                <button type=\"button\" id=\"save-mix_YfLFJG45\" onclick=\"return (window['logic_mix_YfLFJG45'] && window['logic_mix_YfLFJG45'].onSave(event));\">\u4fdd\u5b58<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n    (function(){\r\n        \"use strict\";\r\n\r\n        var uid = \"mix_YfLFJG45\";\r\n        var AJAX_URL = \"https:\\\/\\\/arttao.net\\\/wp-admin\\\/admin-ajax.php\";\r\n        var AJAX_NONCE = \"078df322bc\";\r\n        var BASE = 800;\r\n\r\n        var launcher = document.getElementById('launcher-' + uid);\r\n        var main = document.getElementById('main-' + uid);\r\n        var canvas = document.getElementById('cv-' + uid);\r\n        var ctx = canvas ? canvas.getContext('2d') : null;\r\n        var tabsWrap = document.getElementById('tabs-' + uid);\r\n        var pal = document.getElementById('pal-' + uid);\r\n        var notice = document.getElementById('notice-' + uid);\r\n        var body = document.getElementById('body-' + uid);\r\n\r\n        if (!canvas || !ctx || !launcher || !main) return;\r\n\r\n        var MIX_TEMPLATES = {};\r\n        MIX_TEMPLATES['A'] = [\r\n            { type:'poly', data:[[13,12],[779,12],[779,778],[13,778],[13,12]] },\r\n            { type:'poly', data:[[77,56],[722,53],[721,735],[71,732],[77,55]] },\r\n            { type:'poly', data:[[134,60],[84,92],[80,575],[84,598],[90,621],[100,641],[112,659],[124,677],[142,692],[161,706],[181,718],[195,726],[501,729],[514,725],[532,719],[501,721],[261,716],[238,709],[214,698],[193,685],[172,670],[159,653],[145,631],[138,612],[134,600],[130,586],[129,573],[128,560],[134,61]] },\r\n            { type:'poly', data:[[502,55],[514,55],[526,57],[537,59],[549,62],[560,66],[571,70],[581,76],[591,82],[601,89],[610,96],[618,104],[626,113],[633,123],[640,132],[646,143],[651,153],[655,164],[658,176],[661,187],[663,199],[663,211],[663,222],[663,234],[661,246],[658,257],[655,269],[651,280],[646,290],[640,301],[633,310],[626,320],[618,329],[610,337],[601,344],[591,351],[581,357],[571,363],[560,367],[549,371],[537,374],[526,376],[514,378],[502,378]] },\r\n            { type:'circle', data:[500,565,156] },\r\n            { type:'poly', data:[[135,60],[137,62],[503,55],[503,221],[332,224],[138,64]] },\r\n            { type:'poly', data:[[333,224],[352,224],[351,519],[347,534],[345,550],[344,565],[331,565],[334,225]] },\r\n            { type:'poly', data:[[135,62],[334,226],[334,565],[499,567],[502,721],[263,717],[239,710],[214,699],[194,687],[173,671],[159,655],[146,632],[136,603],[131,588],[129,567],[135,64]] },\r\n            { type:'poly', data:[[354,224],[503,377],[503,221],[356,223]] },\r\n            { type:'poly', data:[[665,200],[660,179],[653,156],[643,134],[628,114],[613,98],[594,83],[573,71],[552,63],[517,55],[724,53],[723,736],[533,718],[565,707],[587,694],[607,679],[624,659],[640,634],[649,611],[655,581],[665,524],[666,201]] },\r\n            { type:'poly', data:[[14,685],[120,778],[13,778],[14,692]] },\r\n            { type:'poly', data:[[780,689],[678,778],[780,778],[780,690]] },\r\n            { type:'poly', data:[[14,12],[126,12],[14,111],[14,13]] },\r\n            { type:'poly', data:[[681,12],[780,100],[780,12],[681,12]] }\r\n        ];\r\n        \r\n        MIX_TEMPLATES['B'] = [\r\n    { type:'poly', data:[[239,216],[240,205],[242,193],[246,183],[252,173],[259,163],[267,155],[276,149],[287,143],[297,139],[309,137],[320,136],[331,137],[343,139],[353,143],[363,149],[373,156],[381,164],[387,173],[393,184],[397,194],[399,206],[400,217]] },\r\n    { type:'poly', data:[[511,421],[523,422],[534,425],[545,430],[555,437],[563,445],[570,455],[575,466],[578,478],[580,490],[578,501],[575,513],[570,524],[563,534],[555,542],[545,549],[534,554],[523,557],[511,558]] },\r\n    { type:'poly', data:[[669,92],[317,375],[346,397],[667,139],[667,93]] },\r\n    { type:'poly', data:[[121,217],[239,216],[235,308],[121,216]] },\r\n    { type:'poly', data:[[236,308],[324,217],[401,307],[236,308]] },\r\n    { type:'poly', data:[[400,217],[401,306],[513,217],[401,217]] },\r\n    { type:'poly', data:[[468,92],[467,216],[512,217],[670,92],[469,92]] },\r\n    { type:'poly', data:[[317,374],[121,375],[121,218],[318,374]] },\r\n    { type:'poly', data:[[121,381],[310,380],[121,533],[121,382]] },\r\n    { type:'poly', data:[[463,422],[667,422],[668,257],[463,422]] },\r\n    { type:'poly', data:[[288,515],[316,539],[669,256],[668,211],[289,515]] },\r\n    { type:'poly', data:[[464,421],[511,556],[511,422],[465,421]] },\r\n    { type:'poly', data:[[318,539],[510,556],[464,422],[318,538]] },\r\n    { type:'poly', data:[[316,539],[511,555],[509,695],[315,538]] },\r\n    { type:'poly', data:[[315,538],[319,694],[509,695],[316,539]] },\r\n    { type:'poly', data:[[310,545],[312,694],[123,693],[311,544]] },\r\n    { type:'poly', data:[[121,90],[70,47],[500,45],[470,92],[121,90]] },\r\n    { type:'poly', data:[[474,92],[504,46],[717,46],[667,92],[474,91]] },\r\n    { type:'poly', data:[[667,96],[717,49],[718,454],[668,419],[668,95]] },\r\n    { type:'poly', data:[[668,423],[717,458],[720,738],[667,695],[668,421]] },\r\n    { type:'poly', data:[[666,696],[717,739],[273,739],[316,693],[667,694]] },\r\n    { type:'poly', data:[[309,694],[266,740],[69,739],[122,693],[309,693]] },\r\n    { type:'poly', data:[[70,733],[120,689],[121,353],[69,316],[70,733]] },\r\n    { type:'poly', data:[[69,311],[121,346],[121,94],[70,52],[70,310]] },\r\n    { type:'poly', data:[[511,556],[522,557],[533,561],[542,567],[550,574],[557,584],[561,594],[563,605],[563,616],[561,627],[556,637],[549,646],[541,653],[531,659],[520,662],[509,663]] },\r\n    { type:'poly', data:[[237,216],[236,205],[232,194],[227,184],[220,175],[211,168],[201,163],[190,160],[179,159],[167,160],[156,163],[146,169],[138,176],[130,185],[125,195],[122,206],[121,217]] },\r\n    { type:'poly', data:[[401,217],[403,206],[408,196],[417,188],[428,184],[439,184],[450,188],[459,195],[465,205],[467,216]] },\r\n    { type:'poly', data:[[240,216],[234,308],[324,216],[241,216]] },\r\n    { type:'poly', data:[[234,307],[318,373],[401,307],[234,308]] },\r\n    { type:'poly', data:[[318,374],[345,397],[121,582],[121,531],[318,374]] },\r\n    { type:'poly', data:[[290,515],[316,539],[120,693],[120,648],[290,514]] },\r\n    { type:'poly', data:[[120,599],[120,620],[669,185],[668,156],[120,598],[120,621]] }\r\n];\r\nMIX_TEMPLATES['C'] = [\r\n    { type:'circle', data:[242,191,116] },\r\n    { type:'circle', data:[420,199,62] },\r\n    { type:'circle', data:[382,494,79] },\r\n    { type:'circle', data:[512,494,51] },\r\n\r\n    { type:'poly', data:[[269,304],[422,261],[394,379],[269,304]] },\r\n    { type:'poly', data:[[422,261],[394,377],[506,377],[422,261]] },\r\n    { type:'poly', data:[[421,261],[534,264],[507,377],[422,261]] },\r\n    { type:'poly', data:[[267,304],[211,380],[395,377],[267,304]] },\r\n    { type:'poly', data:[[212,379],[0,381],[269,304],[212,379]] },\r\n    { type:'poly', data:[[479,219],[662,375],[746,217],[479,217]] },\r\n    { type:'poly', data:[[507,377],[534,265],[664,376],[507,376]] },\r\n    { type:'poly', data:[[479,217],[512,192],[789,195],[789,602],[749,592],[746,219],[480,216]] },\r\n    { type:'poly', data:[[276,80],[787,191],[514,192],[441,116],[787,191],[786,190]] },\r\n    { type:'poly', data:[[1,22],[250,75],[251,22],[1,22]] },\r\n    { type:'poly', data:[[252,22],[440,116],[724,21],[251,24]] },\r\n    { type:'poly', data:[[722,21],[787,2],[789,190],[722,22]] },\r\n    { type:'poly', data:[[439,116],[722,22],[789,192],[439,116]] },\r\n    { type:'poly', data:[[0,21],[122,49],[124,346],[1,381],[1,22]] },\r\n    { type:'poly', data:[[316,450],[212,379],[0,380],[316,450]] },\r\n    { type:'poly', data:[[0,432],[303,495],[1,500],[1,431]] },\r\n    { type:'poly', data:[[0,500],[303,496],[297,605],[2,501]] },\r\n    { type:'poly', data:[[297,604],[387,573],[404,641],[297,604]] },\r\n    { type:'poly', data:[[405,641],[481,534],[516,682],[406,642]] },\r\n    { type:'poly', data:[[516,681],[544,534],[624,720],[516,682]] },\r\n    { type:'poly', data:[[544,534],[624,721],[702,749],[544,534]] },\r\n    { type:'poly', data:[[544,534],[747,576],[749,766],[712,765],[543,535]] },\r\n    { type:'poly', data:[[746,592],[789,602],[789,765],[750,765],[747,592]] },\r\n    { type:'poly', data:[[50,519],[180,565],[51,769],[50,520]] },\r\n    { type:'poly', data:[[54,767],[180,566],[350,766],[54,766]] },\r\n    { type:'poly', data:[[179,565],[349,766],[712,766],[700,747],[182,565]] },\r\n    { type:'poly', data:[[1,501],[51,519],[51,766],[0,789],[1,501]] },\r\n    { type:'poly', data:[[2,789],[789,789],[789,765],[54,766]] },\r\n    { type:'poly', data:[[509,376],[551,461],[664,375],[510,376]] },\r\n    { type:'poly', data:[[395,377],[469,466],[509,376],[395,376]] },\r\n    { type:'poly', data:[[316,450],[365,377],[212,379],[316,450]] },\r\n    { type:'poly', data:[[1,22],[250,24],[251,75],[1,22]] },\r\n    { type:'poly', data:[[1,21],[1,1],[785,1],[722,21],[1,22]] },\r\n    { type:'poly', data:[[664,375],[746,219],[747,377],[665,375]] }\r\n];\r\n\r\nMIX_TEMPLATES['D'] = [\r\n    { type:'poly', data:[[277,148],[533,421],[533,146],[277,146]] },\r\n    { type:'poly', data:[[532,418],[736,626],[736,334],[533,148],[534,420]] },\r\n    { type:'poly', data:[[102,146],[277,146],[102,309],[101,145]] },\r\n    { type:'poly', data:[[102,308],[522,736],[66,737],[102,308]] },\r\n    { type:'poly', data:[[54,308],[102,308],[65,737],[53,308]] },\r\n    { type:'poly', data:[[101,50],[102,308],[53,308],[100,50]] },\r\n    { type:'poly', data:[[101,49],[56,50],[53,306],[101,49]] },\r\n    { type:'poly', data:[[101,49],[102,145],[534,146],[532,53],[101,49]] },\r\n    { type:'poly', data:[[532,53],[533,146],[736,334],[734,57],[533,52]] },\r\n\r\n    { type:'poly', data:[[532,52],[521,53],[511,58],[502,64],[494,72],[489,82],[487,93],[487,104],[490,115],[495,125],[502,133],[512,139],[522,143],[533,144]] },\r\n    { type:'poly', data:[[101,50],[112,51],[123,55],[132,62],[140,70],[145,80],[148,91],[148,103],[145,114],[140,124],[132,132],[123,139],[112,143],[101,144]] },\r\n\r\n    { type:'poly', data:[[276,146],[268,155],[261,165],[256,175],[253,187],[251,199],[251,210],[253,222],[257,234],[262,244],[269,254],[277,263],[286,270],[296,276],[308,280],[319,283],[331,284],[343,283],[354,280],[365,275],[376,269],[385,262]] },\r\n    { type:'poly', data:[[386,265],[378,274],[373,284],[371,296],[371,307],[374,319],[380,329],[388,338],[398,344],[409,348],[420,349],[432,347],[443,343],[452,336]] },\r\n    { type:'poly', data:[[456,338],[448,347],[442,357],[439,369],[438,381],[440,393],[443,404],[450,414],[458,423],[468,429],[479,434],[490,436],[502,436],[514,433],[525,428],[534,421]] },\r\n\r\n    { type:'poly', data:[[737,626],[736,638],[734,649],[731,660],[727,671],[722,682],[716,692],[710,701],[702,710],[693,718],[684,725],[674,731],[664,736],[653,740],[641,744],[630,746],[618,746],[607,746],[595,745],[584,743],[573,739],[562,735],[552,729],[542,723],[533,715],[524,707],[517,698],[510,689],[505,678],[500,668],[496,657],[494,645],[492,634],[492,622]] },\r\n\r\n    { type:'poly', data:[[534,148],[542,140],[552,134],[563,129],[574,126],[585,125],[597,126],[608,129],[618,134],[628,140],[637,148],[644,157],[649,167],[653,178],[655,189],[655,200],[653,212],[649,223],[644,233],[637,242]] },\r\n\r\n    { type:'poly', data:[[541,426],[534,435],[528,444],[523,455],[521,466],[520,477],[521,489],[524,500],[529,510],[536,519],[544,527],[553,534],[563,539],[574,543],[585,544],[596,544],[608,542],[618,538],[628,532],[637,525]] },\r\n    { type:'poly', data:[[642,531],[635,540],[630,550],[627,561],[627,572],[630,583],[635,594],[642,603],[650,610],[660,615],[671,617],[683,617],[694,615],[704,610],[713,603]] },\r\n\r\n    { type:'poly', data:[[102,307],[111,299],[120,292],[130,286],[141,280],[152,276],[163,272],[175,270],[187,269],[198,268],[210,269],[222,271],[234,273],[245,277],[256,282],[266,287],[276,294],[285,301],[294,309],[302,318],[309,327],[315,337],[321,348],[325,359],[329,370],[331,382],[332,394],[333,405],[332,417],[330,429],[328,441],[324,452],[319,463],[314,473],[307,483],[300,492],[292,501]] },\r\n\r\n    { type:'poly', data:[[301,510],[310,502],[320,496],[331,492],[342,489],[354,488],[366,489],[377,492],[388,497],[398,503],[406,510],[414,519],[420,529],[425,540],[427,552],[428,563],[427,575],[424,586],[420,597],[414,607],[406,616]] },\r\n\r\n    { type:'poly', data:[[414,626],[423,619],[435,616],[446,616],[457,620],[467,627],[473,636],[477,647],[477,659],[473,670],[466,679]] },\r\n\r\n    { type:'poly', data:[[534,420],[736,333],[533,149],[534,421]] },\r\n\r\n    { type:'poly', data:[[154,362],[146,371],[140,381],[136,392],[134,404],[133,416],[135,428],[138,439],[144,450],[150,459],[159,467],[169,474],[179,479],[191,483],[202,484],[214,484],[226,481],[237,477],[247,471],[256,463]] },\r\n\r\n    { type:'poly', data:[[261,469],[253,478],[247,487],[242,498],[238,508],[235,520],[235,531],[235,543],[237,554],[241,565],[246,576],[252,585],[260,594],[269,602],[278,608],[289,613],[299,617],[311,620],[322,620],[334,620],[345,618],[356,614],[367,609],[376,603],[385,595]] },\r\n\r\n    { type:'poly', data:[[388,598],[380,607],[374,617],[370,627],[368,639],[367,650],[368,662],[372,673],[377,683],[383,693],[391,701],[401,708],[411,713],[422,716],[433,718],[445,718],[456,715],[467,711],[477,705],[486,698]] },\r\n\r\n    { type:'poly', data:[[538,424],[547,417],[558,412],[569,409],[581,408],[592,410],[603,415],[613,421],[621,429],[627,439],[631,450],[633,462],[632,473],[629,485],[623,495],[616,504]] },\r\n\r\n    { type:'poly', data:[[622,509],[631,502],[641,496],[652,493],[663,492],[675,493],[686,497],[696,502],[705,510],[712,518],[717,529],[720,539],[721,551],[720,562],[717,573],[711,583],[704,592]] },\r\n\r\n    { type:'poly', data:[[314,188],[323,181],[333,175],[344,170],[355,167],[367,166],[379,167],[390,170],[401,174],[412,180],[421,187],[429,195],[436,205],[441,216],[444,227],[446,238],[446,250],[445,262],[441,273],[436,284],[430,293],[422,302]] },\r\n\r\n    { type:'poly', data:[[49,737],[6,782],[6,6],[41,49],[48,737]] },\r\n    { type:'poly', data:[[12,6],[44,45],[733,52],[782,8],[13,5]] },\r\n    { type:'poly', data:[[738,54],[785,10],[785,786],[741,740],[738,54]] },\r\n    { type:'poly', data:[[45,748],[10,784],[777,785],[740,745],[44,748]] }\r\n];\r\n\r\nMIX_TEMPLATES['E'] = [\r\n    { type:'poly', data:[[114,82],[676,83],[675,686],[113,686],[114,82]] },\r\n    { type:'poly', data:[[253,83],[253,687],[257,687],[256,83],[253,83]] },\r\n    { type:'poly', data:[[393,83],[392,686],[396,686],[396,83],[393,83]] },\r\n    { type:'poly', data:[[533,83],[532,686],[535,686],[536,83],[533,83]] },\r\n    { type:'poly', data:[[113,232],[675,237],[675,234],[113,233],[113,232]] },\r\n    { type:'poly', data:[[113,382],[675,387],[675,384],[113,382]] },\r\n    { type:'poly', data:[[113,533],[675,537],[675,534],[113,533]] },\r\n    { type:'poly', data:[[257,612],[391,612],[391,686],[256,686],[257,612]] },\r\n    { type:'poly', data:[[256,538],[256,608],[391,608],[393,537],[256,538]] },\r\n    { type:'poly', data:[[256,386],[256,533],[393,533],[392,387],[256,386]] },\r\n    { type:'poly', data:[[256,83],[256,233],[392,234],[392,83],[256,83]] },\r\n    { type:'poly', data:[[112,386],[252,387],[252,534],[113,533],[112,386]] },\r\n    { type:'poly', data:[[395,236],[463,237],[462,383],[395,383],[395,236]] },\r\n    { type:'poly', data:[[186,236],[253,236],[252,382],[186,382],[186,236]] },\r\n    { type:'poly', data:[[113,161],[253,162],[252,234],[113,233],[113,161]] },\r\n    { type:'poly', data:[[535,83],[535,158],[675,158],[675,84],[535,83]] },\r\n\r\n    { type:'circle', data:[464,611,67] },\r\n    { type:'circle', data:[605,612,69] },\r\n    { type:'circle', data:[184,612,69] },\r\n    { type:'circle', data:[464,462,68] },\r\n    { type:'circle', data:[604,463,70] },\r\n    { type:'circle', data:[605,311,69] },\r\n    { type:'circle', data:[323,312,68] },\r\n    { type:'circle', data:[465,159,68] },\r\n\r\n    { type:'poly', data:[[674,611],[673,622],[670,634],[665,644],[658,653],[649,661],[639,667],[629,671],[617,673],[606,673],[594,671],[584,667],[574,661],[565,653],[558,644],[553,634],[550,622],[549,611]] },\r\n    { type:'poly', data:[[397,611],[398,599],[402,588],[408,578],[416,569],[426,562],[437,558],[448,555],[460,555],[471,558],[482,563],[492,570],[500,579],[505,589],[509,600],[510,612]] },\r\n    { type:'poly', data:[[115,612],[116,601],[119,590],[123,579],[130,570],[137,561],[146,554],[156,549],[167,545],[178,543],[190,543],[201,545],[212,549],[222,554],[231,561],[238,570],[245,579],[249,590],[252,601],[253,612]] },\r\n    { type:'poly', data:[[396,461],[397,449],[400,438],[406,428],[413,418],[422,411],[432,404],[443,400],[454,398],[466,398],[477,401],[488,405],[498,411],[507,419],[514,428],[519,439],[522,450],[523,462]] },\r\n    { type:'poly', data:[[605,393],[616,394],[627,397],[637,402],[646,409],[654,417],[660,427],[664,438],[666,449],[666,460],[664,471],[660,482],[654,492],[646,500],[637,507],[627,512],[616,515],[605,516]] },\r\n    { type:'poly', data:[[536,312],[537,323],[540,334],[545,345],[552,354],[561,361],[570,368],[581,372],[592,374],[604,374],[615,372],[626,368],[635,361],[644,354],[651,345],[656,334],[659,323],[660,312]] },\r\n    { type:'poly', data:[[674,312],[673,301],[669,290],[662,281],[654,274],[644,269],[633,266],[622,266],[611,269],[601,274],[593,281],[586,290],[582,301],[581,312]] },\r\n    { type:'poly', data:[[391,310],[390,322],[386,333],[380,343],[371,351],[361,357],[350,361],[339,363],[327,361],[316,357],[306,351],[297,343],[291,333],[287,322],[286,310]] },\r\n    { type:'poly', data:[[255,309],[256,298],[261,287],[267,278],[276,271],[286,265],[297,263],[308,263],[319,266],[329,271],[338,279],[344,288],[348,299],[349,310]] },\r\n    { type:'poly', data:[[185,382],[174,381],[162,378],[152,374],[142,368],[133,361],[126,352],[120,342],[116,332],[113,320],[112,309],[113,298],[116,286],[120,276],[126,266],[133,257],[142,250],[152,244],[162,240],[174,237],[185,382]] },\r\n    { type:'poly', data:[[675,159],[674,170],[671,182],[666,192],[659,201],[651,209],[642,216],[631,221],[620,224],[609,225],[597,223],[586,220],[576,215],[566,209],[558,201],[552,191],[547,181],[544,169],[543,158]] },\r\n    { type:'poly', data:[[465,91],[477,92],[488,95],[499,100],[509,107],[517,115],[524,125],[529,136],[532,147],[533,159],[532,171],[529,182],[524,193],[517,203],[509,211],[499,218],[488,223],[477,226],[465,91]] },\r\n    { type:'poly', data:[[465,227],[453,226],[442,223],[431,218],[421,211],[413,203],[406,193],[401,182],[398,171],[397,159],[398,147],[401,136],[406,125],[413,115],[421,107],[431,100],[442,95],[453,92],[465,227]] },\r\n    { type:'poly', data:[[252,161],[251,149],[248,138],[244,128],[238,118],[230,109],[221,102],[211,97],[200,93],[188,91],[177,91],[165,93],[154,96],[144,102],[135,109],[127,117],[121,127],[116,137],[113,148],[252,161]] }\r\n];\r\n        MIX_TEMPLATES['F'] = [\r\n    { type:'circle', data:[394,397,351] },\r\n    { type:'poly', data:[[586,590],[584,113],[620,144],[644,168],[661,189],[679,217],[693,240],[702,267],[584,268],[586,590]] },\r\n    { type:'poly', data:[[586,282],[709,279],[720,313],[727,344],[729,366],[730,388],[729,412],[729,435],[726,456],[720,479],[714,500],[707,521],[699,541],[689,557],[680,576],[670,589],[587,590],[586,282]] },\r\n    { type:'poly', data:[[541,598],[668,597],[649,621],[630,640],[617,652],[600,664],[582,678],[567,687],[550,695],[542,701],[541,598]] },\r\n    { type:'poly', data:[[439,508],[440,731],[394,733],[338,728],[297,719],[253,702],[219,685],[188,665],[149,633],[122,598],[101,563],[86,533],[76,508],[439,508]] },\r\n    { type:'poly', data:[[73,502],[439,502],[437,400],[58,402],[60,439],[66,469],[73,502]] },\r\n    { type:'poly', data:[[59,395],[438,394],[438,352],[60,353],[59,395]] },\r\n    { type:'poly', data:[[61,347],[438,347],[434,63],[390,60],[353,62],[316,70],[281,79],[250,91],[219,108],[192,126],[170,142],[146,164],[129,184],[113,208],[99,233],[88,257],[78,280],[70,306],[66,324],[61,347]] },\r\n    { type:'poly', data:[[538,91],[584,116],[587,589],[542,589],[538,91]] },\r\n    { type:'poly', data:[[532,89],[537,703],[516,711],[513,81],[532,89]] },\r\n    { type:'poly', data:[[464,67],[468,727],[477,723],[474,70],[464,67]] },\r\n    { type:'poly', data:[[481,71],[507,79],[509,714],[484,721],[481,71]] }\r\n];\r\n\r\nMIX_TEMPLATES['G'] = [\r\n    { type:'circle', data:[392,389,340] },\r\n    { type:'poly', data:[[102,211],[122,200],[469,213],[451,229],[102,211]] },\r\n    { type:'poly', data:[[469,213],[452,229],[560,685],[591,650],[469,213]] },\r\n    { type:'poly', data:[[122,200],[160,177],[501,186],[469,212],[122,200]] },\r\n    { type:'poly', data:[[161,177],[232,130],[573,128],[500,186],[161,177]] },\r\n    { type:'poly', data:[[501,185],[470,212],[591,648],[599,549],[501,185]] },\r\n    { type:'poly', data:[[502,186],[573,128],[589,182],[599,548],[502,186]] },\r\n    { type:'poly', data:[[233,130],[247,120],[584,119],[589,185],[573,128],[233,130]] },\r\n    { type:'poly', data:[[561,684],[229,605],[102,211],[453,229],[561,684]] }\r\n];\r\n\r\nMIX_TEMPLATES['H'] = [\r\n    { type:'circle', data:[391,385,353] },\r\n    { type:'poly', data:[[113,508],[214,516],[218,752],[117,721],[113,508]] },\r\n    { type:'poly', data:[[214,516],[744,465],[742,629],[218,752],[214,516]] },\r\n    { type:'poly', data:[[214,516],[212,29],[742,118],[743,466],[214,516]] },\r\n    { type:'poly', data:[[212,29],[177,39],[113,509],[214,517],[212,29]] },\r\n    { type:'poly', data:[[113,508],[84,712],[117,705],[113,508]] },\r\n    { type:'poly', data:[[76,710],[170,41],[53,74],[59,700],[76,710]] }\r\n];\r\n\r\nMIX_TEMPLATES['I'] = [\r\n    { type:'poly', data:[[14,14],[773,14],[776,776],[13,776],[13,15]] },\r\n    { type:'circle', data:[777,775,0] },\r\n\r\n    { type:'poly', data:[[13,775],[15,764],[20,755],[29,748],[39,744],[50,744],[60,748],[69,755],[74,764],[76,775]] },\r\n    { type:'poly', data:[[777,775],[775,764],[768,754],[758,747],[747,745],[736,747],[726,754],[719,764],[717,775]] },\r\n\r\n    { type:'poly', data:[[13,14],[15,26],[21,35],[31,42],[43,45],[54,42],[64,36],[71,26],[73,15]] },\r\n    { type:'poly', data:[[773,15],[771,26],[766,36],[759,43],[749,48],[738,50],[727,48],[717,43],[710,36],[705,26],[703,15]] },\r\n\r\n    { type:'poly', data:[[13,361],[24,363],[34,368],[42,376],[47,386],[49,397],[47,407],[42,417],[34,425],[24,430],[13,432]] },\r\n    { type:'poly', data:[[774,356],[763,358],[753,363],[745,371],[740,381],[739,392],[740,402],[745,412],[753,420],[763,425],[774,427]] },\r\n\r\n    { type:'poly', data:[[363,775],[365,763],[370,753],[379,744],[389,739],[401,737],[413,739],[423,744],[432,753],[437,763],[439,775]] },\r\n    { type:'poly', data:[[346,15],[348,27],[353,37],[360,46],[370,53],[382,56],[393,56],[405,53],[415,46],[422,37],[427,27],[429,15]] },\r\n\r\n    { type:'poly', data:[[228,333],[234,323],[242,315],[251,308],[261,302],[272,298],[284,296],[295,296],[306,297],[318,300],[328,305],[338,311],[346,319],[353,328],[359,338],[363,349],[365,361],[365,372],[364,383],[361,395],[356,405]] },\r\n    { type:'poly', data:[[357,404],[352,415],[349,426],[348,438],[349,450],[352,462],[357,473],[364,482],[373,491],[383,498],[393,503],[405,506],[417,507],[429,505],[440,502],[451,497],[461,490],[469,482],[476,472]] },\r\n    { type:'poly', data:[[477,472],[474,481],[474,491],[478,500],[486,507],[495,510],[505,509],[513,505],[520,498]] },\r\n\r\n    { type:'poly', data:[[182,310],[188,302],[197,297],[207,295],[217,298],[225,304],[230,313],[232,323],[229,333]] },\r\n\r\n    { type:'poly', data:[[107,269],[152,292],[537,221],[478,197],[107,270]] },\r\n    { type:'poly', data:[[537,221],[547,514],[358,404],[538,221]] },\r\n    { type:'poly', data:[[548,513],[250,567],[152,292],[356,405],[250,567]] },\r\n    { type:'poly', data:[[251,568],[198,544],[109,270],[153,293],[250,568]] },\r\n\r\n    { type:'poly', data:[[174,359],[130,662],[272,634],[176,361]] },\r\n    { type:'poly', data:[[272,634],[652,563],[537,221],[548,514],[249,568],[273,633]] },\r\n\r\n    { type:'poly', data:[[156,658],[661,717],[627,568],[158,656]] },\r\n    { type:'poly', data:[[157,658],[230,667],[633,595],[627,568],[157,656]] },\r\n\r\n    { type:'poly', data:[[130,662],[116,637],[163,324],[174,354],[131,661]] },\r\n\r\n    { type:'poly', data:[[656,557],[507,113],[742,139],[656,559]] },\r\n    { type:'poly', data:[[109,265],[523,182],[500,114],[140,73],[110,264]] },\r\n    { type:'poly', data:[[509,115],[698,168],[742,140],[509,113]] },\r\n    { type:'poly', data:[[500,115],[477,191],[140,74],[501,115]] },\r\n\r\n    { type:'poly', data:[[632,596],[662,719],[567,705],[632,597]] },\r\n\r\n    { type:'poly', data:[[357,775],[359,763],[363,753],[370,743],[380,736],[390,732],[402,730],[414,732],[425,736],[434,743],[441,753],[445,763],[447,775]] },\r\n\r\n    { type:'poly', data:[[776,350],[765,351],[755,355],[746,362],[739,370],[734,381],[733,392],[734,403],[738,413],[744,422],[753,429],[763,433],[774,435]] },\r\n\r\n    { type:'poly', data:[[333,14],[334,25],[338,36],[343,45],[351,54],[360,60],[370,65],[381,67],[392,67],[403,65],[413,60],[422,54],[430,45],[435,36],[439,25],[440,14]] },\r\n\r\n    { type:'poly', data:[[13,351],[24,352],[35,357],[44,363],[51,371],[56,381],[59,392],[59,404],[56,414],[50,424],[43,433],[34,439],[23,443],[12,444]] },\r\n\r\n    { type:'poly', data:[[162,435],[197,544],[249,566],[174,356],[162,435]] }\r\n];\r\n\r\nMIX_TEMPLATES['J'] = [\r\n    { type:'circle', data:[389,398,374] },\r\n    { type:'poly', data:[[113,651],[352,651],[652,132],[277,132],[95,629],[113,651]] },\r\n    { type:'poly', data:[[143,134],[278,131],[143,500],[143,134]] },\r\n    { type:'poly', data:[[144,134],[144,498],[94,628],[90,623],[90,173],[125,133],[144,134]] },\r\n    { type:'poly', data:[[279,132],[302,66],[561,66],[587,81],[610,96],[633,115],[652,132],[279,132]] },\r\n    { type:'poly', data:[[652,132],[650,582],[392,582],[652,132]] },\r\n    { type:'poly', data:[[393,582],[652,647],[652,582],[393,582]] },\r\n    { type:'poly', data:[[652,582],[698,609],[653,647],[652,582]] },\r\n    { type:'poly', data:[[653,582],[704,581],[699,608],[653,582]] },\r\n    { type:'poly', data:[[652,132],[676,159],[692,178],[705,198],[704,581],[652,581],[652,132]] },\r\n    { type:'poly', data:[[394,581],[654,648],[357,645],[394,581]] },\r\n    { type:'poly', data:[[145,133],[244,104],[280,131],[145,133]] },\r\n    { type:'poly', data:[[245,104],[279,130],[303,66],[245,104]] },\r\n    { type:'poly', data:[[652,648],[654,662],[631,683],[606,703],[584,717],[197,719],[166,699],[139,677],[115,652],[350,652],[356,645],[652,648]] },\r\n    { type:'poly', data:[[197,719],[167,699],[140,677],[115,653],[584,717],[197,719]] }\r\n];\r\n\r\nMIX_TEMPLATES['K'] = [\r\n    { type:'circle', data:[390,405,322] },\r\n    { type:'poly', data:[[153,188],[566,157],[330,279],[283,281],[153,188]] },\r\n    { type:'poly', data:[[283,281],[331,279],[359,513],[262,509],[283,281]] },\r\n    { type:'poly', data:[[359,514],[426,563],[568,346],[359,514]] },\r\n    { type:'poly', data:[[262,509],[224,546],[160,365],[262,509]] },\r\n    { type:'poly', data:[[152,189],[282,280],[263,509],[161,367],[152,189]] },\r\n    { type:'poly', data:[[330,278],[360,513],[568,346],[566,157],[330,278]] },\r\n    { type:'poly', data:[[426,564],[226,547],[208,565],[461,592],[426,564]] },\r\n    { type:'poly', data:[[426,564],[461,593],[568,433],[568,345],[426,564]] },\r\n    { type:'poly', data:[[567,158],[568,430],[597,169],[567,158]] },\r\n    { type:'poly', data:[[597,170],[617,177],[578,647],[569,430],[597,170]] },\r\n    { type:'poly', data:[[618,177],[578,648],[601,648],[619,179],[618,177]] },\r\n    { type:'poly', data:[[461,593],[526,643],[578,648],[569,430],[461,593]] },\r\n    { type:'poly', data:[[209,566],[460,592],[527,645],[180,596],[209,566]] },\r\n    { type:'poly', data:[[209,565],[226,547],[160,365],[164,438],[209,565]] },\r\n    { type:'poly', data:[[210,565],[164,437],[171,593],[181,595],[210,565]] },\r\n    { type:'poly', data:[[602,647],[626,624],[618,178],[602,647]] },\r\n    { type:'poly', data:[[152,189],[171,593],[79,397],[161,366],[152,189]] },\r\n    { type:'poly', data:[[152,189],[161,366],[79,397],[152,189]] },\r\n    { type:'poly', data:[[152,188],[370,98],[368,172],[152,188]] },\r\n    { type:'poly', data:[[368,171],[370,98],[566,157],[368,171]] },\r\n    { type:'poly', data:[[619,178],[622,407],[697,397],[619,178]] },\r\n    { type:'poly', data:[[623,406],[626,624],[696,396],[623,406]] },\r\n    { type:'poly', data:[[171,592],[362,713],[379,623],[171,592]] },\r\n    { type:'poly', data:[[379,623],[362,711],[578,647],[526,644],[379,623]] }\r\n];\r\n\r\nMIX_TEMPLATES['L'] = [\r\n    { type:'circle', data:[396,399,369] },\r\n    { type:'poly', data:[[205,105],[165,111],[131,143],[129,624],[145,626],[149,141],[205,105]] },\r\n    { type:'poly', data:[[132,142],[149,140],[145,626],[129,624],[132,142]] },\r\n    { type:'poly', data:[[129,145],[104,173],[103,623],[130,625],[129,145]] },\r\n    { type:'poly', data:[[104,625],[146,626],[180,642],[140,640],[104,625]] },\r\n    { type:'poly', data:[[202,106],[205,471],[371,307],[202,106]] },\r\n    { type:'poly', data:[[150,140],[202,106],[206,466],[285,622],[620,612],[511,632],[179,642],[145,625],[150,140]] },\r\n    { type:'poly', data:[[202,106],[239,81],[195,90],[166,110],[202,106]] },\r\n    { type:'poly', data:[[237,81],[564,101],[679,162],[679,244],[559,140],[555,126],[204,105],[237,81]] },\r\n    { type:'poly', data:[[204,107],[371,309],[556,126],[204,107]] },\r\n    { type:'poly', data:[[370,307],[207,469],[316,506],[370,307]] },\r\n    { type:'poly', data:[[316,506],[207,469],[282,620],[316,506]] },\r\n    { type:'poly', data:[[372,307],[550,526],[459,557],[316,506],[372,307]] },\r\n    { type:'poly', data:[[374,307],[555,126],[609,506],[549,526],[374,307]] },\r\n    { type:'poly', data:[[316,506],[282,622],[460,557],[316,506]] },\r\n    { type:'poly', data:[[284,621],[460,557],[620,612],[284,621]] },\r\n    { type:'poly', data:[[550,527],[620,612],[609,506],[550,527]] },\r\n    { type:'poly', data:[[610,505],[654,489],[620,612],[610,505]] },\r\n    { type:'poly', data:[[557,141],[610,505],[654,489],[557,141]] },\r\n    { type:'poly', data:[[106,627],[264,694],[515,684],[632,656],[620,611],[512,632],[144,641],[106,627]] },\r\n    { type:'poly', data:[[144,641],[176,642],[266,694],[144,641]] },\r\n    { type:'poly', data:[[515,686],[514,632],[620,611],[632,656],[515,686]] },\r\n    { type:'poly', data:[[632,655],[689,607],[620,610],[632,655]] },\r\n    { type:'poly', data:[[559,142],[689,252],[687,610],[620,610],[655,490],[559,142]] },\r\n    { type:'poly', data:[[461,557],[621,612],[550,527],[461,557]] }\r\n];\r\n\r\nMIX_TEMPLATES['M'] = [\r\n    { type:'poly', data:[[0,0],[789,2],[787,789],[2,789],[2,2]] },\r\n\r\n    { type:'circle', data:[199,595,195] },\r\n    { type:'circle', data:[591,594,191] },\r\n    { type:'circle', data:[197,195,195] },\r\n    { type:'circle', data:[591,210,180] },\r\n    { type:'circle', data:[594,197,192] },\r\n\r\n    { type:'poly', data:[[199,400],[187,400],[175,401],[164,403],[152,406],[141,409],[130,413],[119,417],[108,422],[98,428],[88,435],[79,441],[70,449],[61,457],[53,466],[45,475],[39,484],[32,494],[26,504],[21,515],[17,526],[13,537],[10,548],[7,560],[5,571],[4,583],[4,595],[4,607],[5,619],[7,630],[10,642],[13,653],[17,664],[21,675],[26,686],[32,696],[39,706],[45,715],[53,724],[61,733],[70,741],[79,749],[88,755],[98,762],[108,768],[119,773],[130,777],[141,781],[152,784],[164,787],[175,789],[187,790],[199,790]] },\r\n\r\n    { type:'poly', data:[[591,403],[603,403],[614,404],[626,406],[638,409],[649,412],[660,416],[671,420],[681,425],[692,431],[701,438],[711,445],[720,453],[728,461],[736,469],[744,478],[750,488],[757,498],[762,508],[767,519],[771,530],[775,541],[778,553],[780,564],[782,576],[782,588],[782,599],[782,611],[780,623],[778,634],[775,646],[772,657],[768,668],[763,679],[757,689],[751,699],[744,709],[737,718],[729,727],[721,735],[712,742],[702,750],[692,756],[682,762],[672,767],[661,772],[650,776],[639,779],[627,782],[615,783],[604,785],[592,785]] },\r\n\r\n    { type:'poly', data:[[592,403],[567,405],[567,783],[593,785],[592,403],[568,404]] },\r\n    { type:'poly', data:[[539,410],[558,406],[560,782],[538,777],[539,410]] },\r\n    { type:'poly', data:[[532,425],[505,437],[474,457],[473,730],[500,748],[533,763],[533,425]] },\r\n    { type:'poly', data:[[465,465],[444,491],[427,523],[416,562],[415,602],[421,647],[439,685],[464,721],[464,467]] },\r\n\r\n    { type:'poly', data:[[622,406],[646,411],[646,777],[623,782],[623,406]] },\r\n    { type:'poly', data:[[593,403],[618,405],[618,783],[594,785],[593,403]] },\r\n\r\n    { type:'poly', data:[[198,215],[197,203],[195,192],[191,180],[187,170],[180,160],[173,150],[165,142],[155,135],[145,129],[135,124],[123,121],[112,119],[100,118],[88,119],[77,121],[65,125],[55,129],[45,136],[35,143],[27,151],[20,161],[14,171],[9,181],[6,193],[4,204],[3,216]] },\r\n    { type:'poly', data:[[201,215],[202,203],[204,191],[208,180],[213,169],[219,159],[227,150],[235,142],[245,135],[256,129],[267,125],[278,122],[290,120],[302,120],[314,122],[325,125],[336,129],[347,135],[357,142],[365,150],[373,159],[379,169],[384,180],[388,191],[390,203],[391,215]] },\r\n\r\n    { type:'poly', data:[[202,219],[204,230],[209,240],[218,247],[228,251],[240,251],[250,247],[259,240],[264,230],[266,219]] },\r\n    { type:'poly', data:[[201,265],[212,267],[223,272],[231,280],[236,290],[238,301],[236,312],[231,323],[223,331],[213,336],[202,338]] },\r\n    { type:'poly', data:[[201,337],[211,339],[220,345],[225,354],[227,364],[225,374],[219,383],[210,388],[200,390]] },\r\n\r\n    { type:'poly', data:[[16,219],[25,263],[43,294],[65,323],[90,345],[121,362],[151,372],[181,377],[195,377],[196,220],[18,219]] },\r\n\r\n    { type:'poly', data:[[201,0],[212,1],[223,4],[234,10],[243,17],[250,25],[256,35],[260,46],[262,57],[262,68],[260,79],[256,90],[250,100],[242,108],[233,115],[222,120],[211,123],[200,124]] },\r\n\r\n    { type:'poly', data:[[595,30],[617,32],[617,215],[595,214],[596,30]] },\r\n    { type:'poly', data:[[621,33],[622,214],[645,215],[646,39],[623,33]] },\r\n\r\n    { type:'poly', data:[[651,213],[651,51],[681,65],[700,79],[718,95],[732,114],[742,135],[751,156],[756,177],[759,196],[759,214],[652,214]] },\r\n    { type:'poly', data:[[653,220],[759,218],[756,245],[748,273],[738,294],[726,313],[710,332],[694,345],[676,357],[660,364],[652,367],[652,220]] },\r\n\r\n    { type:'poly', data:[[474,87],[489,75],[502,67],[514,61],[524,56],[525,214],[474,214],[474,86]] },\r\n    { type:'poly', data:[[463,96],[452,117],[443,133],[436,151],[429,171],[426,191],[426,205],[425,214],[464,214],[464,97]] },\r\n\r\n    { type:'poly', data:[[474,332],[489,344],[503,352],[518,360],[527,364],[526,219],[475,218],[475,333]] },\r\n    { type:'poly', data:[[425,218],[427,243],[434,266],[442,286],[452,304],[463,321],[463,220],[425,220]] },\r\n\r\n    { type:'poly', data:[[537,38],[561,33],[561,214],[538,215],[537,38]] },\r\n    { type:'poly', data:[[539,219],[561,220],[561,387],[537,382],[538,219]] },\r\n    { type:'poly', data:[[596,219],[618,219],[617,388],[594,390],[596,219]] },\r\n    { type:'poly', data:[[624,219],[646,220],[645,382],[623,387],[624,220]] },\r\n\r\n    { type:'poly', data:[[687,2],[789,86],[790,2],[689,2]] },\r\n    { type:'poly', data:[[789,304],[789,390],[694,391],[790,305]] },\r\n    { type:'poly', data:[[696,399],[789,400],[789,483],[697,399]] },\r\n    { type:'poly', data:[[790,707],[789,789],[705,789],[790,706]] },\r\n\r\n    { type:'poly', data:[[398,789],[398,698],[478,789],[400,789]] },\r\n    { type:'poly', data:[[393,699],[392,789],[310,789],[394,700]] },\r\n    { type:'poly', data:[[4,699],[79,789],[3,789],[3,698]] },\r\n\r\n    { type:'poly', data:[[394,400],[305,399],[394,476],[394,400]] },\r\n    { type:'poly', data:[[400,400],[401,475],[479,400],[401,400]] },\r\n    { type:'poly', data:[[306,392],[394,393],[394,315],[308,392]] },\r\n    { type:'poly', data:[[402,392],[480,391],[400,315],[402,392]] },\r\n\r\n    { type:'poly', data:[[3,392],[76,391],[3,312],[3,393]] },\r\n    { type:'poly', data:[[3,399],[77,399],[3,478],[3,399]] },\r\n\r\n    { type:'poly', data:[[3,0],[75,0],[3,72],[3,2]] },\r\n    { type:'poly', data:[[316,1],[394,76],[393,2],[317,2]] },\r\n    { type:'poly', data:[[401,1],[401,75],[478,2],[403,1]] }\r\n];\r\n\r\nMIX_TEMPLATES['N'] = [\r\n    { type:'circle', data:[386,411,0] },\r\n    { type:'circle', data:[394,408,0] },\r\n    { type:'circle', data:[394,408,353] },\r\n\r\n    { type:'poly', data:[[344,86],[316,92],[285,102],[258,112],[232,125],[205,142],[178,163],[158,182],[140,203],[123,226],[109,249],[94,281],[444,283],[424,259],[403,222],[383,186],[366,148],[355,117],[346,86]] },\r\n    { type:'poly', data:[[398,55],[416,56],[435,57],[451,60],[461,61],[472,93],[481,116],[494,144],[512,174],[531,199],[557,227],[580,252],[603,271],[622,283],[531,284],[501,256],[482,234],[461,205],[442,174],[425,142],[412,105],[404,81],[399,55]] },\r\n    { type:'poly', data:[[468,63],[475,80],[483,99],[491,116],[498,130],[504,144],[515,162],[532,186],[546,205],[563,222],[578,237],[592,253],[609,266],[633,284],[693,286],[687,266],[676,249],[669,240],[641,222],[615,202],[594,180],[575,158],[563,144],[549,120],[540,101],[534,84],[510,75],[490,68],[469,63]] },\r\n    { type:'poly', data:[[444,282],[534,284],[557,307],[583,325],[613,343],[642,360],[674,373],[700,383],[726,391],[747,398],[746,428],[744,454],[704,444],[669,434],[625,415],[593,399],[556,377],[525,354],[492,329],[469,308],[445,283]] },\r\n\r\n    { type:'poly', data:[[670,434],[698,443],[725,449],[744,454],[742,469],[706,481],[669,496],[641,511],[618,523],[597,539],[572,560],[544,589],[521,616],[502,646],[486,675],[476,698],[466,724],[459,745],[427,750],[400,751],[412,705],[430,663],[450,622],[473,585],[498,555],[527,524],[559,497],[590,474],[628,454],[652,442],[671,434]] },\r\n    { type:'poly', data:[[634,517],[689,517],[669,565],[643,602],[624,624],[597,647],[566,670],[542,684],[504,699],[474,707],[485,677],[503,644],[520,617],[546,586],[572,559],[597,539],[618,523],[634,516]] },\r\n    { type:'poly', data:[[409,716],[375,718],[335,713],[291,700],[257,687],[221,668],[195,650],[160,618],[133,585],[114,556],[103,534],[96,515],[534,516],[503,550],[476,581],[454,615],[437,648],[423,678],[408,714]] },\r\n    { type:'poly', data:[[44,456],[50,487],[57,514],[537,516],[568,490],[591,473],[622,458],[44,456]] },\r\n    { type:'poly', data:[[41,399],[41,423],[44,451],[628,453],[648,444],[672,434],[644,423],[612,408],[593,399],[41,399]] },\r\n    { type:'poly', data:[[47,341],[43,367],[41,394],[587,395],[558,377],[533,359],[511,343],[47,341]] },\r\n    { type:'poly', data:[[48,336],[54,312],[63,285],[451,288],[462,301],[474,312],[491,328],[506,339],[48,336]] },\r\n\r\n    { type:'poly', data:[[564,145],[596,165],[623,183],[644,203],[666,238],[643,222],[617,203],[591,176],[568,148]] },\r\n    { type:'poly', data:[[605,337],[740,338],[743,355],[746,376],[747,398],[722,390],[701,384],[667,370],[644,361],[607,339]] },\r\n    { type:'poly', data:[[538,284],[508,256],[481,224],[462,198],[445,168],[431,140],[418,106],[409,81],[406,64],[407,55],[434,57],[463,62],[476,103],[491,137],[513,175],[532,201],[558,228],[582,255],[603,271],[621,283],[540,284]] }\r\n];\r\nMIX_TEMPLATES['O'] = [\r\n    { type:'poly', data:[[53,45],[57,748],[731,742],[726,668],[714,615],[698,574],[679,539],[657,509],[627,476],[597,450],[568,430],[537,414],[494,399],[458,390],[426,386],[400,384],[387,310],[369,254],[346,208],[322,172],[295,141],[259,109],[216,80],[191,70],[154,57],[119,50],[95,47],[54,45]] },\r\n    { type:'poly', data:[[60,54],[89,55],[122,58],[159,67],[195,81],[234,101],[263,125],[292,151],[317,182],[340,215],[361,258],[373,299],[383,341],[389,391],[434,397],[477,405],[520,419],[562,437],[602,467],[632,495],[658,525],[680,559],[698,598],[710,634],[717,673],[721,706],[722,735],[66,739],[62,54]] },\r\n\r\n    { type:'poly', data:[[97,92],[99,304],[172,114],[148,105],[125,98],[100,94]] },\r\n    { type:'poly', data:[[100,313],[177,116],[204,130],[224,143],[236,153],[101,342],[101,312]] },\r\n    { type:'poly', data:[[101,351],[241,157],[261,175],[278,193],[291,210],[100,365],[100,350]] },\r\n    { type:'poly', data:[[101,372],[295,214],[310,235],[322,257],[330,280],[101,381],[101,371]] },\r\n    { type:'poly', data:[[101,386],[332,284],[342,314],[348,339],[350,356],[101,392],[101,385]] },\r\n    { type:'poly', data:[[101,399],[351,443],[390,699],[381,699],[295,496],[102,410],[102,399]] },\r\n    { type:'poly', data:[[103,414],[291,500],[377,698],[368,698],[250,545],[103,424],[103,416]] },\r\n    { type:'poly', data:[[103,429],[246,550],[362,698],[345,698],[206,590],[103,442],[104,429]] },\r\n    { type:'poly', data:[[104,452],[203,596],[336,697],[309,698],[161,642],[102,483],[103,451]] },\r\n    { type:'poly', data:[[101,493],[157,644],[298,699],[103,698],[101,493]] },\r\n\r\n    { type:'poly', data:[[426,435],[459,442],[485,450],[497,455],[405,698],[398,698],[427,435]] },\r\n    { type:'poly', data:[[408,698],[501,457],[532,471],[556,486],[566,495],[418,698],[410,698]] },\r\n    { type:'poly', data:[[570,498],[424,697],[439,697],[621,552],[605,528],[588,511],[572,498]] },\r\n    { type:'poly', data:[[445,697],[625,554],[640,574],[650,594],[661,620],[470,697],[448,697]] },\r\n    { type:'poly', data:[[480,697],[663,624],[672,653],[678,674],[681,696],[481,697]] }\r\n];\r\n\r\nMIX_TEMPLATES['P'] = [\r\n    { type:'circle', data:[399,396,358] },\r\n    { type:'circle', data:[399,397,367] },\r\n\r\n    { type:'poly', data:[[41,391],[399,754],[397,406],[41,392]] },\r\n    { type:'poly', data:[[397,405],[399,754],[757,396],[396,406]] },\r\n\r\n    { type:'poly', data:[[41,395],[397,385],[399,38],[41,396]] },\r\n    { type:'poly', data:[[397,38],[397,384],[757,397],[397,38]] },\r\n\r\n    { type:'poly', data:[[397,384],[399,406],[757,396],[397,384]] },\r\n    { type:'poly', data:[[41,394],[397,384],[397,407],[41,392]] }\r\n];\r\n\r\nMIX_TEMPLATES['Q'] = [\r\n    { type:'circle', data:[395,390,356] },\r\n\r\n    { type:'poly', data:[[165,118],[632,124],[395,50],[164,119]] },\r\n    { type:'poly', data:[[631,124],[629,658],[737,396],[631,124]] },\r\n    { type:'poly', data:[[166,117],[169,665],[51,389],[166,117]] },\r\n    { type:'poly', data:[[168,665],[629,659],[391,732],[169,665]] },\r\n\r\n    { type:'poly', data:[[197,141],[289,131],[294,519],[197,519],[196,141]] },\r\n    { type:'poly', data:[[295,520],[342,520],[340,140],[290,131],[295,520]] },\r\n\r\n    { type:'poly', data:[[340,140],[342,520],[295,521],[197,519],[199,657],[592,652],[592,184],[341,140]] },\r\n\r\n    { type:'poly', data:[[454,581],[592,584],[592,652],[454,654],[452,581]] },\r\n    { type:'poly', data:[[197,519],[295,521],[299,655],[199,656],[197,519]] },\r\n\r\n    { type:'poly', data:[[65,389],[154,180],[155,390],[66,389]] },\r\n    { type:'poly', data:[[70,402],[156,404],[157,604],[71,403]] },\r\n\r\n    { type:'poly', data:[[251,106],[396,63],[396,108],[252,106]] },\r\n    { type:'poly', data:[[409,65],[409,108],[548,110],[411,66]] },\r\n\r\n    { type:'poly', data:[[645,190],[725,396],[644,397],[645,190]] },\r\n    { type:'poly', data:[[645,411],[720,409],[643,594],[645,412]] },\r\n\r\n    { type:'poly', data:[[253,678],[394,675],[393,719],[254,678]] },\r\n    { type:'poly', data:[[408,676],[544,673],[408,713],[407,677]] }\r\n];\r\n\r\nMIX_TEMPLATES['R'] = [\r\n    { type:'poly', data:[[13,12],[779,12],[778,778],[13,778],[13,12]] },\r\n\r\n    { type:'poly', data:[[14,778],[16,767],[23,757],[32,751],[43,749],[55,751],[64,757],[71,767],[73,778]] },\r\n    { type:'poly', data:[[779,778],[777,767],[771,759],[762,753],[752,751],[741,753],[732,759],[726,767],[724,778]] },\r\n    { type:'poly', data:[[14,12],[16,23],[22,33],[32,39],[43,41],[54,39],[64,33],[70,23],[72,12]] },\r\n    { type:'poly', data:[[778,12],[776,23],[770,32],[760,38],[750,41],[739,38],[729,32],[723,23],[721,12]] },\r\n\r\n    { type:'poly', data:[[475,643],[476,631],[478,620],[482,609],[488,599],[495,589],[503,581],[512,574],[522,568],[533,564],[545,561],[557,561],[568,561],[580,564],[591,568],[601,573],[610,580],[619,588],[626,598],[631,608],[636,619],[638,630],[639,642]] },\r\n\r\n    { type:'poly', data:[[474,643],[473,631],[472,620],[469,608],[466,597],[462,586],[457,575],[451,565],[444,556],[437,546],[429,538],[420,530],[411,523],[401,516],[391,511],[380,506],[369,502],[357,499],[346,497],[334,496],[323,496],[311,496],[299,498],[288,500],[276,503],[265,508],[255,513],[245,519],[235,525],[226,533],[217,541],[210,549],[202,559],[196,569],[190,579],[186,590],[182,601],[179,612],[177,624],[175,635],[175,647]] },\r\n\r\n    { type:'poly', data:[[166,382],[167,394],[169,405],[172,416],[177,427],[183,437],[190,446],[198,455],[207,462],[217,469],[227,474],[238,478],[250,481],[261,482],[273,482],[284,480],[296,478],[307,474],[317,468],[327,462],[336,454],[344,446],[351,436],[357,426],[361,415],[364,404],[366,393],[367,381]] },\r\n    { type:'poly', data:[[370,381],[371,392],[375,403],[381,413],[389,421],[398,427],[409,431],[420,432],[431,431],[442,427],[452,421],[460,413],[466,404],[470,393],[471,382]] },\r\n    { type:'poly', data:[[480,382],[481,394],[483,405],[488,416],[494,426],[501,435],[510,443],[519,450],[530,455],[541,459],[553,460],[564,460],[576,459],[587,455],[598,450],[607,443],[616,435],[623,426],[629,416],[634,405],[636,394],[637,382]] },\r\n\r\n    { type:'poly', data:[[473,438],[475,575],[562,509],[474,438]] },\r\n    { type:'poly', data:[[564,509],[639,568],[636,441],[566,509]] },\r\n    { type:'poly', data:[[644,642],[640,382],[766,381],[766,641],[645,642]] },\r\n\r\n    { type:'poly', data:[[166,445],[260,500],[168,564],[167,445]] },\r\n    { type:'poly', data:[[466,425],[361,481],[468,555],[468,425]] },\r\n\r\n    { type:'poly', data:[[766,710],[682,765],[481,764],[480,655],[767,654],[768,710]] },\r\n    { type:'poly', data:[[28,706],[111,765],[477,764],[475,655],[27,661],[27,707]] },\r\n\r\n    { type:'poly', data:[[153,382],[27,383],[28,648],[161,647],[155,382]] },\r\n    { type:'poly', data:[[168,382],[470,382],[165,140],[169,382]] },\r\n    { type:'poly', data:[[167,139],[466,140],[469,382],[167,141]] },\r\n\r\n    { type:'circle', data:[467,140,0] },\r\n\r\n    { type:'poly', data:[[467,140],[456,141],[444,144],[434,148],[424,154],[415,161],[407,169],[401,179],[396,189],[393,200],[391,211],[391,223],[393,234],[396,245],[401,255],[408,265],[416,273],[425,280],[435,286],[445,290],[457,292],[468,293]] },\r\n\r\n    { type:'poly', data:[[471,212],[483,213],[494,215],[505,219],[515,224],[525,231],[533,239],[541,248],[547,257],[551,268],[555,279],[556,291],[556,302],[555,314],[552,325],[547,336],[541,346],[534,355],[526,363],[516,369],[506,375],[495,379],[484,381],[472,382]] },\r\n\r\n    { type:'poly', data:[[467,140],[478,141],[488,146],[496,153],[502,163],[504,174],[503,185],[498,195],[491,203],[481,209],[470,211]] },\r\n\r\n    { type:'poly', data:[[560,381],[557,138],[637,140],[641,381],[560,382]] },\r\n\r\n    { type:'poly', data:[[767,75],[674,25],[647,26],[648,378],[767,377],[767,75]] },\r\n    { type:'poly', data:[[636,26],[637,139],[467,140],[467,25],[637,26]] },\r\n    { type:'poly', data:[[467,140],[166,139],[165,26],[468,25],[467,140]] },\r\n    { type:'poly', data:[[114,25],[27,74],[28,379],[156,379],[152,26],[116,26]] },\r\n\r\n    { type:'poly', data:[[406,140],[405,152],[401,163],[396,174],[388,183],[379,191],[368,196],[357,200],[345,201],[333,200],[322,196],[311,191],[302,183],[294,174],[289,163],[285,152],[284,140]] },\r\n\r\n    { type:'poly', data:[[213,139],[215,128],[220,118],[228,110],[238,105],[249,104],[261,105],[271,111],[278,119],[283,129],[285,140]] },\r\n\r\n    { type:'poly', data:[[558,138],[560,127],[564,116],[572,108],[581,102],[592,98],[604,98],[615,102],[624,108],[632,116],[636,127],[638,138]] },\r\n\r\n    { type:'poly', data:[[467,294],[456,296],[446,302],[438,311],[434,322],[435,334],[439,345],[446,353],[457,359],[468,361]] },\r\n\r\n    { type:'poly', data:[[468,26],[480,27],[491,31],[501,37],[510,45],[517,55],[522,66],[524,78],[524,89],[522,101],[517,112],[510,122],[501,129],[490,135],[479,139],[467,140]] },\r\n\r\n    { type:'poly', data:[[476,656],[465,657],[454,661],[444,667],[436,675],[430,684],[425,694],[423,705],[423,717],[426,728],[431,738],[438,747],[446,754],[456,760],[467,763],[478,764]] },\r\n\r\n    { type:'poly', data:[[482,655],[483,667],[486,678],[490,689],[496,700],[503,709],[512,717],[522,723],[532,729],[543,732],[555,734],[567,734],[579,732],[590,729],[601,723],[610,717],[619,709],[626,700],[632,689],[636,678],[639,667],[640,655]] },\r\n\r\n    { type:'poly', data:[[180,659],[181,671],[184,682],[189,693],[195,703],[203,712],[212,720],[222,726],[233,731],[245,733],[257,734],[269,733],[280,730],[291,725],[301,719],[310,711],[318,702],[324,692],[329,681],[331,669],[332,657]] },\r\n\r\n    { type:'poly', data:[[333,657],[335,669],[340,680],[348,689],[358,695],[370,698],[381,698],[393,694],[403,688],[411,679],[415,668],[417,656]] }\r\n];\r\n\r\nMIX_TEMPLATES['S'] = [\r\n    { type:'circle', data:[393,394,359] },\r\n\r\n    { type:'poly', data:[[13,777],[778,778],[778,12],[13,12],[13,778]] },\r\n    { type:'poly', data:[[27,764],[765,765],[765,25],[27,26],[27,764]] },\r\n\r\n    { type:'poly', data:[[28,705],[28,764],[73,764],[28,704]] },\r\n    { type:'poly', data:[[766,708],[766,765],[718,765],[766,708]] },\r\n\r\n    { type:'poly', data:[[81,26],[28,82],[28,26],[82,26]] },\r\n    { type:'poly', data:[[708,25],[766,84],[766,25],[708,25]] },\r\n\r\n    { type:'poly', data:[[284,64],[242,81],[205,100],[174,123],[145,149],[120,178],[101,207],[86,234],[74,260],[63,289],[55,326],[49,362],[48,392],[48,403],[283,402],[285,64]] },\r\n\r\n    { type:'poly', data:[[49,408],[382,407],[380,740],[338,736],[297,727],[256,712],[213,691],[182,670],[149,642],[122,615],[96,573],[78,539],[64,501],[55,467],[50,442],[48,408]] },\r\n\r\n    { type:'poly', data:[[395,48],[445,52],[485,60],[523,72],[558,88],[591,108],[621,130],[640,147],[664,174],[686,206],[706,244],[722,288],[732,323],[737,355],[738,385],[738,401],[394,401],[396,48]] },\r\n\r\n    { type:'poly', data:[[498,406],[740,406],[735,452],[726,492],[715,526],[700,555],[684,586],[667,610],[647,633],[628,652],[601,673],[575,690],[546,705],[521,716],[499,724],[498,406]] },\r\n\r\n    { type:'poly', data:[[385,407],[384,753],[409,753],[433,751],[460,747],[480,742],[497,738],[495,406],[386,406]] },\r\n    { type:'poly', data:[[386,406],[496,484],[495,405],[387,406]] },\r\n\r\n    { type:'poly', data:[[390,401],[392,35],[366,36],[340,39],[311,45],[289,50],[288,402],[389,401]] },\r\n    { type:'poly', data:[[289,402],[391,401],[391,317],[290,401]] }\r\n];\r\n\r\nMIX_TEMPLATES['T'] = [\r\n    { type:'poly', data:[[14,13],[777,14],[777,777],[13,778],[14,13]] },\r\n\r\n    { type:'circle', data:[42,39,26] },\r\n    { type:'circle', data:[750,41,0] },\r\n    { type:'circle', data:[750,41,0] },\r\n    { type:'circle', data:[750,41,27] },\r\n    { type:'circle', data:[749,749,28] },\r\n    { type:'circle', data:[45,747,31] },\r\n\r\n    { type:'poly', data:[[85,765],[713,763],[714,27],[80,26],[85,765]] },\r\n    { type:'poly', data:[[81,26],[143,26],[81,85],[81,27]] },\r\n    { type:'poly', data:[[86,765],[85,702],[145,765],[87,765]] },\r\n    { type:'poly', data:[[714,763],[714,694],[653,763],[715,763]] },\r\n    { type:'poly', data:[[715,27],[715,90],[653,27],[716,27]] },\r\n\r\n    { type:'poly', data:[[278,414],[267,418],[256,423],[246,429],[237,437],[229,445],[221,455],[215,465],[210,476],[207,487],[205,498],[204,510],[204,522],[206,534],[209,545],[214,556],[220,566],[226,576],[234,585],[243,593],[253,599],[264,605],[275,609],[286,612],[298,613],[310,614],[321,613],[333,610]] },\r\n\r\n    { type:'poly', data:[[113,462],[125,461],[137,462],[148,465],[159,470],[170,476],[179,483],[187,492],[194,502],[199,513],[202,524],[204,536],[203,548],[202,560],[198,571],[193,582],[186,591],[178,600],[168,607],[158,613],[147,617],[135,620]] },\r\n\r\n    { type:'poly', data:[[446,258],[447,246],[449,235],[452,223],[457,212],[463,202],[471,193],[480,185],[490,179],[500,173],[511,169],[523,167],[535,166],[546,166],[558,168],[569,172],[580,177],[590,183],[599,191],[607,199],[614,209],[619,220],[623,231],[626,242],[627,254]] },\r\n\r\n    { type:'poly', data:[[555,263],[567,261],[578,261],[590,263],[601,267],[611,273],[620,281],[627,290],[632,300],[635,312],[637,323],[636,335],[633,346],[627,357],[620,366],[612,374],[602,381],[591,385]] },\r\n\r\n    { type:'poly', data:[[593,384],[582,388],[572,394],[564,402],[556,411],[550,421],[546,432],[544,443],[544,455],[545,466],[549,477],[554,488],[561,497],[569,505],[579,512],[589,517],[601,520],[612,521],[624,521],[635,518]] },\r\n\r\n    { type:'poly', data:[[158,265],[153,255],[151,244],[150,232],[151,221],[154,210],[159,200],[166,191],[174,183],[183,177],[194,172],[205,169],[216,168],[228,170],[238,173],[249,178],[258,184],[266,193],[272,202]] },\r\n\r\n    { type:'poly', data:[[400,522],[400,534],[402,545],[404,557],[408,568],[413,578],[419,588],[425,598],[433,606],[442,614],[451,621],[461,627],[472,632],[483,636],[494,639],[506,640],[517,641],[529,640],[540,638],[552,635],[563,630],[573,625],[583,619],[592,611],[600,603],[607,594],[614,584],[619,574],[624,563],[627,552],[629,541],[630,529]] },\r\n\r\n    { type:'poly', data:[[651,596],[354,715],[358,730],[477,731],[674,651],[653,597]] },\r\n\r\n    { type:'poly', data:[[402,523],[402,541],[405,559],[414,577],[454,675],[355,714],[334,610],[278,415],[159,264],[294,262],[399,522]] },\r\n\r\n    { type:'poly', data:[[160,264],[295,262],[273,202],[162,263]] },\r\n    { type:'poly', data:[[295,262],[448,258],[437,117],[273,202],[295,260]] },\r\n    { type:'poly', data:[[295,262],[448,258],[465,524],[400,522],[296,265]] },\r\n\r\n    { type:'poly', data:[[458,429],[469,430],[480,433],[490,439],[498,447],[504,457],[507,467],[508,479],[506,490],[501,500],[494,509],[485,516],[475,521],[464,523]] },\r\n\r\n    { type:'poly', data:[[453,348],[465,349],[475,353],[484,360],[491,369],[495,380],[496,392],[493,403],[488,413],[479,421],[469,427],[458,429]] },\r\n\r\n    { type:'poly', data:[[448,257],[460,258],[471,262],[481,268],[488,277],[493,288],[496,299],[495,311],[491,322],[484,332],[475,340],[465,345],[453,347]] },\r\n\r\n    { type:'poly', data:[[555,263],[545,268],[538,275],[532,285],[531,295],[532,306],[537,316],[544,323],[554,329],[564,330],[575,329]] },\r\n\r\n    { type:'poly', data:[[574,329],[564,334],[557,343],[554,353],[555,364],[560,374],[569,381],[579,384],[590,383]] },\r\n\r\n    { type:'poly', data:[[628,529],[639,527],[650,528],[660,533],[668,541],[674,551],[676,561],[674,572],[669,583],[662,591],[652,596]] },\r\n\r\n    { type:'poly', data:[[135,619],[147,619],[158,621],[169,625],[179,632],[187,641],[193,651],[197,662],[199,673],[198,685],[195,697],[189,707],[181,716],[172,723],[161,728],[150,731]] },\r\n\r\n    { type:'poly', data:[[358,729],[333,609],[320,613],[304,613],[356,729]] },\r\n\r\n    { type:'poly', data:[[159,264],[228,445],[238,435],[247,427],[256,421],[268,417],[277,414],[160,266]] },\r\n\r\n    { type:'poly', data:[[112,461],[81,253],[81,206],[125,205],[126,265],[159,264],[228,445],[112,460]] },\r\n\r\n    { type:'poly', data:[[125,205],[81,205],[125,94],[125,205]] },\r\n\r\n    { type:'poly', data:[[124,93],[541,57],[436,117],[124,94]] },\r\n\r\n    { type:'poly', data:[[436,117],[712,231],[540,57],[435,117]] },\r\n\r\n    { type:'poly', data:[[712,232],[673,650],[712,609],[713,233]] },\r\n\r\n    { type:'poly', data:[[149,730],[358,729],[351,717],[150,729]] },\r\n\r\n    { type:'poly', data:[[606,428],[617,426],[628,427],[639,430],[649,436],[657,444],[662,453],[666,464],[667,475],[665,486],[660,497],[653,505],[644,512],[634,517]] },\r\n\r\n    { type:'poly', data:[[112,460],[123,457],[132,450],[138,441],[141,431],[142,420],[138,409],[132,400],[123,393],[112,390],[101,390]] },\r\n\r\n    { type:'poly', data:[[333,609],[344,604],[353,597],[361,588],[366,578],[368,566],[368,554],[365,543],[359,533],[351,524],[341,518],[329,514],[318,513],[306,515]] },\r\n\r\n    { type:'poly', data:[[306,515],[316,510],[323,503],[328,493],[329,482],[326,471],[319,463],[310,457],[300,454],[289,455]] },\r\n\r\n    { type:'poly', data:[[454,675],[477,730],[674,651],[652,595],[454,675]] }\r\n];\r\n\r\nMIX_TEMPLATES['U'] = [\r\n    { type:'poly', data:[[14,12],[779,12],[779,779],[13,778],[14,13]] },\r\n\r\n    { type:'circle', data:[557,569,81] },\r\n    { type:'circle', data:[594,159,122] },\r\n\r\n    { type:'poly', data:[[765,467],[753,468],[742,470],[731,473],[720,478],[710,483],[700,490],[692,498],[684,507],[677,516],[672,526],[667,537],[664,548],[662,560],[662,572],[662,583],[664,595],[668,606],[672,617],[678,627],[685,636],[692,645],[701,653],[711,659],[721,665],[732,669],[743,673],[754,674],[766,675]] },\r\n\r\n    { type:'poly', data:[[309,461],[321,462],[333,464],[344,467],[355,471],[366,477],[376,484],[385,491],[393,500],[400,509],[407,520],[412,531],[415,542],[418,554],[419,566],[419,577],[418,589],[415,601],[412,612],[407,623],[400,634],[393,643],[385,652],[376,659],[366,666],[355,672],[344,676],[333,679],[321,681],[309,682]] },\r\n\r\n    { type:'poly', data:[[305,120],[293,121],[281,122],[270,124],[258,127],[247,131],[236,136],[225,141],[215,147],[205,154],[196,161],[187,169],[179,178],[172,187],[165,197],[159,207],[153,217],[149,228],[145,239],[142,251],[139,262],[138,274],[137,286],[137,298],[138,310],[140,321],[143,333],[146,344],[150,356],[155,366],[161,377],[167,387],[174,396],[182,405],[190,414],[199,422],[209,429],[219,435],[229,441],[240,446],[251,450],[262,454],[274,457],[285,459],[297,460],[309,460]] },\r\n\r\n    { type:'poly', data:[[310,682],[767,681],[766,766],[360,766],[311,682]] },\r\n    { type:'poly', data:[[307,682],[356,766],[27,764],[27,682],[308,682]] },\r\n\r\n    { type:'poly', data:[[310,460],[411,462],[405,202],[306,120],[310,460]] },\r\n    { type:'poly', data:[[410,207],[416,463],[766,467],[412,206]] },\r\n    { type:'poly', data:[[306,681],[305,462],[29,682],[307,682]] },\r\n\r\n    { type:'poly', data:[[595,37],[583,37],[571,39],[559,42],[548,46],[537,50],[527,56],[517,63],[508,71],[500,80],[493,90],[486,100],[481,110],[477,122],[474,133],[472,145],[471,157],[471,169],[473,181],[476,193],[480,204],[484,215],[490,225],[497,235],[505,244],[514,252],[524,259],[534,266],[544,271],[556,275],[567,278],[579,280],[591,281]] },\r\n\r\n    { type:'poly', data:[[766,468],[754,469],[742,472],[732,477],[722,484],[713,492],[706,501],[700,512],[696,523],[694,535],[694,547],[696,559],[700,570],[706,581],[713,590],[722,598],[732,604],[743,609],[755,612],[767,613]] },\r\n\r\n    { type:'poly', data:[[594,131],[606,132],[617,135],[628,140],[638,146],[647,154],[654,163],[660,173],[665,184],[667,195],[668,207],[667,219],[664,230],[659,241],[653,251],[645,260],[636,267],[626,273],[615,278],[604,280],[592,281]] },\r\n\r\n    { type:'poly', data:[[306,463],[27,461],[27,682],[307,462]] },\r\n\r\n    { type:'poly', data:[[469,120],[473,244],[319,121],[469,121]] },\r\n    { type:'poly', data:[[522,280],[766,281],[767,462],[525,280]] },\r\n\r\n    { type:'poly', data:[[28,120],[27,457],[133,457],[137,121],[29,121]] },\r\n    { type:'poly', data:[[29,121],[29,25],[596,25],[30,120]] },\r\n    { type:'poly', data:[[632,25],[766,25],[766,131],[633,25]] },\r\n\r\n    { type:'poly', data:[[767,281],[766,162],[668,280],[767,281]] },\r\n    { type:'poly', data:[[469,51],[470,115],[79,117],[470,52]] },\r\n\r\n    { type:'poly', data:[[15,12],[86,12],[86,75],[15,75],[15,14]] },\r\n    { type:'poly', data:[[780,779],[780,721],[719,721],[719,779],[780,779]] }\r\n];\r\n        'ABCDEFGHIJKLMNOPQRSTU'.split('').forEach(function(letter){\r\n            if (!MIX_TEMPLATES[letter]) MIX_TEMPLATES[letter] = MIX_TEMPLATES['A'];\r\n        });\r\n\r\n        var COLORS = [\r\n            \"#FFEBEE\",\"#FFCDD2\",\"#EF9A9A\",\"#E57373\",\"#EF5350\",\"#F44336\",\"#E53935\",\"#D32F2F\",\"#C62828\",\"#8E0000\",\r\n            \"#FFF3E0\",\"#FFE0B2\",\"#FFCC80\",\"#FFB74D\",\"#FFA726\",\"#FF9800\",\"#FB8C00\",\"#F57C00\",\"#EF6C00\",\"#BF360C\",\r\n            \"#FFFDE7\",\"#FFF9C4\",\"#FFF59D\",\"#FFF176\",\"#FFEE58\",\"#FDD835\",\"#FBC02D\",\"#F9A825\",\"#F57F17\",\"#C49000\",\r\n            \"#E8F5E9\",\"#C8E6C9\",\"#A5D6A7\",\"#81C784\",\"#66BB6A\",\"#4CAF50\",\"#43A047\",\"#388E3C\",\"#2E7D32\",\"#1B5E20\",\r\n            \"#E0F7FA\",\"#B2EBF2\",\"#80DEEA\",\"#4DD0E1\",\"#26C6DA\",\"#00BCD4\",\"#00ACC1\",\"#0097A7\",\"#00838F\",\"#006064\",\r\n            \"#E3F2FD\",\"#BBDEFB\",\"#90CAF9\",\"#64B5F6\",\"#42A5F5\",\"#2196F3\",\"#1E88E5\",\"#1976D2\",\"#1565C0\",\"#0D47A1\",\r\n            \"#F3E5F5\",\"#E1BEE7\",\"#CE93D8\",\"#BA68C8\",\"#AB47BC\",\"#9C27B0\",\"#8E24AA\",\"#7B1FA2\",\"#6A1B9A\",\"#4A148C\",\r\n            \"#FFFFFF\",\"#F5F5F5\",\"#E0E0E0\",\"#BDBDBD\",\"#9E9E9E\",\"#757575\",\"#616161\",\"#424242\",\"#212121\",\"#000000\"\r\n        ];\r\n\r\n        var state = {\r\n            currentTpl: \"A\",\r\n            color: '#2A5CAA',\r\n            fills: {},\r\n            unlocked: false,\r\n            unlockPending: false,\r\n            stopped: false\r\n        };\r\n\r\n        function showNotice(msg, html) {\r\n            if (!notice) return;\r\n            notice.style.display = 'block';\r\n            notice.innerHTML = html ? html : String(msg || 'Access denied.');\r\n        }\r\n\r\n        function disableInteractive() {\r\n            if (tabsWrap) tabsWrap.classList.add('mx-disabled-' + uid);\r\n            if (pal) pal.classList.add('mx-disabled-' + uid);\r\n            if (canvas) canvas.classList.add('mx-disabled-' + uid);\r\n            var resetBtn = document.getElementById('reset-' + uid);\r\n            var saveBtn = document.getElementById('save-' + uid);\r\n            if (resetBtn) resetBtn.disabled = true;\r\n            if (saveBtn) saveBtn.disabled = true;\r\n        }\r\n\r\n        function stopFeature(msg, html) {\r\n            state.stopped = true;\r\n            showNotice(msg, html);\r\n            disableInteractive();\r\n        }\r\n\r\n        function parseMaybeJson(text) {\r\n            try { return JSON.parse(text); } catch (e) {}\r\n            var start = text.indexOf('{');\r\n            var end = text.lastIndexOf('}');\r\n            if (start !== -1 && end !== -1 && end > start) {\r\n                try { return JSON.parse(text.slice(start, end + 1)); } catch (e2) {}\r\n            }\r\n            return null;\r\n        }\r\n\r\n        function requestUnlock(done) {\r\n            if (state.unlockPending || state.unlocked || state.stopped) return;\r\n            state.unlockPending = true;\r\n            fetch(AJAX_URL, {\r\n                method: 'POST',\r\n                credentials: 'same-origin',\r\n                headers: { 'Content-Type': 'application\/x-www-form-urlencoded; charset=UTF-8' },\r\n                body: new URLSearchParams({\r\n                    action: 'arttao_mix_launcher_unlock',\r\n                    nonce: AJAX_NONCE\r\n                }).toString()\r\n            })\r\n            .then(function(res){ return res.text(); })\r\n            .then(function(text){\r\n                state.unlockPending = false;\r\n                var data = parseMaybeJson(text);\r\n                if (data && data.success) {\r\n                    state.unlocked = true;\r\n                    if (notice) {\r\n                        notice.style.display = 'none';\r\n                        notice.innerHTML = '';\r\n                    }\r\n                    if (typeof done === 'function') done();\r\n                    return;\r\n                }\r\n                if (data && data.data) {\r\n                    stopFeature(data.data.message || 'Access denied.', data.data.upgrade_html || '');\r\n                    return;\r\n                }\r\n                stopFeature('AJAX \u8fd4\u56de\u5f02\u5e38\uff0c\u672a\u80fd\u5b8c\u6210\u6743\u9650\u68c0\u67e5\u3002');\r\n            })\r\n            .catch(function(){\r\n                state.unlockPending = false;\r\n                stopFeature('AJAX \u8bf7\u6c42\u5931\u8d25\u3002');\r\n            });\r\n        }\r\n\r\n        function ensureUnlocked(run) {\r\n            if (state.stopped) return false;\r\n            if (state.unlocked) {\r\n                if (typeof run === 'function') run();\r\n                return true;\r\n            }\r\n            requestUnlock(run);\r\n            return false;\r\n        }\r\n\r\n        function applyPath(item) {\r\n            ctx.beginPath();\r\n            if (item.type === 'circle') {\r\n                ctx.arc(item.data[0], item.data[1], item.data[2], 0, Math.PI * 2);\r\n            } else if (item.type === 'poly') {\r\n                if (!item.data || !item.data.length) return;\r\n                ctx.moveTo(item.data[0][0], item.data[0][1]);\r\n                for (var i = 1; i < item.data.length; i++) ctx.lineTo(item.data[i][0], item.data[i][1]);\r\n            } else if (item.type === 'curve') {\r\n                ctx.moveTo(item.data[0], item.data[1]);\r\n                ctx.quadraticCurveTo(item.data[2], item.data[3], item.data[4], item.data[5]);\r\n            }\r\n            ctx.closePath();\r\n        }\r\n\r\n        function fitCanvas() {\r\n            var rect = canvas.getBoundingClientRect();\r\n            var w = Math.max(300, Math.round(rect.width || 800));\r\n            var h = w;\r\n            if (canvas.width !== w || canvas.height !== h) {\r\n                canvas.width = w;\r\n                canvas.height = h;\r\n            }\r\n            ctx.setTransform(w \/ BASE, 0, 0, h \/ BASE, 0, 0);\r\n        }\r\n\r\n        function render() {\r\n            fitCanvas();\r\n            ctx.clearRect(0, 0, BASE, BASE);\r\n            ctx.fillStyle = '#ffffff';\r\n            ctx.fillRect(0, 0, BASE, BASE);\r\n            var shapes = MIX_TEMPLATES[state.currentTpl] || MIX_TEMPLATES['A'];\r\n            if (!shapes || !shapes.length) return;\r\n            shapes.forEach(function(shape, i){\r\n                applyPath(shape);\r\n                if (state.fills[i]) {\r\n                    ctx.fillStyle = state.fills[i];\r\n                    ctx.fill();\r\n                }\r\n                ctx.strokeStyle = '#ADD8E6';\r\n                ctx.lineWidth = 1;\r\n                ctx.stroke();\r\n            });\r\n            ctx.strokeStyle = '#2A5CAA';\r\n            ctx.lineWidth = 2;\r\n            ctx.strokeRect(1, 1, 798, 798);\r\n        }\r\n\r\n        function setActiveTab(letter, btn) {\r\n            var btns = tabsWrap ? tabsWrap.querySelectorAll('[data-id]') : [];\r\n            Array.prototype.forEach.call(btns, function(b){ b.classList.remove('active'); });\r\n            if (btn) btn.classList.add('active');\r\n            else {\r\n                Array.prototype.forEach.call(btns, function(b){\r\n                    if (b.getAttribute('data-id') === letter) b.classList.add('active');\r\n                });\r\n            }\r\n        }\r\n\r\n        function setActiveSwatch(el) {\r\n            if (!pal) return;\r\n            pal.querySelectorAll('.mx-swatch-' + uid).forEach(function(node){ node.classList.remove('active'); });\r\n            if (el) el.classList.add('active');\r\n        }\r\n\r\n        var api = {\r\n            togglePanel: function(open, e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                if (open) {\r\n                    launcher.style.display = 'none';\r\n                    main.style.display = 'block';\r\n                    main.classList.add('is-open');\r\n                    setTimeout(render, 80);\r\n                } else {\r\n                    main.classList.remove('is-open');\r\n                    setTimeout(function(){\r\n                        main.style.display = 'none';\r\n                        launcher.style.display = 'block';\r\n                    }, 600);\r\n                }\r\n                return false;\r\n            },\r\n            onTabClick: function(letter, btn, e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                ensureUnlocked(function(){\r\n                    state.currentTpl = letter;\r\n                    state.fills = {};\r\n                    setActiveTab(letter, btn || null);\r\n                    render();\r\n                });\r\n                return false;\r\n            },\r\n            onReset: function(e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                ensureUnlocked(function(){\r\n                    state.fills = {};\r\n                    render();\r\n                });\r\n                return false;\r\n            },\r\n            onSave: function(e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                ensureUnlocked(function(){\r\n                    var a = document.createElement('a');\r\n                    a.download = 'composition.png';\r\n                    a.href = canvas.toDataURL('image\/png');\r\n                    a.click();\r\n                });\r\n                return false;\r\n            },\r\n            onCanvasClick: function(e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                ensureUnlocked(function(){\r\n                    var rect = canvas.getBoundingClientRect();\r\n                    var x = e.clientX - rect.left;\r\n                    var y = e.clientY - rect.top;\r\n                    var shapes = MIX_TEMPLATES[state.currentTpl] || MIX_TEMPLATES['A'];\r\n                    for (var i = shapes.length - 1; i >= 0; i--) {\r\n                        applyPath(shapes[i]);\r\n                        if (ctx.isPointInPath(x, y)) {\r\n                            state.fills[i] = (state.fills[i] === state.color) ? null : state.color;\r\n                            render();\r\n                            break;\r\n                        }\r\n                    }\r\n                });\r\n                return false;\r\n            },\r\n            onColorPick: function(color, el, e) {\r\n                if (e) { e.preventDefault(); e.stopPropagation(); }\r\n                ensureUnlocked(function(){\r\n                    state.color = color;\r\n                    setActiveSwatch(el || null);\r\n                });\r\n                return false;\r\n            }\r\n        };\r\n\r\n        window['logic_' + uid] = api;\r\n\r\n        canvas.addEventListener('click', api.onCanvasClick, false);\r\n\r\n        if (tabsWrap) {\r\n            tabsWrap.addEventListener('click', function(e){\r\n                var btn = e.target.closest('[data-id]');\r\n                if (!btn) return;\r\n                api.onTabClick(btn.getAttribute('data-id'), btn, e);\r\n            }, false);\r\n        }\r\n\r\n        if (pal) {\r\n            COLORS.forEach(function(color, idx){\r\n                var sw = document.createElement('div');\r\n                sw.className = 'mx-swatch-' + uid;\r\n                sw.style.background = color;\r\n                sw.setAttribute('data-color', color);\r\n                sw.addEventListener('click', function(e){ api.onColorPick(color, sw, e); }, false);\r\n                pal.appendChild(sw);\r\n                if (idx === 55) setActiveSwatch(sw);\r\n            });\r\n        }\r\n\r\n        window.addEventListener('resize', function(){\r\n            if (main.classList.contains('is-open')) render();\r\n        }, false);\r\n\r\n            })();\r\n    <\/script>\r\n    \n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">\u878d\u5408\u5e73\u9762\u3001\u8272\u5f69\u4e0e\u7acb\u4f53\u591a\u7ef4\u903b\u8f91\uff0c\u6253\u7834\u5355\u4e00\u7ec3\u4e60\u9650\u5236\u3002\u5f15\u64ce\u652f\u6301\u590d\u6742\u7684\u8def\u5f84\u6570\u636e\u540c\u6b65\uff0c\u901a\u8fc7\u667a\u80fd UI \u5c01\u9762\u5b9e\u73b0\u4e00\u952e\u5f00\u542f\u3002\u63d0\u4f9b\u5168\u9636\u8272\u6807\u9009\u62e9\u4e0e\u6ea2\u51fa\u586b\u5145\u6280\u672f\uff0c\u52a9\u529b\u8bbe\u8ba1\u8005\u5728\u6df7\u5408\u5a92\u4ecb\u4e2d\u5bfb\u627e\u5f62\u5f0f\u7f8e\u611f\u7684\u5e73\u8861\u70b9\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/arttao.net\/wp-content\/uploads\/2026\/02\/art111.gif\" alt=\"\" class=\"wp-image-1057\" style=\"border-top-left-radius:28px;border-top-right-radius:28px;border-bottom-left-radius:28px;border-bottom-right-radius:28px;width:66px;height:auto\"\/><\/figure>\n\n\n    <style>\r\n        .atsc-launcher-atsc_NUDge3qq{\r\n            max-width:1100px;margin:15px auto;background:#AEE5E5;border-radius:30px;\r\n            padding:16px;text-align:center;cursor:pointer;color:#455A64;\r\n            box-shadow:0 10px 25px rgba(69,90,100,.12);\r\n            transition:all .28s ease;border:1px solid #FFCCFF;\r\n        }\r\n        .atsc-launcher-atsc_NUDge3qq:hover{transform:translateY(-3px);}\r\n        .atsc-main-atsc_NUDge3qq{\r\n            max-width:1000px;margin:0 auto;overflow:hidden;max-height:0;\r\n            transition:max-height .55s cubic-bezier(.4,0,.2,1);\r\n        }\r\n        .atsc-main-atsc_NUDge3qq.is-open{max-height:4000px;margin-top:18px;}\r\n        .atsc-head{\r\n            width:100%;display:flex;justify-content:space-between;align-items:center;\r\n            padding:15px 20px;background:#AEE5E5;border:1px solid #FFCCFF;\r\n            border-radius:15px 15px 0 0;font-size:16px;cursor:pointer;\r\n            font-weight:700;color:#455A64;box-sizing:border-box;\r\n        }\r\n        .atsc-body{\r\n            padding:18px;border:1px solid #ECEFF1;border-top:none;border-radius:0 0 15px 15px;background:#fff;\r\n        }\r\n        .atsc-row{margin-bottom:16px;}\r\n        .atsc-tabs{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;}\r\n        .atsc-tab-btn{\r\n            padding:6px 10px;border:1px solid #CFD8DC;border-radius:9px;background:#F9FBFB;\r\n            cursor:pointer;font-size:11px;font-weight:700;color:#455A64;\r\n        }\r\n        .atsc-tab-btn.active{\r\n            background:#455A64 !important;color:#fff !important;border-color:#455A64 !important;\r\n        }\r\n        .atsc-canvas-box{\r\n            width:100%;max-width:1000px;aspect-ratio:1\/1;background:#fff;\r\n            margin:0 auto 16px;border-radius:12px;border:1px solid #EEF2F3;overflow:hidden;\r\n        }\r\n        .atsc-canvas{width:100%;height:100%;display:block;cursor:crosshair;touch-action:none;}\r\n        .atsc-palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(22px,1fr));gap:4px;}\r\n        .atsc-swatch{aspect-ratio:3\/4;border-radius:12px;cursor:pointer;border:1px solid rgba(0,0,0,.08);}\r\n        .atsc-swatch.active{border:2px solid #455A64;transform:scale(1.08);}\r\n        .atsc-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}\r\n        .atsc-btns button{\r\n            padding:10px 18px;background:#ECEFF1;border:1px solid #CFD8DC;border-radius:999px;\r\n            font-weight:700;cursor:pointer;font-size:13px;color:#455A64;\r\n        }\r\n        .atsc-gate-notice{\r\n            display:none;margin:0 0 14px;padding:12px 14px;border:1px solid #F5DEB3;\r\n            border-radius:14px;background:#FFFAF2;color:#7A4F01;line-height:1.6;text-align:left;\r\n        }\r\n        .atsc-disabled{pointer-events:none !important;opacity:.55 !important;}\r\n    <\/style>\r\n\r\n    <div class=\"atsc-launcher-atsc_NUDge3qq\"\r\n         id=\"launcher-atsc_NUDge3qq\"\r\n         onclick=\"document.getElementById('launcher-atsc_NUDge3qq').style.display='none';document.getElementById('main-atsc_NUDge3qq').classList.add('is-open');setTimeout(function(){if(window['atsc_logic_atsc_NUDge3qq']&&window['atsc_logic_atsc_NUDge3qq'].render){window['atsc_logic_atsc_NUDge3qq'].render();}},120);return false;\">\r\n        <h3 style=\"margin:0\">AI \u7cfb\u7edf\u521b\u4f5c\u5f15\u64ce<\/h3>\r\n        <span style=\"font-size:12px;border:1px solid #FFCCFF;padding:2px 8px;border-radius:999px;margin-top:10px;display:inline-block;\">\r\n            \u5f00\u542f\u521b\u4f5c\u7ec3\u4e60\r\n        <\/span>\r\n    <\/div>\r\n\r\n    <div class=\"atsc-main-atsc_NUDge3qq\" id=\"main-atsc_NUDge3qq\">\r\n        <div class=\"atsc-head\" id=\"head-atsc_NUDge3qq\"\r\n             onclick=\"document.getElementById('main-atsc_NUDge3qq').classList.remove('is-open');setTimeout(function(){document.getElementById('launcher-atsc_NUDge3qq').style.display='block';},560);return false;\">\r\n            <span>\u2190 \u521b\u4f5c\u7ec3\u4e60\u8fdb\u884c\u4e2d<\/span>\r\n            <span>\u8fd4\u56de \u2715<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"atsc-body\">\r\n            <div class=\"atsc-gate-notice\" id=\"notice-atsc_NUDge3qq\"><\/div>\r\n\r\n            <div class=\"atsc-row\">\r\n                <div class=\"atsc-tabs\" id=\"tabs-atsc_NUDge3qq\">\r\n                                            <button type=\"button\" class=\"atsc-tab-btn active\" data-id=\"A\">A<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"B\">B<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"C\">C<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"D\">D<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"E\">E<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"F\">F<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"G\">G<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"H\">H<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"I\">I<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"J\">J<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"K\">K<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"L\">L<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"M\">M<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"N\">N<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"O\">O<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"P\">P<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"Q\">Q<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"R\">R<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"S\">S<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"T\">T<\/button>\r\n                                            <button type=\"button\" class=\"atsc-tab-btn \" data-id=\"U\">U<\/button>\r\n                                    <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"atsc-row\">\r\n                <div class=\"atsc-canvas-box\">\r\n                    <canvas class=\"atsc-canvas\" id=\"cv-atsc_NUDge3qq\"><\/canvas>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"atsc-row\">\r\n                <div class=\"atsc-palette\" id=\"pal-atsc_NUDge3qq\"><\/div>\r\n            <\/div>\r\n\r\n            <div class=\"atsc-row\">\r\n                <div class=\"atsc-btns\">\r\n                    <button type=\"button\" id=\"reset-atsc_NUDge3qq\">\u91cd\u7f6e<\/button>\r\n                    <button type=\"button\" id=\"export-png-atsc_NUDge3qq\">\u5bfc\u51fa<\/button>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n<script>\r\n(function(){\r\n    \"use strict\";\r\n\r\n    const uid = \"atsc_NUDge3qq\";\r\n    const AJAX_URL = \"https:\\\/\\\/arttao.net\\\/wp-admin\\\/admin-ajax.php\";\r\n    const AJAX_NONCE = \"dcd3a2c49c\";\r\n\r\n    const launcher = document.getElementById('launcher-' + uid);\r\n    const main = document.getElementById('main-' + uid);\r\n    const cv = document.getElementById('cv-' + uid);\r\n    const ctx = cv.getContext('2d');\r\n    const tabsRoot = document.getElementById('tabs-' + uid);\r\n    const palRoot = document.getElementById('pal-' + uid);\r\n    const btnReset = document.getElementById('reset-' + uid);\r\n    const btnExportPng = document.getElementById('export-png-' + uid);\r\n    const notice = document.getElementById('notice-' + uid);\r\n\r\n    const CANVAS_BASE = 800;\r\n    const STATE = {\r\n        color: '#455A64',\r\n        fills: Object.create(null),\r\n        currentTpl: \"A\"    };\r\n\r\n    let unlocked = false;\r\n    let unlockPending = false;\r\n    let stopped = false;\r\n\r\n    const COLORS = [\r\n        \"#FFEBEE\",\"#FFCDD2\",\"#EF9A9A\",\"#E57373\",\"#EF5350\",\"#F44336\",\"#E53935\",\"#D32F2F\",\"#C62828\",\"#8E0000\",\r\n        \"#FFF3E0\",\"#FFE0B2\",\"#FFCC80\",\"#FFB74D\",\"#FFA726\",\"#FF9800\",\"#FB8C00\",\"#F57C00\",\"#EF6C00\",\"#BF360C\",\r\n        \"#FFFDE7\",\"#FFF9C4\",\"#FFF59D\",\"#FFF176\",\"#FFEE58\",\"#FDD835\",\"#FBC02D\",\"#F9A825\",\"#F57F17\",\"#C49000\",\r\n        \"#E8F5E9\",\"#C8E6C9\",\"#A5D6A7\",\"#81C784\",\"#66BB6A\",\"#4CAF50\",\"#43A047\",\"#388E3C\",\"#2E7D32\",\"#1B5E20\",\r\n        \"#E0F7FA\",\"#B2EBF2\",\"#80DEEA\",\"#4DD0E1\",\"#26C6DA\",\"#00BCD4\",\"#00ACC1\",\"#0097A7\",\"#00838F\",\"#006064\",\r\n        \"#E3F2FD\",\"#BBDEFB\",\"#90CAF9\",\"#64B5F6\",\"#42A5F5\",\"#2196F3\",\"#1E88E5\",\"#1976D2\",\"#1565C0\",\"#0D47A1\",\r\n        \"#F3E5F5\",\"#E1BEE7\",\"#CE93D8\",\"#BA68C8\",\"#AB47BC\",\"#9C27B0\",\"#8E24AA\",\"#7B1FA2\",\"#6A1B9A\",\"#4A148C\",\r\n        \"#FFFFFF\",\"#F5F5F5\",\"#E0E0E0\",\"#BDBDBD\",\"#9E9E9E\",\"#757575\",\"#616161\",\"#424242\",\"#212121\",\"#000000\"\r\n    ];\r\n\r\n    const STEREO_TEMPLATES = {};\r\n    const letters = \"ABCDEFGHIJKLMNOPQRSTU\".split(\"\");\r\n    letters.forEach(function(l){\r\n        if (l === 'A') {\r\n            STEREO_TEMPLATES[l] = [\r\n                { pts: [[389,30],[404,45],[402,356],[71,353],[389,30]] },\r\n                { pts: [[404,46],[491,133],[490,410],[403,409],[404,46]] },\r\n                { pts: [[49,373],[403,375],[402,409],[47,409],[30,393],[48,374],[49,373]] },\r\n                { pts: [[47,409],[403,409],[403,427],[65,426],[46,409],[47,409]] },\r\n                { pts: [[65,427],[367,427],[367,518],[154,516],[65,427]] },\r\n                { pts: [[156,516],[355,518],[353,715],[155,516]] },\r\n                { pts: [[367,427],[403,427],[403,518],[367,518],[367,428],[367,427]] },\r\n                { pts: [[367,518],[404,518],[403,731],[386,748],[366,729],[367,518]] },\r\n                { pts: [[403,409],[404,517],[491,517],[489,410],[403,409]] },\r\n                { pts: [[404,517],[491,517],[492,644],[403,731],[404,518]] },\r\n                { pts: [[509,154],[507,627],[549,587],[551,194],[509,154]] },\r\n                { pts: [[551,196],[571,216],[570,565],[549,586],[551,196]] },\r\n                { pts: [[571,218],[584,230],[583,551],[570,566],[571,218]] },\r\n                { pts: [[584,232],[743,393],[583,551],[584,232]] }\r\n            ];\r\n            \r\n            } else if (l === 'B') {\r\n    STEREO_TEMPLATES[l] = [\r\n{ pts: [[334, 83], [335, 695], [365, 727], [366, 53], [334, 84], [334, 83]] },\r\n{ pts: [[376, 43], [384, 751], [458, 680], [458, 489], [398, 489], [399, 415], [438, 415], [439, 81], [388, 30], [376, 43], [376, 43]] },\r\n{ pts: [[443, 85], [454, 99], [451, 399], [442, 399], [443, 87], [443, 85]] },\r\n{ pts: [[458, 101], [722, 364], [457, 364], [458, 102], [458, 101]] },\r\n{ pts: [[455, 370], [730, 370], [753, 394], [743, 401], [455, 401], [455, 372], [455, 370]] },\r\n{ pts: [[411, 431], [457, 430], [458, 489], [410, 489], [411, 432], [411, 431]] },\r\n{ pts: [[399, 415], [438, 415], [437, 430], [411, 430], [411, 490], [399, 489], [399, 415], [399, 415]] },\r\n{ pts: [[458, 411], [736, 410], [652, 490], [458, 489], [458, 411], [458, 411]] },\r\n{ pts: [[485, 489], [650, 490], [487, 649], [485, 489], [485, 489]] },\r\n{ pts: [[458, 489], [478, 489], [479, 659], [458, 679], [458, 489], [458, 489]] },\r\n{ pts: [[334, 85], [334, 391], [23, 391], [334, 86], [334, 85]] },\r\n{ pts: [[29, 398], [72, 440], [335, 441], [335, 399], [29, 397], [29, 398]] },\r\n{ pts: [[72, 440], [334, 441], [334, 454], [87, 454], [72, 441], [72, 440]] },\r\n{ pts: [[89, 454], [335, 696], [334, 454], [88, 454], [89, 454]] },\r\n{ pts: [[438, 430], [439, 401], [742, 401], [735, 411], [458, 411], [458, 430], [438, 430], [438, 430]] }\r\n];\r\n            } else if (l === 'C') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[366, 49], [366, 382], [319, 382], [320, 98], [365, 50], [366, 49]] },\r\n\r\n        { pts: [[366, 50], [377, 40], [374, 382], [366, 382], [366, 51], [366, 50]] },\r\n\r\n        { pts: [[377, 40], [387, 28], [387, 457], [319, 457], [319, 382], [375, 383], [377, 40], [377, 40]] },\r\n\r\n        { pts: [[387, 457], [386, 749], [310, 674], [311, 457], [387, 457], [387, 457]] },\r\n\r\n        { pts: [[252, 456], [320, 456], [319, 393], [252, 392], [252, 457], [252, 456]] },\r\n\r\n        { pts: [[252, 456], [302, 457], [302, 666], [251, 615], [252, 456], [252, 456]] },\r\n\r\n        { pts: [[32, 392], [252, 392], [253, 455], [96, 455], [31, 392], [32, 392]] },\r\n\r\n        { pts: [[95, 455], [242, 455], [243, 603], [96, 456], [95, 455]] },\r\n\r\n        { pts: [[32, 392], [47, 378], [319, 379], [319, 393], [32, 393], [32, 392]] },\r\n\r\n        { pts: [[49, 378], [319, 379], [319, 337], [89, 335], [49, 378], [49, 378]] },\r\n\r\n        { pts: [[104, 320], [314, 105], [314, 323], [104, 321], [104, 320]] },\r\n\r\n        { pts: [[396, 38], [475, 123], [473, 661], [396, 737], [396, 39], [396, 38]] },\r\n\r\n        { pts: [[480, 129], [479, 657], [586, 548], [589, 238], [480, 130], [480, 129]] },\r\n\r\n        { pts: [[595, 245], [593, 539], [693, 441], [691, 342], [595, 246], [595, 245]] },\r\n\r\n        { pts: [[692, 344], [693, 442], [740, 395], [692, 344], [692, 344]] },\r\n\r\n    ];\r\n} else if (l === 'D') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[348, 67], [348, 468], [285, 467], [284, 133], [348, 66], [348, 67]] },\r\n\r\n        { pts: [[286, 482], [349, 483], [348, 468], [285, 467], [285, 482], [286, 482]] },\r\n\r\n        { pts: [[285, 482], [285, 647], [349, 713], [349, 484], [284, 482], [285, 482]] },\r\n\r\n        { pts: [[349, 510], [620, 511], [385, 747], [349, 712], [349, 510], [349, 510]] },\r\n\r\n        { pts: [[350, 502], [629, 504], [647, 485], [349, 483], [349, 502], [350, 502]] },\r\n\r\n        { pts: [[349, 483], [349, 468], [661, 471], [648, 485], [349, 483], [349, 483]] },\r\n\r\n        { pts: [[349, 387], [387, 387], [386, 468], [349, 468], [349, 387], [349, 387]] },\r\n\r\n        { pts: [[386, 387], [386, 469], [660, 471], [741, 391], [386, 387], [386, 387]] },\r\n\r\n        { pts: [[459, 388], [459, 355], [709, 358], [741, 390], [459, 389], [459, 388]] },\r\n\r\n        { pts: [[460, 349], [699, 351], [461, 108], [460, 349], [460, 349]] },\r\n\r\n        { pts: [[397, 44], [450, 95], [448, 388], [399, 387], [397, 45], [397, 44]] },\r\n\r\n        { pts: [[385, 31], [386, 387], [399, 387], [397, 44], [385, 31], [385, 31]] },\r\n\r\n        { pts: [[385, 31], [371, 44], [372, 387], [386, 387], [385, 32], [385, 31]] },\r\n\r\n        { pts: [[371, 45], [348, 67], [348, 387], [372, 387], [371, 46], [348, 67], [371, 45]] },\r\n\r\n        { pts: [[279, 141], [280, 642], [30, 394], [279, 141], [279, 141]] },\r\n\r\n    ];\r\n} else if (l === 'E') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[392, 30], [389, 328], [108, 328], [392, 30], [392, 30]] },\r\n\r\n        { pts: [[102, 334], [389, 334], [389, 370], [70, 370], [103, 335], [102, 334]] },\r\n\r\n        { pts: [[389, 370], [389, 383], [58, 382], [72, 370], [389, 370], [389, 370]] },\r\n\r\n        { pts: [[59, 382], [39, 401], [354, 401], [354, 383], [59, 382], [59, 382]] },\r\n\r\n        { pts: [[38, 401], [354, 401], [354, 457], [93, 457], [38, 401], [38, 401]] },\r\n\r\n        { pts: [[389, 370], [389, 457], [453, 458], [454, 371], [389, 370], [389, 370]] },\r\n\r\n        { pts: [[354, 383], [389, 383], [389, 457], [354, 457], [354, 383], [354, 383]] },\r\n\r\n        { pts: [[392, 30], [389, 370], [454, 370], [454, 96], [393, 30], [392, 30]] },\r\n\r\n        { pts: [[94, 457], [344, 457], [344, 717], [93, 457], [94, 457]] },\r\n\r\n        { pts: [[354, 457], [353, 728], [386, 761], [389, 457], [354, 457], [354, 457]] },\r\n\r\n        { pts: [[388, 457], [386, 760], [391, 767], [454, 701], [454, 458], [389, 457], [388, 457]] },\r\n\r\n        { pts: [[463, 107], [465, 602], [547, 602], [656, 491], [506, 491], [508, 153], [462, 107], [463, 107]] },\r\n\r\n        { pts: [[465, 604], [546, 602], [465, 687], [465, 603], [465, 604]] },\r\n\r\n        { pts: [[508, 155], [540, 186], [538, 491], [506, 491], [508, 155], [508, 155]] },\r\n\r\n        { pts: [[540, 188], [550, 196], [550, 491], [538, 491], [540, 189], [540, 188]] },\r\n\r\n        { pts: [[556, 203], [557, 491], [655, 491], [655, 308], [555, 204], [556, 203]] },\r\n\r\n        { pts: [[655, 311], [746, 400], [655, 491], [655, 311], [655, 311]] },\r\n\r\n    ];\r\n} else if (l === 'F') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[353, 382], [395, 383], [395, 457], [395, 457], [354, 457], [353, 382], [353, 382]] },\r\n\r\n        { pts: [[395, 370], [396, 458], [454, 458], [454, 370], [395, 370], [395, 370]] },\r\n\r\n        { pts: [[396, 457], [454, 458], [455, 700], [395, 761], [396, 457], [396, 457]] },\r\n\r\n        { pts: [[354, 457], [389, 457], [389, 766], [355, 728], [354, 457], [354, 457]] },\r\n\r\n        { pts: [[396, 370], [454, 370], [455, 97], [398, 35], [396, 371], [396, 370]] },\r\n\r\n        { pts: [[391, 369], [393, 30], [121, 318], [354, 318], [354, 370], [391, 371], [391, 369]] },\r\n\r\n        { pts: [[70, 370], [396, 370], [395, 383], [59, 381], [70, 370], [70, 370]] },\r\n\r\n        { pts: [[71, 370], [112, 329], [354, 330], [354, 370], [72, 369], [71, 370]] },\r\n\r\n        { pts: [[59, 381], [353, 383], [354, 457], [94, 459], [38, 402], [58, 382], [59, 381]] },\r\n\r\n        { pts: [[94, 459], [346, 457], [346, 716], [94, 459], [94, 459]] },\r\n\r\n        { pts: [[463, 106], [469, 113], [470, 682], [463, 691], [463, 106], [463, 106]] },\r\n\r\n        { pts: [[470, 114], [509, 153], [508, 491], [656, 492], [544, 603], [470, 603], [470, 114], [470, 114]] },\r\n\r\n        { pts: [[470, 603], [543, 603], [471, 681], [470, 603], [470, 603]] },\r\n\r\n        { pts: [[509, 155], [539, 186], [540, 492], [508, 492], [509, 155], [509, 155]] },\r\n\r\n        { pts: [[540, 491], [552, 491], [551, 197], [539, 186], [540, 492], [540, 491]] },\r\n\r\n        { pts: [[556, 202], [557, 491], [656, 492], [744, 400], [555, 203], [555, 203], [556, 202]] },\r\n\r\n    ];\r\n} else if (l === 'G') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[334, 90], [395, 29], [419, 52], [422, 361], [334, 362], [334, 90], [334, 90]] },\r\n\r\n        { pts: [[320, 357], [320, 369], [53, 370], [66, 358], [320, 357], [320, 357]] },\r\n\r\n        { pts: [[334, 361], [334, 455], [353, 455], [354, 361], [334, 361], [334, 361]] },\r\n\r\n        { pts: [[354, 361], [353, 455], [422, 456], [422, 361], [354, 361], [354, 361]] },\r\n\r\n        { pts: [[419, 53], [423, 396], [761, 395], [737, 372], [445, 370], [444, 79], [419, 52], [419, 53]] },\r\n\r\n        { pts: [[451, 86], [465, 100], [465, 354], [718, 356], [737, 373], [453, 370], [450, 86], [451, 86]] },\r\n\r\n        { pts: [[465, 102], [717, 356], [465, 353], [465, 102], [465, 102]] },\r\n\r\n        { pts: [[397, 457], [397, 481], [677, 482], [700, 461], [397, 457], [397, 457]] },\r\n\r\n        { pts: [[422, 396], [422, 457], [700, 461], [764, 396], [422, 396], [422, 396]] },\r\n\r\n        { pts: [[317, 456], [397, 455], [398, 754], [316, 674], [316, 456], [317, 456]] },\r\n\r\n        { pts: [[397, 491], [398, 753], [666, 494], [666, 494], [397, 491], [397, 491]] },\r\n\r\n        { pts: [[55, 370], [334, 369], [334, 455], [93, 458], [28, 396], [54, 370], [55, 370]] },\r\n\r\n        { pts: [[94, 458], [305, 663], [305, 456], [94, 458], [94, 458]] },\r\n\r\n        { pts: [[68, 357], [320, 357], [320, 329], [95, 330], [68, 357], [68, 357]] },\r\n\r\n        { pts: [[95, 330], [110, 316], [320, 316], [320, 329], [95, 330], [95, 330]] },\r\n\r\n        { pts: [[117, 311], [320, 311], [319, 107], [117, 311], [117, 311]] },\r\n\r\n    ];\r\n} else if (l === 'H') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[278, 133], [279, 493], [322, 494], [324, 704], [392, 773], [392, 19], [278, 133], [278, 133]] },\r\n\r\n        { pts: [[116, 494], [251, 494], [252, 161], [19, 397], [116, 494], [116, 494]] },\r\n\r\n        { pts: [[258, 156], [268, 145], [270, 493], [258, 494], [257, 157], [258, 156]] },\r\n\r\n        { pts: [[116, 493], [322, 494], [324, 702], [116, 494], [116, 493]] },\r\n\r\n        { pts: [[392, 18], [392, 773], [413, 754], [414, 42], [391, 20], [392, 18]] },\r\n\r\n        { pts: [[414, 44], [447, 77], [450, 349], [722, 354], [765, 398], [414, 394], [415, 45], [414, 44]] },\r\n\r\n        { pts: [[451, 82], [455, 346], [715, 348], [451, 82], [451, 82]] },\r\n\r\n        { pts: [[414, 394], [765, 398], [740, 423], [413, 421], [414, 395], [414, 394]] },\r\n\r\n        { pts: [[414, 419], [414, 468], [694, 468], [741, 423], [414, 420], [414, 419]] },\r\n\r\n        { pts: [[414, 467], [697, 468], [413, 754], [413, 469], [414, 467]] },\r\n\r\n    ];\r\n} else if (l === 'I') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[391, 16], [392, 532], [171, 530], [232, 593], [459, 593], [457, 83], [391, 16], [391, 16]] },\r\n\r\n        { pts: [[233, 593], [459, 593], [459, 699], [396, 760], [394, 609], [247, 609], [232, 593], [233, 593]] },\r\n\r\n        { pts: [[248, 609], [395, 761], [395, 608], [248, 608], [248, 609]] },\r\n\r\n        { pts: [[170, 530], [392, 532], [391, 16], [32, 387], [170, 530], [170, 530]] },\r\n\r\n        { pts: [[457, 83], [474, 100], [476, 683], [459, 698], [457, 83], [457, 83]] },\r\n\r\n        { pts: [[481, 107], [483, 675], [503, 656], [501, 128], [481, 107], [481, 107]] },\r\n\r\n        { pts: [[501, 129], [502, 440], [712, 442], [743, 413], [552, 411], [550, 176], [501, 129], [501, 129]] },\r\n\r\n        { pts: [[550, 175], [552, 410], [742, 413], [762, 393], [550, 176], [550, 175]] },\r\n\r\n        { pts: [[503, 452], [700, 453], [503, 656], [502, 453], [503, 452]] },\r\n\r\n    ];\r\n} else if (l === 'J') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[11, 12], [779, 12], [778, 779], [12, 779], [11, 13], [11, 12]] },\r\n\r\n        { pts: [[44, 32], [54, 32], [347, 201], [346, 361], [45, 196], [44, 33], [44, 32]] },\r\n\r\n        { pts: [[56, 32], [347, 201], [347, 154], [546, 66], [546, 32], [56, 32], [56, 32]] },\r\n\r\n        { pts: [[546, 32], [545, 318], [737, 430], [735, 34], [546, 32], [546, 32]] },\r\n\r\n        { pts: [[347, 155], [546, 65], [545, 317], [346, 201], [347, 156], [347, 155]] },\r\n\r\n        { pts: [[346, 201], [545, 317], [545, 557], [344, 554], [346, 200], [346, 201]] },\r\n\r\n        { pts: [[45, 196], [345, 362], [342, 656], [103, 755], [45, 756], [45, 197], [45, 196]] },\r\n\r\n        { pts: [[545, 361], [619, 363], [619, 721], [736, 722], [736, 756], [545, 756], [545, 360], [545, 361]] },\r\n\r\n        { pts: [[620, 362], [737, 430], [736, 626], [619, 625], [619, 362], [620, 362]] },\r\n\r\n        { pts: [[619, 625], [618, 721], [736, 722], [736, 626], [618, 625], [619, 625]] },\r\n\r\n        { pts: [[344, 555], [545, 557], [545, 755], [99, 756], [342, 656], [343, 556], [344, 555]] },\r\n\r\n    ];\r\n} else if (l === 'K') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[12, 12], [778, 11], [777, 779], [12, 777], [12, 12], [12, 12]] },\r\n\r\n        { pts: [[56, 32], [338, 33], [339, 269], [56, 117], [56, 32], [56, 32]] },\r\n\r\n        { pts: [[338, 33], [339, 197], [573, 197], [740, 114], [741, 33], [337, 33], [338, 33]] },\r\n\r\n        { pts: [[741, 113], [574, 196], [575, 390], [742, 306], [741, 114], [741, 113]] },\r\n\r\n        { pts: [[338, 196], [576, 197], [385, 294], [385, 294], [339, 267], [338, 194], [338, 196]] },\r\n\r\n        { pts: [[384, 293], [574, 198], [575, 392], [383, 293], [384, 293]] },\r\n\r\n        { pts: [[57, 116], [383, 293], [262, 354], [55, 242], [56, 115], [57, 116]] },\r\n\r\n        { pts: [[261, 354], [383, 421], [384, 293], [261, 354], [261, 354]] },\r\n\r\n        { pts: [[384, 293], [383, 420], [742, 610], [742, 306], [574, 390], [384, 294], [384, 293]] },\r\n\r\n        { pts: [[531, 499], [742, 610], [741, 753], [530, 753], [531, 499], [531, 499]] },\r\n\r\n        { pts: [[530, 753], [532, 500], [259, 623], [530, 754], [530, 753]] },\r\n\r\n        { pts: [[260, 622], [530, 753], [260, 754], [260, 623], [260, 622]] },\r\n\r\n        { pts: [[260, 623], [260, 754], [49, 754], [49, 719], [260, 623], [260, 623]] },\r\n\r\n        { pts: [[55, 242], [263, 354], [260, 623], [49, 720], [55, 242], [55, 242]] },\r\n\r\n        { pts: [[263, 355], [534, 500], [260, 623], [262, 355], [263, 355]] },\r\n\r\n    ];\r\n} else if (l === 'L') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[12, 12], [779, 12], [778, 777], [12, 778], [12, 13], [12, 12]] },\r\n\r\n        { pts: [[60, 28], [48, 39], [48, 100], [410, 312], [412, 29], [61, 27], [60, 28]] },\r\n\r\n        { pts: [[412, 29], [410, 311], [554, 396], [554, 30], [412, 29], [412, 29]] },\r\n\r\n        { pts: [[554, 30], [554, 396], [741, 397], [741, 41], [728, 30], [554, 30], [554, 30]] },\r\n\r\n        { pts: [[47, 101], [232, 209], [230, 624], [44, 624], [47, 102], [47, 101]] },\r\n\r\n        { pts: [[232, 208], [231, 395], [410, 396], [410, 311], [232, 208], [232, 208]] },\r\n\r\n        { pts: [[231, 394], [407, 495], [410, 396], [230, 394], [231, 394]] },\r\n\r\n        { pts: [[410, 311], [410, 395], [555, 397], [410, 311], [410, 311]] },\r\n\r\n        { pts: [[410, 395], [554, 397], [554, 577], [408, 495], [410, 395], [410, 395]] },\r\n\r\n        { pts: [[408, 494], [740, 686], [741, 397], [553, 397], [408, 494], [408, 494]] },\r\n\r\n        { pts: [[408, 495], [740, 686], [740, 743], [728, 754], [406, 753], [408, 496], [408, 495]] },\r\n\r\n        { pts: [[231, 394], [408, 495], [407, 624], [230, 624], [231, 394], [231, 394]] },\r\n\r\n        { pts: [[45, 624], [43, 741], [55, 754], [229, 754], [230, 624], [44, 624], [45, 624]] },\r\n\r\n        { pts: [[230, 624], [229, 754], [406, 753], [407, 624], [230, 624], [230, 624]] },\r\n\r\n        { pts: [[554, 579], [741, 582], [741, 686], [555, 580], [554, 579]] },\r\n\r\n        { pts: [[47, 101], [232, 209], [47, 204], [47, 101], [47, 101]] },\r\n\r\n    ];\r\n} else if (l === 'M') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[11, 12], [777, 12], [778, 777], [11, 776], [11, 13], [11, 12]] },\r\n\r\n        { pts: [[57, 31], [45, 42], [44, 176], [230, 280], [230, 173], [503, 29], [56, 30], [57, 31]] },\r\n\r\n        { pts: [[230, 172], [501, 348], [678, 351], [679, 559], [740, 560], [739, 41], [725, 29], [502, 29], [230, 172], [230, 172]] },\r\n\r\n        { pts: [[502, 348], [540, 371], [540, 559], [679, 560], [678, 351], [502, 348], [502, 348]] },\r\n\r\n        { pts: [[44, 176], [230, 281], [230, 526], [45, 414], [44, 177], [44, 176]] },\r\n\r\n        { pts: [[230, 172], [230, 526], [395, 627], [395, 280], [229, 171], [230, 172]] },\r\n\r\n        { pts: [[395, 280], [540, 373], [539, 722], [395, 628], [395, 279], [395, 280]] },\r\n\r\n        { pts: [[540, 723], [539, 760], [739, 759], [740, 560], [679, 560], [678, 724], [540, 723], [540, 723]] },\r\n\r\n        { pts: [[540, 559], [540, 723], [678, 723], [679, 560], [539, 559], [540, 559]] },\r\n\r\n        { pts: [[395, 627], [540, 723], [540, 760], [127, 761], [395, 627], [395, 627]] },\r\n\r\n        { pts: [[45, 414], [395, 628], [127, 761], [46, 759], [45, 416], [45, 414]] },\r\n\r\n    ];\r\n} else if (l === 'N') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[11, 12], [779, 12], [779, 778], [11, 778], [11, 12], [11, 12]] },\r\n\r\n        { pts: [[64, 39], [54, 51], [53, 139], [383, 145], [248, 39], [65, 39], [64, 39]] },\r\n\r\n        { pts: [[383, 145], [53, 139], [54, 191], [381, 335], [383, 144], [383, 145]] },\r\n\r\n        { pts: [[54, 191], [175, 245], [175, 413], [54, 339], [53, 191], [54, 191]] },\r\n\r\n        { pts: [[175, 245], [314, 307], [316, 503], [175, 413], [175, 245], [175, 245]] },\r\n\r\n        { pts: [[314, 306], [381, 334], [382, 542], [317, 503], [314, 305], [314, 306]] },\r\n\r\n        { pts: [[175, 411], [54, 340], [54, 559], [174, 560], [175, 413], [175, 411]] },\r\n\r\n        { pts: [[175, 411], [174, 560], [380, 562], [381, 541], [175, 412], [175, 411]] },\r\n\r\n        { pts: [[54, 559], [174, 560], [176, 752], [66, 752], [54, 739], [54, 560], [54, 559]] },\r\n\r\n        { pts: [[175, 560], [176, 752], [381, 753], [380, 562], [175, 561], [175, 560]] },\r\n\r\n        { pts: [[249, 39], [383, 145], [487, 57], [526, 40], [250, 39], [249, 39]] },\r\n\r\n        { pts: [[487, 57], [383, 145], [381, 333], [487, 379], [486, 58], [487, 57]] },\r\n\r\n        { pts: [[383, 334], [382, 542], [487, 608], [488, 379], [383, 334], [383, 334]] },\r\n\r\n        { pts: [[486, 57], [526, 40], [719, 40], [732, 51], [732, 331], [487, 331], [486, 58], [486, 57]] },\r\n\r\n        { pts: [[487, 331], [488, 380], [731, 488], [732, 330], [487, 331], [487, 331]] },\r\n\r\n        { pts: [[488, 380], [731, 488], [731, 740], [720, 753], [487, 609], [488, 381], [488, 380]] },\r\n\r\n        { pts: [[718, 753], [381, 541], [381, 753], [718, 753], [718, 753]] },\r\n\r\n    ];\r\n} else if (l === 'O') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[12, 11], [777, 12], [779, 779], [11, 779], [12, 11], [12, 11]] },\r\n\r\n        { pts: [[71, 38], [60, 49], [59, 200], [475, 50], [499, 40], [69, 38], [71, 38]] },\r\n\r\n        { pts: [[59, 200], [320, 345], [365, 328], [365, 90], [59, 200], [59, 200]] },\r\n\r\n        { pts: [[59, 200], [321, 344], [138, 405], [58, 381], [59, 202], [59, 200]] },\r\n\r\n        { pts: [[138, 405], [322, 344], [476, 448], [572, 533], [347, 467], [138, 405], [138, 405]] },\r\n\r\n        { pts: [[58, 382], [351, 467], [56, 667], [58, 382], [58, 382]] },\r\n\r\n        { pts: [[352, 468], [367, 473], [366, 747], [317, 747], [318, 490], [351, 467], [352, 468]] },\r\n\r\n        { pts: [[318, 489], [317, 746], [67, 747], [56, 735], [57, 666], [317, 489], [318, 489]] },\r\n\r\n        { pts: [[571, 251], [574, 747], [717, 748], [727, 735], [728, 191], [571, 251], [571, 251]] },\r\n\r\n        { pts: [[367, 473], [573, 533], [574, 747], [366, 747], [367, 474], [367, 473]] },\r\n\r\n        { pts: [[474, 50], [365, 89], [365, 328], [475, 287], [474, 50], [474, 50]] },\r\n\r\n        { pts: [[323, 343], [474, 287], [475, 447], [323, 344], [323, 343]] },\r\n\r\n        { pts: [[475, 446], [573, 534], [571, 252], [474, 287], [475, 446], [475, 446]] },\r\n\r\n        { pts: [[474, 51], [475, 286], [728, 191], [728, 52], [717, 40], [502, 40], [474, 51], [474, 51]] },\r\n\r\n    ];\r\n} else if (l === 'P') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[12, 0], [117, 1], [118, 239], [37, 97], [40, 637], [335, 638], [420, 789], [11, 790], [0, 778], [0, 13], [12, 2], [12, 0]] },\r\n\r\n        { pts: [[119, 243], [306, 585], [119, 584], [118, 244], [119, 243]] },\r\n\r\n        { pts: [[306, 584], [337, 638], [514, 637], [552, 572], [239, 1], [118, 1], [438, 584], [306, 584], [306, 584]] },\r\n\r\n        { pts: [[552, 572], [482, 691], [615, 689], [552, 573], [552, 572]] },\r\n\r\n        { pts: [[366, 691], [481, 691], [424, 790], [421, 789], [366, 691], [366, 691]] },\r\n\r\n        { pts: [[617, 689], [673, 790], [778, 790], [789, 778], [789, 506], [755, 506], [755, 690], [616, 689], [617, 689]] },\r\n\r\n        { pts: [[616, 689], [239, 1], [593, 0], [592, 50], [340, 51], [592, 508], [755, 507], [756, 690], [617, 690], [616, 689]] },\r\n\r\n        { pts: [[444, 155], [591, 420], [592, 156], [443, 155], [444, 155]] },\r\n\r\n        { pts: [[591, 332], [592, 506], [789, 162], [789, 13], [780, 12], [591, 332], [591, 332]] },\r\n\r\n        { pts: [[657, 508], [756, 338], [756, 508], [657, 508], [657, 508]] },\r\n\r\n        { pts: [[593, 1], [592, 156], [695, 155], [781, 12], [780, 0], [593, 1], [593, 1]] },\r\n\r\n        { pts: [[592, 508], [658, 508], [756, 338], [756, 507], [789, 507], [789, 162], [592, 507], [592, 508]] },\r\n\r\n    ];\r\n} else if (l === 'Q') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[10, 0], [0, 11], [0, 57], [310, 57], [312, 553], [368, 553], [369, 1], [11, 1], [10, 0]] },\r\n\r\n        { pts: [[2, 57], [310, 57], [275, 115], [275, 90], [111, 211], [67, 444], [0, 552], [1, 57], [2, 57]] },\r\n\r\n        { pts: [[111, 211], [68, 442], [228, 189], [227, 553], [274, 553], [275, 91], [111, 210], [111, 211]] },\r\n\r\n        { pts: [[67, 445], [81, 553], [199, 365], [199, 552], [228, 553], [228, 189], [67, 446], [67, 445]] },\r\n\r\n        { pts: [[80, 552], [199, 362], [199, 552], [79, 553], [80, 552]] },\r\n\r\n        { pts: [[1, 553], [81, 553], [101, 617], [134, 671], [226, 745], [1, 743], [1, 552], [1, 553]] },\r\n\r\n        { pts: [[82, 553], [102, 618], [134, 670], [198, 669], [199, 552], [82, 553], [82, 553]] },\r\n\r\n        { pts: [[228, 552], [226, 745], [1, 743], [0, 780], [9, 789], [309, 789], [309, 553], [228, 553], [228, 552]] },\r\n\r\n        { pts: [[312, 555], [314, 789], [468, 789], [470, 652], [383, 619], [313, 555], [312, 555]] },\r\n\r\n        { pts: [[312, 553], [383, 620], [470, 651], [470, 442], [566, 442], [566, 382], [369, 383], [368, 553], [312, 553], [312, 553]] },\r\n\r\n        { pts: [[470, 441], [688, 441], [659, 488], [563, 489], [562, 643], [516, 654], [470, 649], [470, 441], [470, 441]] },\r\n\r\n        { pts: [[562, 488], [562, 641], [660, 487], [562, 488], [562, 488]] },\r\n\r\n        { pts: [[562, 642], [620, 617], [659, 585], [659, 487], [562, 641], [562, 642]] },\r\n\r\n        { pts: [[659, 486], [695, 487], [696, 547], [658, 585], [658, 486], [659, 486]] },\r\n\r\n        { pts: [[690, 441], [760, 442], [695, 546], [658, 585], [618, 617], [562, 641], [470, 788], [780, 789], [789, 780], [790, 281], [690, 439], [690, 441]] },\r\n\r\n        { pts: [[369, 1], [392, 1], [392, 382], [369, 382], [369, 2], [369, 1]] },\r\n\r\n        { pts: [[392, 277], [392, 382], [725, 381], [790, 278], [392, 277], [392, 277]] },\r\n\r\n        { pts: [[568, -1], [391, 277], [566, 277], [567, 1], [568, -1]] },\r\n\r\n        { pts: [[391, 1], [392, 274], [567, 1], [391, 1], [391, 1]] },\r\n\r\n        { pts: [[567, 1], [566, 277], [696, 277], [697, 160], [567, 1], [567, 1]] },\r\n\r\n        { pts: [[568, 1], [697, 162], [697, 1], [568, 1], [568, 1]] },\r\n\r\n        { pts: [[698, 1], [697, 161], [789, 278], [790, 9], [780, 0], [697, 1], [698, 1]] },\r\n\r\n    ];\r\n} else if (l === 'R') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[9, 0], [1, 9], [1, 261], [78, 323], [78, 40], [392, 40], [392, 1], [10, 1], [9, 0]] },\r\n\r\n        { pts: [[391, 1], [392, 39], [710, 41], [710, 106], [789, 106], [790, 9], [779, 0], [392, 1], [391, 1]] },\r\n\r\n        { pts: [[157, 39], [710, 40], [709, 105], [156, 104], [156, 104], [156, 39], [157, 39]] },\r\n\r\n        { pts: [[156, 103], [394, 105], [395, 298], [156, 104], [156, 103]] },\r\n\r\n        { pts: [[394, 105], [395, 297], [454, 345], [453, 133], [710, 133], [710, 105], [394, 104], [394, 105]] },\r\n\r\n        { pts: [[453, 133], [710, 134], [711, 445], [455, 444], [453, 133], [453, 133]] },\r\n\r\n        { pts: [[395, 296], [454, 346], [455, 443], [711, 445], [397, 619], [395, 297], [395, 296]] },\r\n\r\n        { pts: [[156, 102], [395, 297], [395, 349], [158, 347], [156, 102], [156, 102]] },\r\n\r\n        { pts: [[158, 346], [158, 387], [335, 389], [337, 530], [397, 577], [395, 349], [158, 347], [158, 346]] },\r\n\r\n        { pts: [[2, 261], [396, 577], [397, 621], [262, 512], [218, 537], [1, 364], [1, 261], [2, 261]] },\r\n\r\n        { pts: [[1, 364], [218, 537], [218, 537], [170, 562], [1, 425], [1, 365], [1, 364]] },\r\n\r\n        { pts: [[218, 537], [262, 513], [396, 621], [93, 789], [3, 789], [313, 613], [218, 536], [218, 537]] },\r\n\r\n        { pts: [[2, 655], [98, 734], [2, 789], [1, 655], [2, 655]] },\r\n\r\n        { pts: [[2, 655], [98, 735], [313, 613], [218, 536], [3, 653], [2, 655]] },\r\n\r\n        { pts: [[2, 425], [2, 425], [1, 653], [170, 561], [2, 425], [2, 425]] },\r\n\r\n        { pts: [[394, 621], [93, 789], [218, 788], [446, 660], [394, 620], [394, 621]] },\r\n\r\n        { pts: [[394, 620], [445, 659], [218, 787], [456, 788], [454, 587], [394, 620], [394, 620]] },\r\n\r\n        { pts: [[457, 749], [713, 749], [710, 444], [454, 587], [456, 749], [457, 749]] },\r\n\r\n        { pts: [[456, 749], [456, 788], [789, 788], [789, 403], [710, 444], [714, 748], [456, 749], [456, 749]] },\r\n\r\n        { pts: [[710, 105], [789, 105], [788, 404], [710, 443], [710, 105], [710, 105]] },\r\n\r\n        { pts: [[78, 39], [156, 39], [158, 385], [78, 321], [78, 40], [78, 39]] },\r\n\r\n    ];\r\n} else if (l === 'S') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[10, 0], [1, 10], [1, 386], [94, 305], [94, 1], [11, 1], [10, 0]] },\r\n\r\n        { pts: [[2, 399], [95, 505], [94, 303], [1, 385], [2, 399], [2, 399]] },\r\n\r\n        { pts: [[2, 397], [96, 507], [96, 789], [10, 789], [1, 780], [1, 395], [2, 397]] },\r\n\r\n        { pts: [[96, 507], [350, 789], [96, 789], [95, 507], [96, 507]] },\r\n\r\n        { pts: [[358, 789], [692, 505], [693, 789], [358, 789], [358, 789]] },\r\n\r\n        { pts: [[95, 506], [350, 789], [359, 789], [691, 505], [95, 505], [95, 506]] },\r\n\r\n        { pts: [[691, 505], [789, 505], [790, 779], [780, 789], [693, 788], [691, 505], [691, 505]] },\r\n\r\n        { pts: [[692, 505], [789, 427], [789, 505], [691, 505], [692, 505]] },\r\n\r\n        { pts: [[95, 505], [680, 1], [690, 1], [692, 505], [95, 505], [95, 505]] },\r\n\r\n        { pts: [[94, 1], [447, 1], [94, 304], [94, 2], [94, 1]] },\r\n\r\n        { pts: [[94, 303], [94, 504], [681, 2], [446, 1], [94, 303], [94, 303]] },\r\n\r\n        { pts: [[690, 2], [692, 505], [789, 426], [789, 10], [779, 1], [690, 1], [690, 2]] },\r\n\r\n    ];\r\n} else if (l === 'T') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[1, 1], [36, 37], [753, 36], [788, 1], [2, 1], [1, 1]] },\r\n\r\n        { pts: [[2, 1], [36, 37], [36, 753], [1, 788], [2, 3], [2, 1]] },\r\n\r\n        { pts: [[754, 35], [787, 1], [789, 788], [754, 753], [754, 36], [754, 35]] },\r\n\r\n        { pts: [[36, 752], [1, 787], [789, 788], [754, 752], [37, 753], [36, 752]] },\r\n\r\n        { pts: [[231, 629], [351, 676], [351, 676], [350, 628], [231, 629], [231, 629]] },\r\n\r\n        { pts: [[602, 37], [322, 752], [600, 752], [602, 37], [602, 37]] },\r\n\r\n        { pts: [[232, 629], [352, 677], [322, 752], [231, 752], [232, 629], [232, 629]] },\r\n\r\n        { pts: [[350, 676], [351, 37], [603, 37], [350, 678], [350, 676]] },\r\n\r\n        { pts: [[602, 37], [600, 751], [633, 752], [633, 36], [602, 37], [602, 37]] },\r\n\r\n        { pts: [[633, 751], [754, 752], [754, 752], [633, 37], [634, 751], [633, 751]] },\r\n\r\n        { pts: [[156, 629], [232, 629], [232, 629], [231, 752], [158, 753], [157, 629], [156, 629]] },\r\n\r\n        { pts: [[158, 629], [232, 629], [234, 37], [157, 37], [157, 629], [158, 629]] },\r\n\r\n        { pts: [[158, 37], [158, 752], [36, 37], [158, 37], [158, 37]] },\r\n\r\n        { pts: [[36, 37], [158, 753], [36, 753], [36, 37], [36, 37]] },\r\n\r\n        { pts: [[633, 36], [754, 751], [754, 35], [634, 36], [633, 36]] },\r\n\r\n        { pts: [[234, 37], [234, 37], [351, 37], [350, 627], [234, 37], [234, 37]] },\r\n\r\n        { pts: [[234, 37], [350, 628], [232, 628], [234, 37], [234, 37]] },\r\n\r\n        { pts: [[158, 629], [232, 629], [231, 751], [158, 629], [158, 629]] },\r\n\r\n    ];\r\n} else if (l === 'U') {\r\n    STEREO_TEMPLATES[l] = [\r\n\r\n        { pts: [[389, 1], [390, 197], [1, 396], [1, 1], [389, 1], [389, 1]] },\r\n\r\n        { pts: [[390, 197], [388, 1], [788, 0], [390, 197], [390, 197]] },\r\n\r\n        { pts: [[789, 788], [457, 163], [457, 163], [787, 1], [788, 788], [789, 788]] },\r\n\r\n        { pts: [[1, 395], [458, 163], [481, 207], [1, 454], [1, 396], [1, 395]] },\r\n\r\n        { pts: [[388, 2], [458, 162], [390, 197], [388, 2], [388, 2]] },\r\n\r\n        { pts: [[457, 162], [788, 787], [530, 127], [458, 163], [457, 162]] },\r\n\r\n        { pts: [[481, 208], [788, 788], [390, 396], [2, 789], [1, 454], [480, 207], [481, 208]] },\r\n\r\n        { pts: [[390, 396], [426, 432], [73, 789], [3, 789], [390, 397], [390, 396]] },\r\n\r\n        { pts: [[426, 431], [789, 788], [346, 564], [345, 788], [72, 789], [426, 432], [426, 432], [426, 431]] },\r\n\r\n        { pts: [[346, 565], [394, 589], [393, 788], [345, 788], [346, 564], [346, 565]] },\r\n\r\n        { pts: [[395, 589], [788, 788], [393, 788], [394, 589], [395, 589]] },\r\n\r\n        { pts: [[387, 1], [458, 162], [530, 127], [388, 2], [387, 1]] },\r\n\r\n    ];\r\n\r\n} else {\r\n            STEREO_TEMPLATES[l] = [\r\n                { pts: [[400,200],[600,300],[400,400],[200,300]] },\r\n                { pts: [[200,300],[400,400],[400,600],[200,500]] },\r\n                { pts: [[400,200],[400,400],[600,300],[600,500],[400,600],[400,400],[200,500],[200,300],[400,200]] }\r\n            ];\r\n        }\r\n    });\r\n\r\n    function showNotice(msg, html){\r\n        if (!notice) return;\r\n        notice.style.display = 'block';\r\n        notice.innerHTML = html ? html : String(msg || 'Access denied.');\r\n    }\r\n\r\n    function stopFeature(msg, html){\r\n        stopped = true;\r\n        showNotice(msg, html);\r\n        tabsRoot.querySelectorAll('.atsc-tab-btn').forEach(function(btn){ btn.classList.add('atsc-disabled'); btn.disabled = true; });\r\n        palRoot.querySelectorAll('.atsc-swatch').forEach(function(btn){ btn.classList.add('atsc-disabled'); });\r\n        btnReset.classList.add('atsc-disabled');\r\n        btnExportPng.classList.add('atsc-disabled');\r\n        btnReset.disabled = true;\r\n        btnExportPng.disabled = true;\r\n        cv.classList.add('atsc-disabled');\r\n    }\r\n\r\n    function requestUnlock(done){\r\n        if (stopped) return;\r\n        if (unlocked) { if (typeof done === 'function') done(); return; }\r\n        if (unlockPending) return;\r\n        unlockPending = true;\r\n\r\n        fetch(AJAX_URL, {\r\n            method: 'POST',\r\n            credentials: 'same-origin',\r\n            headers: { 'Content-Type': 'application\/x-www-form-urlencoded; charset=UTF-8' },\r\n            body: new URLSearchParams({\r\n                action: 'arttao_system_creation_unlock',\r\n                nonce: AJAX_NONCE\r\n            }).toString()\r\n        })\r\n        .then(function(res){ return res.text(); })\r\n        .then(function(text){\r\n            unlockPending = false;\r\n            let parsed = null;\r\n            try { parsed = JSON.parse(text); } catch (e) {}\r\n            if (parsed && parsed.success) {\r\n                unlocked = true;\r\n                if (notice) { notice.style.display = 'none'; notice.innerHTML = ''; }\r\n                if (typeof done === 'function') done();\r\n                return;\r\n            }\r\n            if (parsed && parsed.data) {\r\n                stopFeature(parsed.data.message || 'Access denied.', parsed.data.upgrade_html || '');\r\n                return;\r\n            }\r\n            stopFeature('AJAX \u8fd4\u56de\u5f02\u5e38\u3002');\r\n        })\r\n        .catch(function(){\r\n            unlockPending = false;\r\n            stopFeature('\u8bf7\u6c42\u5931\u8d25\u3002');\r\n        });\r\n    }\r\n\r\n    function ensureUnlocked(run){\r\n        if (stopped) return;\r\n        if (unlocked) { run(); return; }\r\n        requestUnlock(run);\r\n    }\r\n\r\n    function resizeCanvas(){\r\n        const rect = cv.parentNode.getBoundingClientRect();\r\n        const dpr = window.devicePixelRatio || 1;\r\n        cv.style.width = rect.width + 'px';\r\n        cv.style.height = rect.width + 'px';\r\n        cv.width = Math.round(CANVAS_BASE * dpr);\r\n        cv.height = Math.round(CANVAS_BASE * dpr);\r\n        ctx.setTransform(1,0,0,1,0,0);\r\n        ctx.scale(dpr, dpr);\r\n    }\r\n\r\n    function applyPath(pts){\r\n        if (!pts || !pts.length) return;\r\n        ctx.beginPath();\r\n        ctx.moveTo(pts[0][0], pts[0][1]);\r\n        for (let i = 1; i < pts.length; i++) ctx.lineTo(pts[i][0], pts[i][1]);\r\n        ctx.closePath();\r\n    }\r\n\r\n    function render(){\r\n        resizeCanvas();\r\n        ctx.clearRect(0,0,CANVAS_BASE,CANVAS_BASE);\r\n        ctx.fillStyle = '#ffffff';\r\n        ctx.fillRect(0,0,CANVAS_BASE,CANVAS_BASE);\r\n        const shapes = STEREO_TEMPLATES[STATE.currentTpl] || STEREO_TEMPLATES['A'] || [];\r\n        for (let i = 0; i < shapes.length; i++){\r\n            applyPath(shapes[i].pts);\r\n            if (STATE.fills[i]) {\r\n                ctx.fillStyle = STATE.fills[i];\r\n                ctx.fill();\r\n            }\r\n            ctx.strokeStyle = '#CFD8DC';\r\n            ctx.lineWidth = 1;\r\n            ctx.stroke();\r\n        }\r\n    }\r\n\r\n    function renderPalette(){\r\n        palRoot.innerHTML = '';\r\n        COLORS.forEach(function(c){\r\n            const s = document.createElement('div');\r\n            s.className = 'atsc-swatch' + (STATE.color === c ? ' active' : '');\r\n            s.style.background = c;\r\n            s.addEventListener('click', function(e){\r\n                e.stopPropagation();\r\n                ensureUnlocked(function(){\r\n                    STATE.color = c;\r\n                    renderPalette();\r\n                });\r\n            });\r\n            palRoot.appendChild(s);\r\n        });\r\n    }\r\n\r\n    cv.addEventListener('click', function(e){\r\n        ensureUnlocked(function(){\r\n            const rect = cv.getBoundingClientRect();\r\n            const x = (e.clientX - rect.left) * (CANVAS_BASE \/ rect.width);\r\n            const y = (e.clientY - rect.top) * (CANVAS_BASE \/ rect.height);\r\n            const shapes = STEREO_TEMPLATES[STATE.currentTpl] || STEREO_TEMPLATES['A'] || [];\r\n            for (let i = shapes.length - 1; i >= 0; i--){\r\n                applyPath(shapes[i].pts);\r\n                if (ctx.isPointInPath(x, y)){\r\n                    STATE.fills[i] = (STATE.fills[i] === STATE.color) ? null : STATE.color;\r\n                    render();\r\n                    break;\r\n                }\r\n            }\r\n        });\r\n    });\r\n\r\n    tabsRoot.querySelectorAll('.atsc-tab-btn').forEach(function(btn){\r\n        btn.addEventListener('click', function(e){\r\n            e.stopPropagation();\r\n            ensureUnlocked(function(){\r\n                tabsRoot.querySelectorAll('.atsc-tab-btn').forEach(function(b){ b.classList.remove('active'); });\r\n                btn.classList.add('active');\r\n                STATE.currentTpl = btn.getAttribute('data-id') || 'A';\r\n                STATE.fills = Object.create(null);\r\n                render();\r\n            });\r\n        });\r\n    });\r\n\r\n    btnReset.addEventListener('click', function(e){\r\n        e.stopPropagation();\r\n        ensureUnlocked(function(){\r\n            STATE.fills = Object.create(null);\r\n            render();\r\n        });\r\n    });\r\n\r\n    btnExportPng.addEventListener('click', function(e){\r\n        e.stopPropagation();\r\n        ensureUnlocked(function(){\r\n            const a = document.createElement('a');\r\n            a.href = cv.toDataURL('image\/png');\r\n            a.download = 'arttao_creation_' + STATE.currentTpl + '.png';\r\n            a.click();\r\n        });\r\n    });\r\n\r\n    window.addEventListener('resize', function(){ if (main.classList.contains('is-open')) render(); });\r\n\r\n    window['atsc_logic_' + uid] = {\r\n        render: render,\r\n        openPanel: function(){\r\n            launcher.style.display = 'none';\r\n            main.classList.add('is-open');\r\n            setTimeout(render, 120);\r\n        }\r\n    };\r\n\r\n    renderPalette();\r\n})();\r\n<\/script>\r\n    \n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">AI \u7cfb\u7edf\u521b\u4f5c\u5f15\u64ce\u4ee5\u7ed3\u6784\u3001\u79e9\u5e8f\u3001\u7ec4\u5408\u4e0e\u751f\u6210\u903b\u8f91\u4e3a\u6838\u5fc3\uff0c\u5e2e\u52a9\u5b66\u4e60\u8005\u5728\u591a\u79cd\u5143\u7d20\u5173\u7cfb\u4e2d\u5efa\u7acb\u6574\u4f53\u6027\u7684\u521b\u4f5c\u601d\u7ef4\u3002\u901a\u8fc7\u53cd\u590d\u7ec4\u5408\u3001\u8c03\u6574\u3001\u5bf9\u6bd4\u4e0e\u63a8\u8fdb\uff0c\u9010\u6b65\u7406\u89e3\u753b\u9762\u7cfb\u7edf\u7684\u5f62\u6210\u65b9\u5f0f\u3001\u5185\u90e8\u89c4\u5219\u4e0e\u53d8\u5316\u8def\u5f84\uff0c\u63d0\u5347\u7efc\u5408\u6784\u6210\u3001\u89c6\u89c9\u7edf\u7b79\u4e0e\u6301\u7eed\u751f\u6210\u7684\u521b\u4f5c\u80fd\u529b\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>F1\u3001\u6838\u5fc3\u76ee\u7684 \u51e0\u4f55\u62bd\u8c61\u827a\u672f\u5e76\u975e\u53ea\u662f\u4ee5\u7ebf\u6761\u3001\u8272\u5757\u548c\u5f62\u4f53\u6784\u6210\u753b\u9762\uff0c\u66f4\u91cd\u8981\u7684\u662f\u901a\u8fc7\u4e0d\u540c\u7ed3\u6784\u65b9\u5f0f\u5efa\u7acb\u79e9\u5e8f\u3001\u8282\u594f\u3001\u5f20\u529b [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","footnotes":""},"class_list":["post-414","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/pages\/414","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/comments?post=414"}],"version-history":[{"count":43,"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/pages\/414\/revisions"}],"predecessor-version":[{"id":2724,"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/pages\/414\/revisions\/2724"}],"wp:attachment":[{"href":"https:\/\/arttao.net\/ta\/wp-json\/wp\/v2\/media?parent=414"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}