Dateien nach "/" hochladen

This commit is contained in:
knso committed 2026-10-03 12:52:25 +00:00
1 parent 1e602c9b3b
commit 1a3b3a0b16
1 file changed
+13 -10
+13 -10
View File
@@ -1,14 +1,17 @@
<!DOCTYPE html>
<html lang="de"><head><meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,viewport-fit=cover">
<title>Wohnung – 3D Miniatur</title>
<style>html,body{margin:0;background:#efece6}</style></head><body>
<html lang="de"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
<title>Wohnung 3D</title>
<style>html,body{margin:0;height:100%;background:#1b1b19;overflow:hidden}iframe{position:fixed;inset:0;width:100%;height:100%;border:0;display:block}</style>
</head><body>
<script>
(function(){
var DESKTOP="<!DOCTYPE html>\n<html lang=\"de\">\n<head>\n<meta charset=\"utf-8\">\n<title>Wohnung – 3D Miniatur<\/title>\n<script type=\"importmap\">\n{\n \"imports\": {\n \"three\": \"https://unpkg.com/three@0.184.0/build/three.module.js\",\n \"three/addons/controls/OrbitControls.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js\",\n \"three/addons/exporters/OBJExporter.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js\",\n \"three/addons/exporters/GLTFExporter.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js\",\n \"three/examples/jsm/\": \"https://unpkg.com/three@0.184.0/examples/jsm/\",\n \"three/addons/\": \"https://unpkg.com/three@0.184.0/examples/jsm/\",\n \"three-mesh-bvh\": \"https://cdn.jsdelivr.net/npm/three-mesh-bvh@0.9.5/build/index.module.js\",\n \"three-gpu-pathtracer\": \"https://cdn.jsdelivr.net/npm/three-gpu-pathtracer@0.0.24/build/index.module.js\",\n \"n8ao\": \"https://cdn.jsdelivr.net/npm/n8ao@1/dist/N8AO.js\",\n \"postprocessing\": \"https://cdn.jsdelivr.net/npm/postprocessing@6/build/index.js\"\n },\n \"integrity\": {\n \"https://unpkg.com/three@0.184.0/build/three.module.js\": \"sha384-8FCZ1eVO6it4+pbec2aDtnTrwjWXZLJRC+MAGCIPDgsYnUrl/E0A2YlF8ioMKI/J\",\n \"https://unpkg.com/three@0.184.0/build/three.core.js\": \"sha384-dw2ooPewaEIrAgl6oFDBmmBWCE9oW9LxRGcfwZ0hLvEprzo202wXl7vCYHRlSnOT\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js\": \"sha384-4rziNxOBZKQ69i+w+f89KJ55TCYquwchVbByQwmaOeIOXdOU2PLDn3kOfXHwIJC9\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js\": \"sha384-nbwtoZENJD3Vq+ACK0CuGQdPMuDWHkamC2KJD70EV5nfg6jQjfppKOea07YJN+N3\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js\": \"sha384-VofkvpG6HERhFCYbsUOHeNXBCqID2nfqkQqnVzE1jc/oPcz+qJ13ADdXH08hE+cQ\"\n }\n}\n<\/script>\n<style>\n html,body{margin:0;height:100%;background:#efece6;font-family:Helvetica,Arial,sans-serif}\n three-d-stage:not(:defined){visibility:hidden}\n #rooms{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);display:flex;gap:6px;padding:6px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;box-shadow:0 6px 24px rgba(30,28,24,.14)}\n #rooms button{appearance:none;border:0;background:transparent;color:#2f2d2a;font:500 14px/1 Helvetica,Arial,sans-serif;padding:11px 18px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}\n #rooms button:hover{background:rgba(47,45,42,.08)}\n #rooms button.on{background:#2f2d2a;color:#f7f5f0}\n #pov{position:fixed;left:50%;top:18px;transform:translate(-50%,-8px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;display:flex;gap:4px;padding:4px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 20px rgba(0,0,0,.08)}\n #pov.show{opacity:1;pointer-events:auto;transform:translate(-50%,0)}\n #pov button{appearance:none;border:0;background:transparent;color:#2f2d2a;font:500 13px/1 Helvetica,Arial,sans-serif;padding:9px 14px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}\n #pov button:hover{background:rgba(47,45,42,.08)}\n #pov button.on{background:#2f2d2a;color:#f7f5f0}\n #lamp{position:fixed;left:50%;bottom:82px;transform:translate(-50%,10px);opacity:0;pointer-events:none;transition:opacity .35s,transform .35s;display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#2f2d2a;font:500 14px/1 Helvetica,Arial,sans-serif;box-shadow:0 4px 18px rgba(0,0,0,.08)}\n #lampT{display:flex;align-items:center;gap:10px;appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:7px 14px 7px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}\n #lampT:hover{background:rgba(47,45,42,.08)}\n #lampCtl{display:flex;align-items:center;gap:14px;max-width:0;overflow:hidden;opacity:0;transition:max-width .4s,opacity .3s,padding .4s;padding:0}\n #lamp.on #lampCtl{max-width:420px;opacity:1;padding:0 12px 0 6px}\n #lampSw{display:flex;gap:6px}\n #lampSw button{appearance:none;width:22px;height:22px;border-radius:50%;border:2px solid rgba(250,248,244,.9);box-shadow:0 0 0 1px rgba(47,45,42,.18);cursor:pointer;padding:0}\n #lampSw button.sel{box-shadow:0 0 0 2px #2f2d2a}\n #lampSw{align-items:center;gap:8px;font-size:12px;color:#6b665e}\n #lampSw input[type=color]{appearance:none;-webkit-appearance:none;width:26px;height:26px;border-radius:50%;border:2px solid rgba(250,248,244,.9);box-shadow:0 0 0 1px rgba(47,45,42,.25);padding:0;cursor:pointer;background:none}\n #lampSw input[type=color]::-webkit-color-swatch-wrapper{padding:0}\n #lampSw input[type=color]::-webkit-color-swatch{border:0;bLine truncated
var HANDY="<!DOCTYPE html>\n<html lang=\"de\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1,maximum-scale=1,viewport-fit=cover\">\n<title>Wohnung – 3D Miniatur (Handy)<\/title>\n<script type=\"importmap\">\n{\n \"imports\": {\n \"three\": \"https://unpkg.com/three@0.184.0/build/three.module.js\",\n \"three/addons/controls/OrbitControls.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js\",\n \"three/addons/exporters/OBJExporter.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js\",\n \"three/addons/exporters/GLTFExporter.js\": \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js\",\n \"three/examples/jsm/\": \"https://unpkg.com/three@0.184.0/examples/jsm/\",\n \"three/addons/\": \"https://unpkg.com/three@0.184.0/examples/jsm/\",\n \"three-mesh-bvh\": \"https://cdn.jsdelivr.net/npm/three-mesh-bvh@0.9.5/build/index.module.js\",\n \"three-gpu-pathtracer\": \"https://cdn.jsdelivr.net/npm/three-gpu-pathtracer@0.0.24/build/index.module.js\",\n \"n8ao\": \"https://cdn.jsdelivr.net/npm/n8ao@1/dist/N8AO.js\",\n \"postprocessing\": \"https://cdn.jsdelivr.net/npm/postprocessing@6/build/index.js\"\n },\n \"integrity\": {\n \"https://unpkg.com/three@0.184.0/build/three.module.js\": \"sha384-8FCZ1eVO6it4+pbec2aDtnTrwjWXZLJRC+MAGCIPDgsYnUrl/E0A2YlF8ioMKI/J\",\n \"https://unpkg.com/three@0.184.0/build/three.core.js\": \"sha384-dw2ooPewaEIrAgl6oFDBmmBWCE9oW9LxRGcfwZ0hLvEprzo202wXl7vCYHRlSnOT\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js\": \"sha384-4rziNxOBZKQ69i+w+f89KJ55TCYquwchVbByQwmaOeIOXdOU2PLDn3kOfXHwIJC9\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js\": \"sha384-nbwtoZENJD3Vq+ACK0CuGQdPMuDWHkamC2KJD70EV5nfg6jQjfppKOea07YJN+N3\",\n \"https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js\": \"sha384-VofkvpG6HERhFCYbsUOHeNXBCqID2nfqkQqnVzE1jc/oPcz+qJ13ADdXH08hE+cQ\"\n }\n}\n<\/script>\n<style>\n html,body{margin:0;height:100%;background:#efece6;font-family:Helvetica,Arial,sans-serif}\n three-d-stage:not(:defined){visibility:hidden}\n #rooms{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);display:flex;gap:6px;padding:6px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;box-shadow:0 6px 24px rgba(30,28,24,.14)}\n #rooms button{appearance:none;border:0;background:transparent;color:#2f2d2a;font:500 14px/1 Helvetica,Arial,sans-serif;padding:11px 18px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}\n #rooms button:hover{background:rgba(47,45,42,.08)}\n #rooms button.on{background:#2f2d2a;color:#f7f5f0}\n #pov{position:fixed;left:50%;top:18px;transform:translate(-50%,-8px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;display:flex;gap:4px;padding:4px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 20px rgba(0,0,0,.08)}\n #pov.show{opacity:1;pointer-events:auto;transform:translate(-50%,0)}\n #pov button{appearance:none;border:0;background:transparent;color:#2f2d2a;font:500 13px/1 Helvetica,Arial,sans-serif;padding:9px 14px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}\n #pov button:hover{background:rgba(47,45,42,.08)}\n #pov button.on{background:#2f2d2a;color:#f7f5f0}\n #lamp{position:fixed;left:50%;bottom:82px;transform:translate(-50%,10px);opacity:0;pointer-events:none;transition:opacity .35s,transform .35s;display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(250,248,244,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#2f2d2a;font:500 14px/1 Helvetica,Arial,sans-serif;box-shadow:0 4px 18px rgba(0,0,0,.08)}\n #lampT{display:flex;align-items:center;gap:10px;appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:7px 14px 7px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}\n #lampT:hover{background:rgba(47,45,42,.08)}\n #lampCtl{display:flex;align-items:center;gap:14px;max-width:0;overflow:hidden;opacity:0;transition:max-width .4s,opacity .3s,padding .4s;padding:0}\n #lamp.on #lampCtl{max-width:420px;opacity:1;padding:0 12px 0 6px}\n #lampSw{display:flex;gap:6px}\n #lampSw button{appearance:none;width:22px;height:22px;border-radius:50%;border:2px solid rgba(250,248,244,.9);box-shadow:0 0 0 1px rgba(47,45,42,.18);cursor:pointer;padding:0}\n #lampSw button.sel{box-shadow:0 0 0 2px #2f2d2a}\n #lampSw{align-items:center;gap:8px;font-size:12px;color:#6b665e}\n #lampSw input[type=color]{appearance:none;-webkit-appearance:none;width:26px;height:26px;border-radius:50%;border:2px solid rgba(250,248,244,.9);box-shadow:0 0 0 1px rgba(47,45,42,.25);padding:0;cursor:pointer;background:none}\n #lampSw input[Line truncated
var q=new URLSearchParams(location.search).get('view');
var mobile=q?q==='handy':(matchMedia('(pointer:coarse)').matches&&Math.min(screen.width,screen.height)<820)||innerWidth<700;
document.open();document.write(mobile?HANDY:DESKTOP);document.close();
var D = "PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAgPHRpdGxlPldvaG51bmcg4oCTIDNEIE1pbmlhdHVyPC90aXRsZT4KICA8c3R5bGU+CiAgICAqIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9CiAgICBib2R5IHsgYmFja2dyb3VuZDogIzFiMWIxOTsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IG1pbi1oZWlnaHQ6IDEwMHZoOyBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmOyB9CiAgICAjX19idW5kbGVyX2xvYWRpbmcgeyBwb3NpdGlvbjogZml4ZWQ7IGJvdHRvbTogMjBweDsgcmlnaHQ6IDIwcHg7IGZvbnQ6IDEzcHgvMS40IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZjsgY29sb3I6ICM2NjY7IGJhY2tncm91bmQ6ICNmZmY7IHBhZGRpbmc6IDhweCAxNHB4OyBib3JkZXItcmFkaXVzOiA4cHg7IGJveC1zaGFkb3c6IDAgMXB4IDRweCByZ2JhKDAsMCwwLDAuMTIpOyB6LWluZGV4OiAxMDAwMDsgfQogICAgI19fYnVuZGxlcl90aHVtYm5haWwgeyBwb3NpdGlvbjogZml4ZWQ7IGluc2V0OiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYmFja2dyb3VuZDogIzFiMWIxOTsgei1pbmRleDogOTk5OTsgfQogICAgI19fYnVuZGxlcl90aHVtYm5haWwgc3ZnIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgb2JqZWN0LWZpdDogY29udGFpbjsgfQogICAgI19fYnVuZGxlcl9wbGFjZWhvbGRlciB7IGNvbG9yOiAjOTk5OyBmb250LXNpemU6IDE0cHg7IH0KICA8L3N0eWxlPgogIDxub3NjcmlwdD4KICAgIDxzdHlsZT4jX19idW5kbGVyX2xvYWRpbmcgeyBkaXNwbGF5OiBub25lOyB9PC9zdHlsZT4KICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOmZpeGVkO2JvdHRvbToxMnB4O2xlZnQ6MTJweDtmb250OjEzcHgvMS40IC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LHNhbnMtc2VyaWY7Y29sb3I6Izk5OTtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC45KTtwYWRkaW5nOjZweCAxMnB4O2JvcmRlci1yYWRpdXM6NnB4O2JveC1zaGFkb3c6MCAxcHggNHB4IHJnYmEoMCwwLDAsMC4wOCk7ei1pbmRleDoxMDAwMDsiPgogICAgICBUaGlzIHBhZ2UgcmVxdWlyZXMgSmF2YVNjcmlwdCB0byBkaXNwbGF5LgogICAgPC9kaXY+CiAgPC9ub3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KICA8ZGl2IGlkPSJfX2J1bmRsZXJfdGh1bWJuYWlsIj48c3ZnIHZpZXdCb3g9IjAgMCAxMjAgMTIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSIjMWIxYjE5Ij48L3JlY3Q+PHJlY3QgeD0iNDYiIHk9IjI2IiB3aWR0aD0iMjgiIGhlaWdodD0iNjgiIHJ4PSIxMCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZTllNmRlIiBzdHJva2Utd2lkdGg9IjQiPjwvcmVjdD48Y2lyY2xlIGN4PSI2MCIgY3k9IjQyIiByPSI1IiBmaWxsPSIjZTU0ODRkIj48L2NpcmNsZT48Y2lyY2xlIGN4PSI2MCIgY3k9IjYyIiByPSI3IiBmaWxsPSJub25lIiBzdHJva2U9IiNlOWU2ZGUiIHN0cm9rZS13aWR0aD0iNCI+PC9jaXJjbGU+PC9zdmc+PC9kaXY+CiAgPGRpdiBpZD0iX19idW5kbGVyX2xvYWRpbmciPlVucGFja2luZy4uLjwvZGl2PgoKICA8c2NyaXB0PgogICAgCmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBhc3luYyBmdW5jdGlvbigpIHsKICBjb25zdCBsb2FkaW5nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ19fYnVuZGxlcl9sb2FkaW5nJyk7CiAgZnVuY3Rpb24gc2V0U3RhdHVzKG1zZykgeyBpZiAobG9hZGluZykgbG9hZGluZy50ZXh0Q29udGVudCA9IG1zZzsgfQoKICBjb25zdCBGT05UX01JTUUgPSAvXihmb250Wy9dfGFwcGxpY2F0aW9uWy9dKHgtKT9mb250LXxhcHBsaWNhdGlvblsvXXZuZFwubXMtZm9udG9iamVjdCkvaTsKICBjb25zdCBNSU1FX1RPS0VOID0gL15bXHcuKy1dK1svXVtcdy4rLV0rJC87CiAgZnVuY3Rpb24gdG9CYXNlNjQoYnl0ZXMpIHsKICAgIGxldCBiaW4gPSAnJzsKICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpICs9IDB4ODAwMCkgewogICAgICBiaW4gKz0gU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLCBieXRlcy5zdWJhcnJheShpLCBpICsgMHg4MDAwKSk7CiAgICB9CiAgICByZXR1cm4gYnRvYShiaW4pOwogIH0KCiAgLy8gRXJyb3Igc2luayBwZXJzaXN0cyBhY3Jvc3MgcmVwbGFjZVdpdGggc2luY2UgaXQncyBvbiB3aW5kb3csIG5vdCB0aGUgRE9NLgogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIGZ1bmN0aW9uKGUpIHsKICAgIC8vIEZhaWxlZCByZXNvdXJjZSBsb2FkcyAoQ1NQLWJsb2NrZWQgbGlua3MsIHNjcmlwdHMsIGltYWdlcykgZmlyZSBwbGFpbgogICAgLy8gZXZlbnRzIGF0IHRoZSBlbGVtZW50IOKAlCB3YXJuIG9ubHk7IHJlYWwgSlMgZXJyb3JzIGNhcnJ5IG1lc3NhZ2UvZXJyb3IuCiAgICBpZiAoIWUubWVzc2FnZSAmJiAhZS5lcnJvciAmJiBlLnRhcmdldCAmJiBlLnRhcmdldCAhPT0gd2luZG93KSB7CiAgICAgIGNvbnNvbGUud2FybignW2J1bmRsZV0gcmVzb3VyY2UgZmFpbGVkIHRvIGxvYWQ6JywKICAgICAgICBlLnRhcmdldC50YWdOYW1lLCBTdHJpbmcoZS50YXJnZXQuc3JjIHx8IGUudGFyZ2V0LmhyZWYgfHwgJycpKTsKICAgICAgcmV0dXJuOwogICAgfQogICAgdmFyIHAgPSBkb2N1bWVudC5ib2R5IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDsKICAgIHZhciBkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ19fYnVuZGxlcl9lcnInKSB8fCBwLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpKTsKICAgIGQuaWQgPSAnX19idW5kbGVyX2Vycic7CiAgICBkLnN0eWxlLmNzc1RleHQgPSAncG9zaXRpb246Zml4ZWQ7Ym90dG9tOjEycHg7bGVmdDoxMnB4O3JpZ2h0OjEycHg7Zm9udDoxMnB4LzEuNCB1aS1tb25vc3BhY2UsbW9ub3NwYWNlO2JhY2tncm91bmQ6IzJhMTIxNTtjb2xvcjojZmY4YTgwO3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjoxcHggc29saWQgIzVjMmIyZTt6LWluZGV4Ojk5OTk5O3doaXRlLXNwYWNlOnByZS13cmFwO21heC1oZWlnaHQ6NDB2aDtvdmVyZmxvdzphdXRvJzsKICAgIGQudGV4dENvbnRlbnQgPSAoZC50ZXh0Q29udGVudCA/IGQudGV4dENvbnRlbnQgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKDEwKSA6ICcnKSArCiAgICAgICdbYnVuZGxlXSAnICsgKGUubWVzc2FnZSB8fCBlLnR5cGUpICsKICAgICAgKGUuZmlsZW5hbWUgPyAnICgnICsgZS5maWxlbmFtZS5zbGljZSgwLCA2MCkgKyAnOicgKyBlLmxpbmVubyArICcpJyA6ICcnKTsKICB9LCB0cnVlKTsKCiAgdHJ5IHsKICAgIGNvbnN0IG1hbmlmZXN0RWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbdHlwZT0iX19idW5kbGVyL21hbmlmZXN0Il0nKTsKICAgIGNvbnN0IHRlbXBsYXRlRWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbdHlwZT0iX19idW5kbGVyL3RlbXBsYXRlIl0nKTsKICAgIGlmICghbWFuaWZlc3RFbCB8fCAhdGVtcGxhdGVFbCkgLine truncated
var q = new URLSearchParams(location.search).get('v');
var mobile = q ? q === 'handy' : (matchMedia('(pointer:coarse)').matches && Math.min(screen.width, screen.height) < 820) || innerWidth < 700;
var bin = atob(mobile ? P : D), u = new Uint8Array(bin.length); for (var i = 0; i < bin.length; i++) u[i] = bin.charCodeAt(i);
var f = document.createElement('iframe'); f.allow = 'autoplay; fullscreen; xr-spatial-tracking'; f.setAttribute('allowfullscreen', '');
f.srcdoc = new TextDecoder().decode(u); document.body.appendChild(f);
f.onload = function(){ try { f.contentWindow.focus(); } catch(e){} };
})();
</script></body></html>
</script>
</body></html>