From 436fd8740140dad93786cd1ed4edb835cd22af05 Mon Sep 17 00:00:00 2001 From: q9f Date: Thu, 23 May 2024 15:19:16 +0000 Subject: [PATCH] deploy: 04fd43d87405dc6b94c87a8844c33c0c1e79ee53 --- 404.html | 2 +- 404/index.html | 2 +- ...c478bc471ca2991ac974-79740f8054a6faa4c3d2.js | 2 ++ ...bc471ca2991ac974-79740f8054a6faa4c3d2.js.map | 1 + app-1184d6558bd1537bf382.js | 2 ++ ...7e.js.map => app-1184d6558bd1537bf382.js.map | 2 +- app-8b87a8d1fc394e048f7e.js | 2 -- art/index.html | 2 +- chunk-map.json | 2 +- code-of-conduct/index.html | 2 +- ...---src-pages-art-jsx-8d84780042c3b69fcf49.js | 4 ++-- ...rc-pages-art-jsx-8d84780042c3b69fcf49.js.map | 2 +- ...-experiences-jsx-3e995d2e49fb053cf590.js.map | 1 - ...ages-experiences-jsx-9cb69ad5d6fadedfd44e.js | 4 ++-- ...-experiences-jsx-9cb69ad5d6fadedfd44e.js.map | 1 + ...es-hacker-manual-jsx-b505d06e53fe8931a5a4.js | 4 ++-- ...acker-manual-jsx-b505d06e53fe8931a5a4.js.map | 2 +- ...ges-schedule-jsx-6f0aea47755bd651b4d2.js.map | 1 - ...c-pages-schedule-jsx-a31ed06e5235d6421aa6.js | 4 ++-- ...ges-schedule-jsx-a31ed06e5235d6421aa6.js.map | 1 + ...-src-pages-venue-jsx-1ceae7f5dd603d248c94.js | 4 ++-- ...-pages-venue-jsx-1ceae7f5dd603d248c94.js.map | 1 + ...-pages-venue-jsx-278bea4b22ef9c09629f.js.map | 1 - contact/index.html | 2 +- contributors/index.html | 2 +- decentralization/index.html | 2 +- experiences/index.html | 2 +- face-idont/index.html | 2 +- hacker-manual/index.html | 2 +- index.html | 2 +- manifesto/index.html | 2 +- page-data/app-data.json | 2 +- privacy-policy/index.html | 2 +- schedule/index.html | 2 +- ...thFloor-6dc147d73bcb5502b4843f6ef45c1a81.png | Bin 46640 -> 0 bytes ...thFloor-c58523dc038a4992132fae57aaa2ee5e.png | Bin 0 -> 10168 bytes ...stFloor-050a91369b8c3e767a5c5d2d0b84e769.png | Bin 0 -> 10612 bytes ...stFloor-40005b3ded32f04558d7184cf1b4db48.png | Bin 50479 -> 0 bytes ...thFloor-a546bb8ae3bd92f2d3cf397a628592e5.png | Bin 34581 -> 0 bytes ...ndFloor-aa5688aa3d7359340764a0a66270ac8c.png | Bin 55996 -> 0 bytes ...ndFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png | Bin 0 -> 13573 bytes ...ndFloor-aae496ce1855844942ed4801ddd67cba.png | Bin 0 -> 10324 bytes ...ndFloor-b5962086a073150c890aa04414996fe3.png | Bin 47402 -> 0 bytes ...rdFloor-55d040ac1a61dbe808e42bcdad639ea9.png | Bin 44463 -> 0 bytes venue/index.html | 2 +- webpack-runtime-13031e4ce4333708c36f.js | 2 ++ webpack-runtime-13031e4ce4333708c36f.js.map | 1 + webpack-runtime-d4ffd42a942fb3ca39cd.js | 2 -- webpack-runtime-d4ffd42a942fb3ca39cd.js.map | 1 - webpack.stats.json | 2 +- 50 files changed, 42 insertions(+), 39 deletions(-) create mode 100644 58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js create mode 100644 58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js.map create mode 100644 app-1184d6558bd1537bf382.js rename app-8b87a8d1fc394e048f7e.js.map => app-1184d6558bd1537bf382.js.map (99%) delete mode 100644 app-8b87a8d1fc394e048f7e.js rename component---src-pages-art-jsx-bac09a056aef3d37c859.js => component---src-pages-art-jsx-8d84780042c3b69fcf49.js (97%) rename component---src-pages-art-jsx-bac09a056aef3d37c859.js.map => component---src-pages-art-jsx-8d84780042c3b69fcf49.js.map (98%) delete mode 100644 component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js.map rename component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js => component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js (71%) create mode 100644 component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js.map rename component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js => component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js (99%) rename component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js.map => component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js.map (99%) delete mode 100644 component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js.map rename component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js => component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js (86%) create mode 100644 component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js.map rename component---src-pages-venue-jsx-278bea4b22ef9c09629f.js => component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js (77%) create mode 100644 component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js.map delete mode 100644 component---src-pages-venue-jsx-278bea4b22ef9c09629f.js.map delete mode 100644 static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png create mode 100644 static/fifthFloor-c58523dc038a4992132fae57aaa2ee5e.png create mode 100644 static/firstFloor-050a91369b8c3e767a5c5d2d0b84e769.png delete mode 100644 static/firstFloor-40005b3ded32f04558d7184cf1b4db48.png delete mode 100644 static/fourthFloor-a546bb8ae3bd92f2d3cf397a628592e5.png delete mode 100644 static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png create mode 100644 static/groundFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png create mode 100644 static/secondFloor-aae496ce1855844942ed4801ddd67cba.png delete mode 100644 static/secondFloor-b5962086a073150c890aa04414996fe3.png delete mode 100644 static/thirdFloor-55d040ac1a61dbe808e42bcdad639ea9.png create mode 100644 webpack-runtime-13031e4ce4333708c36f.js create mode 100644 webpack-runtime-13031e4ce4333708c36f.js.map delete mode 100644 webpack-runtime-d4ffd42a942fb3ca39cd.js delete mode 100644 webpack-runtime-d4ffd42a942fb3ca39cd.js.map diff --git a/404.html b/404.html index 09e78103..a3ba734a 100644 --- a/404.html +++ b/404.html @@ -60,4 +60,4 @@ /* ! tailwindcss v3.1.6 | MIT License | https://tailwindcss.com -*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}
couldn't find the page you are looking for...
\ No newline at end of file +*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}
couldn't find the page you are looking for...
\ No newline at end of file diff --git a/404/index.html b/404/index.html index f0e12926..0d5c7164 100644 --- a/404/index.html +++ b/404/index.html @@ -60,4 +60,4 @@ /* ! tailwindcss v3.1.6 | MIT License | https://tailwindcss.com -*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}
couldn't find the page you are looking for...
\ No newline at end of file +*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}
couldn't find the page you are looking for...
\ No newline at end of file diff --git a/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js b/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js new file mode 100644 index 00000000..f85f2b7d --- /dev/null +++ b/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[422],{9184:function(f,R,A){R.Z=A.p+"static/fifthFloor-c58523dc038a4992132fae57aaa2ee5e.png"},228:function(f,R,A){R.Z=A.p+"static/firstFloor-050a91369b8c3e767a5c5d2d0b84e769.png"},8595:function(f,R){R.Z="data:image/png;base64,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"},4787:function(f,R,A){R.Z=A.p+"static/groundFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png"},9515:function(f,R,A){R.Z=A.p+"static/secondFloor-aae496ce1855844942ed4801ddd67cba.png"},6048:function(f,R){R.Z="data:image/png;base64,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"}}]); +//# sourceMappingURL=58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js.map \ No newline at end of file diff --git a/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js.map b/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js.map new file mode 100644 index 00000000..ca675c97 --- /dev/null +++ b/58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js.map @@ -0,0 +1 @@ +{"version":3,"file":"58ae86e8af53b2257888c478bc471ca2991ac974-79740f8054a6faa4c3d2.js","mappings":"2GAAA,IAAe,IAA0B,wD,sBCAzC,IAAe,IAA0B,wD,qBCAzC,gkS,uBCAA,IAAe,IAA0B,yD,uBCAzC,IAAe,IAA0B,yD,qBCAzC,o8Y","sources":["webpack://ethberlin/./src/images/fifthFloor.png","webpack://ethberlin/./src/images/firstFloor.png","webpack://ethberlin/./src/images/fourthFloor.png","webpack://ethberlin/./src/images/groundFloor.png","webpack://ethberlin/./src/images/secondFloor.png","webpack://ethberlin/./src/images/thirdFloor.png"],"sourcesContent":["export default __webpack_public_path__ + \"static/fifthFloor-c58523dc038a4992132fae57aaa2ee5e.png\";","export default __webpack_public_path__ + \"static/firstFloor-050a91369b8c3e767a5c5d2d0b84e769.png\";","export default \"data:image/png;base64,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\"","export default __webpack_public_path__ + \"static/groundFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png\";","export default __webpack_public_path__ + \"static/secondFloor-aae496ce1855844942ed4801ddd67cba.png\";","export default \"data:image/png;base64,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\""],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/app-1184d6558bd1537bf382.js b/app-1184d6558bd1537bf382.js new file mode 100644 index 00000000..aa6f21c5 --- /dev/null +++ b/app-1184d6558bd1537bf382.js @@ -0,0 +1,2 @@ +(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[804],{702:function(e,t){"use strict";var n=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},u=c.state,l=c.replace,p=void 0!==l&&l;if("number"==typeof t)e.history.go(t);else{u=n({},u,{key:Date.now()+""});try{i||p?e.history.replaceState(u,null,t):e.history.pushState(u,null,t)}catch(h){e.location[p?"replace":"assign"](t)}}a=r(e),i=!0;var f=new Promise((function(e){return s=e}));return o.forEach((function(e){return e({location:a,action:"PUSH"})})),f}}},a=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=e.indexOf("?"),n={pathname:t>-1?e.substr(0,t):e,search:t>-1?e.substr(t):""},r=0,o=[n],a=[null];return{get location(){return o[r]},addEventListener:function(e,t){},removeEventListener:function(e,t){},history:{get entries(){return o},get index(){return r},get state(){return a[r]},pushState:function(e,t,n){var i=n.split("?"),s=i[0],c=i[1],u=void 0===c?"":c;r++,o.push({pathname:s,search:u.length?"?"+u:u}),a.push(e)},replaceState:function(e,t,n){var i=n.split("?"),s=i[0],c=i[1],u=void 0===c?"":c;o[r]={pathname:s,search:u},a[r]=e},go:function(e){var t=r+e;t<0||t>a.length-1||(r=t)}}}},i=!("undefined"==typeof window||!window.document||!window.document.createElement),s=o(i?window:a()),c=s.navigate;t.V5=s},1122:function(e,t,n){"use strict";t.ei=void 0;var r,o=n(1143),a=(r=o)&&r.__esModule?r:{default:r};var i=function(e,t){return e.substr(0,t.length)===t},s=function(e,t){for(var n=void 0,r=void 0,o=t.split("?")[0],i=h(o),s=""===i[0],u=f(e),p=0,d=u.length;pt.score?-1:e.index-t.index}))},h=function(e){return e.replace(/(^\/+|\/+$)/g,"").split("/")},d=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r0})))&&n.length>0?"?"+n.join("&"):"")},m=["uri","path"];t.ei=s},4506:function(e,t){"use strict";t.H=void 0;t.H=(e,t="legacy")=>{const n=e.endsWith(".html"),r=e.endsWith(".xml"),o=e.endsWith(".pdf");return"/"===e?e:((n||r||o)&&(t="never"),"always"===t?e.endsWith("/")?e:`${e}/`:"never"===t&&e.endsWith("/")?e.slice(0,-1):e)}},9679:function(e,t,n){"use strict";t.p2=t.$C=void 0;var r=n(1432);t.$C=r.ScrollHandler;var o=n(4855);t.p2=o.useScrollRestoration},1432:function(e,t,n){"use strict";var r=n(4836);t.__esModule=!0,t.ScrollHandler=t.ScrollContext=void 0;var o=r(n(6115)),a=r(n(7867)),i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var i=o?Object.getOwnPropertyDescriptor(e,a):null;i&&(i.get||i.set)?Object.defineProperty(r,a,i):r[a]=e[a]}r.default=e,n&&n.set(e,r);return r}(n(7294)),s=r(n(5697)),c=n(1142);function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}var l=i.createContext(new c.SessionStorage);t.ScrollContext=l,l.displayName="GatsbyScrollContext";var p=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a{}},7730:function(e,t){"use strict";t.__esModule=!0,t.getForwards=function(e){return null==e?void 0:e.flatMap((e=>(null==e?void 0:e.forward)||[]))}},2731:function(e,t,n){"use strict";t.__esModule=!0,t.injectPartytownSnippet=function(e){if(!e.length)return;const t=document.querySelector("script[data-partytown]"),n=document.querySelector('iframe[src*="~partytown/partytown-sandbox-sw"]');t&&t.remove();n&&n.remove();const a=(0,o.getForwards)(e),i=document.createElement("script");i.dataset.partytown="",i.innerHTML=(0,r.partytownSnippet)({forward:a}),document.head.appendChild(i)};var r=n(2911),o=n(7730)},5418:function(e,t,n){t.components={"component---src-pages-404-jsx":()=>Promise.all([n.e(351),n.e(256)]).then(n.bind(n,7291)),"component---src-pages-art-jsx":()=>Promise.all([n.e(351),n.e(143),n.e(640)]).then(n.bind(n,5472)),"component---src-pages-code-of-conduct-jsx":()=>Promise.all([n.e(351),n.e(370)]).then(n.bind(n,1189)),"component---src-pages-contact-jsx":()=>Promise.all([n.e(351),n.e(661)]).then(n.bind(n,8797)),"component---src-pages-contributors-jsx":()=>Promise.all([n.e(391),n.e(351),n.e(671),n.e(169)]).then(n.bind(n,1441)),"component---src-pages-decentralization-jsx":()=>Promise.all([n.e(351),n.e(905)]).then(n.bind(n,9857)),"component---src-pages-experiences-jsx":()=>Promise.all([n.e(365),n.e(351),n.e(143),n.e(422),n.e(70)]).then(n.bind(n,6333)),"component---src-pages-face-idont-jsx":()=>Promise.all([n.e(532),n.e(365),n.e(219),n.e(594),n.e(351),n.e(106)]).then(n.bind(n,3321)),"component---src-pages-hacker-manual-jsx":()=>Promise.all([n.e(351),n.e(143),n.e(813)]).then(n.bind(n,4540)),"component---src-pages-index-jsx":()=>Promise.all([n.e(351),n.e(230)]).then(n.bind(n,8871)),"component---src-pages-manifesto-jsx":()=>Promise.all([n.e(351),n.e(787)]).then(n.bind(n,8268)),"component---src-pages-privacy-policy-jsx":()=>Promise.all([n.e(351),n.e(857)]).then(n.bind(n,4589)),"component---src-pages-schedule-jsx":()=>Promise.all([n.e(532),n.e(365),n.e(510),n.e(351),n.e(143),n.e(422),n.e(671),n.e(96)]).then(n.bind(n,1002)),"component---src-pages-venue-jsx":()=>Promise.all([n.e(351),n.e(422),n.e(13)]).then(n.bind(n,2371))}},4741:function(e,t,n){e.exports=[{plugin:n(9608),options:{plugins:[],icon:"src/assets/icons/favicon-32x32.png",icons:[{src:"/src/assets/icons/android-chrome-192x192.png",sizes:"192x192",type:"image/png"}],legacy:!0,theme_color_in_head:!0,cache_busting_mode:"query",crossOrigin:"anonymous",include_favicon:!0,cacheDigest:"d49cf8e0928082a766c984d9ed2ec98e"}},{plugin:n(6003),options:{plugins:[],extensions:[".mdx"],defaultLayouts:{},gatsbyRemarkPlugins:[],lessBabel:!1,remarkPlugins:[],rehypePlugins:[],mediaTypes:["text/markdown","text/x-markdown"],root:"/home/runner/work/4/4",commonmark:!1,JSFrontmatterEngine:!1,engines:{}}},{plugin:n(7420),options:{plugins:[]}},{plugin:n(4094),options:{plugins:[]}}]},3092:function(e,t,n){const r=n(4741),{getResourceURLsForPathname:o,loadPage:a,loadPageSync:i}=n(8575).jN;t.h=function(e,t,n,s){void 0===t&&(t={});let c=r.map((n=>{if(!n.plugin[e])return;t.getResourceURLsForPathname=o,t.loadPage=a,t.loadPageSync=i;const r=n.plugin[e](t,n.options);return r&&s&&(t=s({args:t,result:r,plugin:n})),r}));return c=c.filter((e=>void 0!==e)),c.length>0?c:n?[n]:[]},t.I=(e,t,n)=>r.reduce(((n,r)=>r.plugin[e]?n.then((()=>r.plugin[e](t,r.options))):n),Promise.resolve())},8299:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var r=function(e){return e=e||Object.create(null),{on:function(t,n){(e[t]||(e[t]=[])).push(n)},off:function(t,n){e[t]&&e[t].splice(e[t].indexOf(n)>>>0,1)},emit:function(t,n){(e[t]||[]).slice().map((function(e){e(n)})),(e["*"]||[]).slice().map((function(e){e(t,n)}))}}}()},7802:function(e,t,n){"use strict";n.d(t,{UD:function(){return f},Cj:function(){return d},GA:function(){return h},DS:function(){return p}});var r=n(1122),o=n(1505),a=e=>{if(void 0===e)return e;let[t,n=""]=e.split("?");return n&&(n="?"+n),"/"===t?"/"+n:"/"===t.charAt(t.length-1)?t.slice(0,-1)+n:t+n},i=n(6073);const s=new Map;let c=[];const u=e=>{let t=e;if(-1!==e.indexOf("?")){const[n,r]=e.split("?");t=n+"?"+encodeURIComponent(r)}const n=decodeURIComponent(t);return(0,o.Z)(n,decodeURIComponent("")).split("#")[0]};function l(e){return e.startsWith("/")||e.startsWith("https://")||e.startsWith("http://")?e:new URL(e,window.location.href+(window.location.href.endsWith("/")?"":"/")).pathname}const p=e=>{c=e},f=e=>{const t=m(e),n=c.map((e=>{let{path:t,matchPath:n}=e;return{path:n,originalPath:t}})),o=(0,r.ei)(n,t);return o?a(o.route.originalPath):null},h=e=>{const t=m(e),n=c.map((e=>{let{path:t,matchPath:n}=e;return{path:n,originalPath:t}})),o=(0,r.ei)(n,t);return o?o.params:{}},d=e=>{const t=u(l(e));if(s.has(t))return s.get(t);const n=(0,i.J)(e);if(n)return d(n.toPath);let r=f(t);return r||(r=m(e)),s.set(t,r),r},m=e=>{let t=u(l(e));return"/index.html"===t&&(t="/"),t=a(t),t}},1082:function(e,t,n){"use strict";n.r(t),n.d(t,{Link:function(){return s.ZP},PageRenderer:function(){return a()},Script:function(){return d.Script},ScriptStrategy:function(){return d.ScriptStrategy},StaticQuery:function(){return f},StaticQueryContext:function(){return u},StaticQueryServerContext:function(){return l},collectedScriptsByPage:function(){return d.collectedScriptsByPage},graphql:function(){return g},navigate:function(){return s.c4},parsePath:function(){return s.cP},prefetchPathname:function(){return m},scriptCache:function(){return d.scriptCache},scriptCallbackCache:function(){return d.scriptCallbackCache},useScrollRestoration:function(){return i.p2},useStaticQuery:function(){return h},withAssetPrefix:function(){return s.mc},withPrefix:function(){return s.dq}});var r=n(8575),o=n(2743),a=n.n(o),i=n(9679),s=n(1562),c=n(7294);const u=c.createContext({});let l=null;function p(e){let{staticQueryData:t,data:n,query:r,render:o}=e;const a=n?n.data:t[r]&&t[r].data;return c.createElement(c.Fragment,null,a&&o(a),!a&&c.createElement("div",null,"Loading (StaticQuery)"))}c.createServerContext&&(l=c.createServerContext("StaticQuery",{}));const f=e=>{const{data:t,query:n,render:r,children:o}=e;return c.createElement(u.Consumer,null,(e=>c.createElement(p,{data:t,query:n,render:r||o,staticQueryData:e})))},h=e=>{var t;let n;if(c.useContext,n=l&&Object.keys(l._currentValue).length?c.useContext(l):c.useContext(u),isNaN(Number(e)))throw new Error("useStaticQuery was called with a string but expects to be called using `graphql`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql`"+e+"`);\n");if(null!==(t=n[e])&&void 0!==t&&t.data)return n[e].data;throw new Error("The result of this StaticQuery could not be fetched.\n\nThis is likely a bug in Gatsby and if refreshing the page does not fix it, please open an issue in https://github.com/gatsbyjs/gatsby/issues")};var d=n(3521);const m=r.ZP.enqueue;function g(){throw new Error("It appears like Gatsby is misconfigured. Gatsby related `graphql` calls are supposed to only be evaluated at compile time, and then compiled away. Unfortunately, something went wrong and the query was left in the compiled code.\n\nUnless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.")}},8575:function(e,t,n){"use strict";n.d(t,{uQ:function(){return d},kL:function(){return O},ZP:function(){return S},hs:function(){return C},jN:function(){return j},N1:function(){return E}});var r=n(1721);function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{if("undefined"==typeof document)return void r();const o=document.createElement("link");o.setAttribute("rel","prefetch"),o.setAttribute("href",e),Object.keys(t).forEach((e=>{o.setAttribute(e,t[e])})),o.onload=n,o.onerror=r;(document.getElementsByTagName("head")[0]||document.getElementsByName("script")[0].parentNode).appendChild(o)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.onload=()=>{200===r.status?t():n()},r.send(null)}))},c={};var u=function(e,t){return new Promise((n=>{c[e]?n():s(e,t).then((()=>{n(),c[e]=!0})).catch((()=>{}))}))},l=n(8299),p=n(7802);function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function h(e){for(var t=1;t{const[t,n]=e.split("?");var r;return"/page-data/"+("/"===t?"index":(r="/"===(r=t)[0]?r.slice(1):r).endsWith("/")?r.slice(0,-1):r)+"/page-data.json"+(n?"?"+n:"")};function g(e,t){return void 0===t&&(t="GET"),new Promise((n=>{const r=new XMLHttpRequest;r.open(t,e,!0),r.onreadystatechange=()=>{4==r.readyState&&n(r)},r.send(null)}))}const v=/bot|crawler|spider|crawling/i,y=function(e,t,n){void 0===t&&(t=null);const r={componentChunkName:e.componentChunkName,path:e.path,webpackCompilationHash:e.webpackCompilationHash,matchPath:e.matchPath,staticQueryHashes:e.staticQueryHashes,getServerDataError:e.getServerDataError};return{component:t,head:n,json:e.result,page:r}};let b=function(){function e(e,t){this.inFlightNetworkRequests=new Map,this.pageDb=new Map,this.inFlightDb=new Map,this.staticQueryDb={},this.pageDataDb=new Map,this.partialHydrationDb=new Map,this.isPrefetchQueueRunning=!1,this.prefetchQueued=[],this.prefetchTriggered=new Set,this.prefetchCompleted=new Set,this.loadComponent=e,(0,p.DS)(t)}var t=e.prototype;return t.memoizedGet=function(e){let t=this.inFlightNetworkRequests.get(e);return t||(t=g(e,"GET"),this.inFlightNetworkRequests.set(e,t)),t.then((t=>(this.inFlightNetworkRequests.delete(e),t))).catch((t=>{throw this.inFlightNetworkRequests.delete(e),t}))},t.setApiRunner=function(e){this.apiRunner=e,this.prefetchDisabled=e("disableCorePrefetching").some((e=>e))},t.fetchPageDataJson=function(e){const{pagePath:t,retries:n=0}=e,r=m(t);return this.memoizedGet(r).then((r=>{const{status:o,responseText:a}=r;if(200===o)try{const n=JSON.parse(a);if(void 0===n.path)throw new Error("not a valid pageData response");const r=t.split("?")[1];return r&&!n.path.includes(r)&&(n.path+="?"+r),Object.assign(e,{status:d.Success,payload:n})}catch(i){}return 404===o||200===o?"/404.html"===t||"/500.html"===t?Object.assign(e,{status:d.Error}):this.fetchPageDataJson(Object.assign(e,{pagePath:"/404.html",notFound:!0})):500===o?this.fetchPageDataJson(Object.assign(e,{pagePath:"/500.html",internalServerError:!0})):n<3?this.fetchPageDataJson(Object.assign(e,{retries:n+1})):Object.assign(e,{status:d.Error})}))},t.fetchPartialHydrationJson=function(e){const{pagePath:t,retries:n=0}=e,r=m(t).replace(".json","-rsc.json");return this.memoizedGet(r).then((r=>{const{status:o,responseText:a}=r;if(200===o)try{return Object.assign(e,{status:d.Success,payload:a})}catch(i){}return 404===o||200===o?"/404.html"===t||"/500.html"===t?Object.assign(e,{status:d.Error}):this.fetchPartialHydrationJson(Object.assign(e,{pagePath:"/404.html",notFound:!0})):500===o?this.fetchPartialHydrationJson(Object.assign(e,{pagePath:"/500.html",internalServerError:!0})):n<3?this.fetchPartialHydrationJson(Object.assign(e,{retries:n+1})):Object.assign(e,{status:d.Error})}))},t.loadPageDataJson=function(e){const t=(0,p.Cj)(e);if(this.pageDataDb.has(t)){const e=this.pageDataDb.get(t);return Promise.resolve(e)}return this.fetchPageDataJson({pagePath:t}).then((e=>(this.pageDataDb.set(t,e),e)))},t.loadPartialHydrationJson=function(e){const t=(0,p.Cj)(e);if(this.partialHydrationDb.has(t)){const e=this.partialHydrationDb.get(t);return Promise.resolve(e)}return this.fetchPartialHydrationJson({pagePath:t}).then((e=>(this.partialHydrationDb.set(t,e),e)))},t.findMatchPath=function(e){return(0,p.UD)(e)},t.loadPage=function(e){const t=(0,p.Cj)(e);if(this.pageDb.has(t)){const e=this.pageDb.get(t);return e.error?{error:e.error,status:e.status}:Promise.resolve(e.payload)}if(this.inFlightDb.has(t))return this.inFlightDb.get(t);let n;return n=Promise.all([this.loadAppData(),this.loadPageDataJson(t)]).then((e=>{const n=e[1];if(n.status===d.Error)return{status:d.Error};let r=n.payload;const{componentChunkName:o,staticQueryHashes:a=[]}=r,i={},s=Promise.all([this.loadComponent(o),this.loadComponent(o,"head")]).then((t=>{let o,[a,s]=t;return i.createdAt=new Date,!a||a instanceof Error?(i.status=d.Error,i.error=a):(i.status=d.Success,!0===n.notFound&&(i.notFound=!0),r=Object.assign(r,{webpackCompilationHash:e[0]?e[0].webpackCompilationHash:""}),o=y(r,a,s)),o})),c=Promise.all(a.map((e=>{if(this.staticQueryDb[e]){const t=this.staticQueryDb[e];return{staticQueryHash:e,jsonPayload:t}}return this.memoizedGet("/page-data/sq/d/"+e+".json").then((t=>{const n=JSON.parse(t.responseText);return{staticQueryHash:e,jsonPayload:n}})).catch((()=>{throw new Error("We couldn't load \"/page-data/sq/d/"+e+'.json"')}))}))).then((e=>{const t={};return e.forEach((e=>{let{staticQueryHash:n,jsonPayload:r}=e;t[n]=r,this.staticQueryDb[n]=r})),t}));return Promise.all([s,c]).then((e=>{let n,[r,o]=e;return r&&(n=h(h({},r),{},{staticQueryResults:o}),i.payload=n,l.Z.emit("onPostLoadPageResources",{page:n,pageResources:n})),this.pageDb.set(t,i),i.error?{error:i.error,status:i.status}:n})).catch((e=>({error:e,status:d.Error})))})),n.then((()=>{this.inFlightDb.delete(t)})).catch((e=>{throw this.inFlightDb.delete(t),e})),this.inFlightDb.set(t,n),n},t.loadPageSync=function(e,t){void 0===t&&(t={});const n=(0,p.Cj)(e);if(this.pageDb.has(n)){var r;const e=this.pageDb.get(n);if(e.payload)return e.payload;if(null!==(r=t)&&void 0!==r&&r.withErrorDetails)return{error:e.error,status:e.status}}},t.shouldPrefetch=function(e){return!!(()=>{if("connection"in navigator&&void 0!==navigator.connection){if((navigator.connection.effectiveType||"").includes("2g"))return!1;if(navigator.connection.saveData)return!1}return!0})()&&((!navigator.userAgent||!v.test(navigator.userAgent))&&!this.pageDb.has(e))},t.prefetch=function(e){if(!this.shouldPrefetch(e))return{then:e=>e(!1),abort:()=>{}};if(this.prefetchTriggered.has(e))return{then:e=>e(!0),abort:()=>{}};const t={resolve:null,reject:null,promise:null};t.promise=new Promise(((e,n)=>{t.resolve=e,t.reject=n})),this.prefetchQueued.push([e,t]);const n=new AbortController;return n.signal.addEventListener("abort",(()=>{const t=this.prefetchQueued.findIndex((t=>{let[n]=t;return n===e}));-1!==t&&this.prefetchQueued.splice(t,1)})),this.isPrefetchQueueRunning||(this.isPrefetchQueueRunning=!0,setTimeout((()=>{this._processNextPrefetchBatch()}),3e3)),{then:(e,n)=>t.promise.then(e,n),abort:n.abort.bind(n)}},t._processNextPrefetchBatch=function(){(window.requestIdleCallback||(e=>setTimeout(e,0)))((()=>{const e=this.prefetchQueued.splice(0,4),t=Promise.all(e.map((e=>{let[t,n]=e;return this.prefetchTriggered.has(t)||(this.apiRunner("onPrefetchPathname",{pathname:t}),this.prefetchTriggered.add(t)),this.prefetchDisabled?n.resolve(!1):this.doPrefetch((0,p.Cj)(t)).then((()=>{this.prefetchCompleted.has(t)||(this.apiRunner("onPostPrefetchPathname",{pathname:t}),this.prefetchCompleted.add(t)),n.resolve(!0)}))})));this.prefetchQueued.length?t.then((()=>{setTimeout((()=>{this._processNextPrefetchBatch()}),3e3)})):this.isPrefetchQueueRunning=!1}))},t.doPrefetch=function(e){const t=m(e);return u(t,{crossOrigin:"anonymous",as:"fetch"}).then((()=>this.loadPageDataJson(e)))},t.hovering=function(e){this.loadPage(e)},t.getResourceURLsForPathname=function(e){const t=(0,p.Cj)(e),n=this.pageDataDb.get(t);if(n){const e=y(n.payload);return[].concat(a(w(e.page.componentChunkName)),[m(t)])}return null},t.isPageNotFound=function(e){const t=(0,p.Cj)(e),n=this.pageDb.get(t);return!n||n.notFound},t.loadAppData=function(e){return void 0===e&&(e=0),this.memoizedGet("/page-data/app-data.json").then((t=>{const{status:n,responseText:r}=t;let o;if(200!==n&&e<3)return this.loadAppData(e+1);if(200===n)try{const e=JSON.parse(r);if(void 0===e.webpackCompilationHash)throw new Error("not a valid app-data response");o=e}catch(a){}return o}))},e}();const w=e=>(window.___chunkMapping[e]||[]).map((e=>""+e));let P,O=function(e){function t(t,n,r){var o;return o=e.call(this,(function(e,n){if(void 0===n&&(n="components"),!t[n="components"][e])throw new Error("We couldn't find the correct component chunk with the name \""+e+'"');return t[n][e]().catch((e=>e))}),n)||this,r&&o.pageDataDb.set((0,p.Cj)(r.path),{pagePath:r.path,payload:r,status:"success"}),o}(0,r.Z)(t,e);var n=t.prototype;return n.doPrefetch=function(t){return e.prototype.doPrefetch.call(this,t).then((e=>{if(e.status!==d.Success)return Promise.resolve();const t=e.payload,n=t.componentChunkName,r=w(n);return Promise.all(r.map(u)).then((()=>t))}))},n.loadPageDataJson=function(t){return e.prototype.loadPageDataJson.call(this,t).then((e=>e.notFound?g(t,"HEAD").then((t=>200===t.status?{status:d.Error}:e)):e))},n.loadPartialHydrationJson=function(t){return e.prototype.loadPartialHydrationJson.call(this,t).then((e=>e.notFound?g(t,"HEAD").then((t=>200===t.status?{status:d.Error}:e)):e))},t}(b);const E=e=>{P=e},j={enqueue:e=>P.prefetch(e),getResourceURLsForPathname:e=>P.getResourceURLsForPathname(e),loadPage:e=>P.loadPage(e),loadPageSync:function(e,t){return void 0===t&&(t={}),P.loadPageSync(e,t)},prefetch:e=>P.prefetch(e),isPageNotFound:e=>P.isPageNotFound(e),hovering:e=>P.hovering(e),loadAppData:()=>P.loadAppData()};var S=j;function C(){return P?P.staticQueryDb:{}}},4779:function(e,t,n){"use strict";n.d(t,{Z:function(){return P}});var r=n(4572),o=n(7294),a=n(5697),i=n.n(a),s=n(3092),c=n(7802),u=n(1082),l=n(3631),p=n(4941);function f(e){let{children:t,callback:n}=e;return(0,o.useEffect)((()=>{n()})),t}const h=["link","meta","style","title","base","noscript","script"];function d(e,t){if(e instanceof HTMLElement&&t instanceof HTMLElement){const n=t.getAttribute("nonce");if(n&&!e.getAttribute("nonce")){const r=t.cloneNode(!0);return r.setAttribute("nonce",""),r.nonce=n,n===e.nonce&&e.isEqualNode(r)}}return e.isEqualNode(t)}const m=document.createElement("div"),g=()=>{var e;const t=[],n=new Map;for(const u of m.childNodes){var r,o;const e=u.nodeName.toLowerCase(),i=null===(r=u.attributes)||void 0===r||null===(o=r.id)||void 0===o?void 0:o.value;if(h.includes(e)){let e=u.cloneNode(!0);if(e.setAttribute("data-gatsby-head",!0),"script"===e.nodeName.toLowerCase()){const t=document.createElement("script");for(const n of e.attributes)t.setAttribute(n.name,n.value);t.innerHTML=e.innerHTML,e=t}if(i)if(n.has(i)){var a;const r=n.get(i);null===(a=t[r].parentNode)||void 0===a||a.removeChild(t[r]),t[r]=e}else t.push(e),n.set(i,t.length-1);else t.push(e)}else;}const i=document.querySelectorAll("[data-gatsby-head]");var s;if(0===i.length)return void(s=document.head).append.apply(s,t);const c=[];!function(e){let{oldNodes:t,newNodes:n,onStale:r,onNew:o}=e;for(const a of t){const e=n.findIndex((e=>d(e,a)));-1===e?r(a):n.splice(e,1)}for(const a of n)o(a)}({oldNodes:i,newNodes:t,onStale:e=>e.parentNode.removeChild(e),onNew:e=>c.push(e)}),(e=document.head).append.apply(e,c)};function v(e){let{pageComponent:t,staticQueryResults:n,pageComponentProps:r}=e;(0,o.useEffect)((()=>{if(null!=t&&t.Head){!function(e){if("function"!=typeof e)throw new Error('Expected "Head" export to be a function got "'+typeof e+'".')}(t.Head);const{render:a}=(0,p.U)(),i=t.Head;a(o.createElement(f,{callback:g},o.createElement(u.StaticQueryContext.Provider,{value:n},o.createElement(l.LocationProvider,null,o.createElement(i,{location:{pathname:(e=r).location.pathname},params:e.params,data:e.data||{},pageContext:e.pageContext})))),m)}var e;return()=>{(()=>{const e=document.querySelectorAll("[data-gatsby-head]");for(const t of e)t.parentNode.removeChild(t)})()}}))}function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function b(e){for(var t=1;t{let{result:n}=e;return{element:n,props:t}})).pop()}w.propTypes={location:i().object.isRequired,pageResources:i().object.isRequired,data:i().object,pageContext:i().object.isRequired};var P=w},5824:function(e,t,n){"use strict";var r=n(1721),o=n(3092),a=n(7294),i=n(3631),s=n(9679),c=n(1082),u=n(8575),l=n(6073),p=n(8299);const f={id:"gatsby-announcer",style:{position:"absolute",top:0,width:1,height:1,padding:0,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0},"aria-live":"assertive","aria-atomic":"true"};var h=n(702),d=n(1562);function m(e){const t=(0,l.J)(e),{hash:n,search:r}=window.location;return null!=t&&(window.___replace(t.toPath+r+n),!0)}let g="";window.addEventListener("unhandledrejection",(e=>{/loading chunk \d* failed./i.test(e.reason)&&g&&(window.location.pathname=g)}));const v=(e,t)=>{m(e.pathname)||(g=e.pathname,(0,o.h)("onPreRouteUpdate",{location:e,prevLocation:t}))},y=(e,t)=>{m(e.pathname)||(0,o.h)("onRouteUpdate",{location:e,prevLocation:t})},b=function(e,t){if(void 0===t&&(t={}),"number"==typeof e)return void h.V5.navigate(e);const{pathname:n,search:r,hash:a}=(0,d.cP)(e),s=(0,l.J)(n);if(s&&(e=s.toPath+r+a),window.___swUpdated)return void(window.location=n+r+a);const c=setTimeout((()=>{p.Z.emit("onDelayedLoadPageResources",{pathname:n}),(0,o.h)("onRouteUpdateDelayed",{location:window.location})}),1e3);u.ZP.loadPage(n+r).then((o=>{if(!o||o.status===u.uQ.Error)return window.history.replaceState({},"",location.href),window.location=n,void clearTimeout(c);o&&o.page.webpackCompilationHash!==window.___webpackCompilationHash&&("serviceWorker"in navigator&&null!==navigator.serviceWorker.controller&&"activated"===navigator.serviceWorker.controller.state&&navigator.serviceWorker.controller.postMessage({gatsbyApi:"clearPathResources"}),window.location=n+r+a),(0,i.navigate)(e,t),clearTimeout(c)}))};function w(e,t){let{location:n}=t;const{pathname:r,hash:a}=n,i=(0,o.h)("shouldUpdateScroll",{prevRouterProps:e,pathname:r,routerProps:{location:n},getSavedScrollPosition:e=>[0,this._stateStorage.read(e,e.key)]});if(i.length>0)return i[i.length-1];if(e){const{location:{pathname:t}}=e;if(t===r)return a?decodeURI(a.slice(1)):[0,0]}return!0}let P=function(e){function t(t){var n;return(n=e.call(this,t)||this).announcementRef=a.createRef(),n}(0,r.Z)(t,e);var n=t.prototype;return n.componentDidUpdate=function(e,t){requestAnimationFrame((()=>{let e="new page at "+this.props.location.pathname;document.title&&(e=document.title);const t=document.querySelectorAll("#gatsby-focus-wrapper h1");t&&t.length&&(e=t[0].textContent);const n="Navigated to "+e;if(this.announcementRef.current){this.announcementRef.current.innerText!==n&&(this.announcementRef.current.innerText=n)}}))},n.render=function(){return a.createElement("div",Object.assign({},f,{ref:this.announcementRef}))},t}(a.Component);const O=(e,t)=>{var n,r;return e.href!==t.href||(null==e||null===(n=e.state)||void 0===n?void 0:n.key)!==(null==t||null===(r=t.state)||void 0===r?void 0:r.key)};let E=function(e){function t(t){var n;return n=e.call(this,t)||this,v(t.location,null),n}(0,r.Z)(t,e);var n=t.prototype;return n.componentDidMount=function(){y(this.props.location,null)},n.shouldComponentUpdate=function(e){return!!O(e.location,this.props.location)&&(v(this.props.location,e.location),!0)},n.componentDidUpdate=function(e){O(e.location,this.props.location)&&y(this.props.location,e.location)},n.render=function(){return a.createElement(a.Fragment,null,this.props.children,a.createElement(P,{location:location}))},t}(a.Component);var j=n(4779),S=n(5418),C=n(4572);function k(e,t){for(var n in e)if(!(n in t))return!0;for(var r in t)if(e[r]!==t[r])return!0;return!1}function x(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function R(e){for(var t=1;t{t&&t.status!==u.uQ.Error?this.setState({location:R({},window.location),pageResources:t}):(window.history.replaceState({},"",location.href),window.location=e)}))},n.shouldComponentUpdate=function(e,t){return t.pageResources?this.state.pageResources!==t.pageResources||(this.state.pageResources.component!==t.pageResources.component||(this.state.pageResources.json!==t.pageResources.json||(!(this.state.location.key===t.location.key||!t.pageResources.page||!t.pageResources.page.matchPath&&!t.pageResources.page.path)||function(e,t,n){return k(e.props,t)||k(e.state,n)}(this,e,t)))):(this.loadResources(e.location.pathname+e.location.search),!1)},n.render=function(){return this.props.children(this.state)},t}(a.Component),D=n(1505),L=n(4941);const T=new u.kL(S,[],window.pageData);(0,u.N1)(T),T.setApiRunner(o.h);const{render:M,hydrate:N}=(0,L.U)();window.asyncRequires=S,window.___emitter=p.Z,window.___loader=u.jN,h.V5.listen((e=>{e.location.action=e.action})),window.___push=e=>b(e,{replace:!1}),window.___replace=e=>b(e,{replace:!0}),window.___navigate=(e,t)=>b(e,t);const H="gatsby-reload-compilation-hash-match";(0,o.I)("onClientEntry").then((()=>{(0,o.h)("registerServiceWorker").filter(Boolean).length>0&&n(9939);const e=e=>a.createElement(i.BaseContext.Provider,{value:{baseuri:"/",basepath:"/"}},a.createElement(j.Z,e)),t=a.createContext({});let l=function(e){function n(){return e.apply(this,arguments)||this}return(0,r.Z)(n,e),n.prototype.render=function(){const{children:e}=this.props;return a.createElement(i.Location,null,(n=>{let{location:r}=n;return a.createElement(_,{location:r},(n=>{let{pageResources:r,location:o}=n;if(r.partialHydration)return a.createElement(t.Provider,{value:{pageResources:r,location:o}},e);{const n=(0,u.hs)();return a.createElement(c.StaticQueryContext.Provider,{value:n},a.createElement(t.Provider,{value:{pageResources:r,location:o}},e))}}))}))},n}(a.Component),p=function(n){function o(){return n.apply(this,arguments)||this}return(0,r.Z)(o,n),o.prototype.render=function(){return a.createElement(t.Consumer,null,(t=>{let{pageResources:n,location:r}=t;return a.createElement(E,{location:r},a.createElement(s.$C,{location:r,shouldUpdateScroll:w},a.createElement(i.Router,{basepath:"",location:r,id:"gatsby-focus-wrapper"},a.createElement(e,Object.assign({path:"/404.html"===n.page.path||"/500.html"===n.page.path?(0,D.Z)(r.pathname,""):encodeURI((n.page.matchPath||n.page.path).split("?")[0])},this.props,{location:r,pageResources:n},n.json)))))}))},o}(a.Component);const{pagePath:f,location:h}=window;f&&""+f!==h.pathname+(f.includes("?")?h.search:"")&&!(T.findMatchPath((0,D.Z)(h.pathname,""))||f.match(/^\/(404|500)(\/?|.html)$/)||f.match(/^\/offline-plugin-app-shell-fallback\/?$/))&&(0,i.navigate)(""+f+(f.includes("?")?"":h.search)+h.hash,{replace:!0});const d=()=>{try{return sessionStorage}catch{return null}};u.jN.loadPage(h.pathname+h.search).then((e=>{var t;const n=d();if(null!=e&&null!==(t=e.page)&&void 0!==t&&t.webpackCompilationHash&&e.page.webpackCompilationHash!==window.___webpackCompilationHash&&("serviceWorker"in navigator&&null!==navigator.serviceWorker.controller&&"activated"===navigator.serviceWorker.controller.state&&navigator.serviceWorker.controller.postMessage({gatsbyApi:"clearPathResources"}),n)){if(!("1"===n.getItem(H)))return n.setItem(H,"1"),void window.location.reload(!0)}if(n&&n.removeItem(H),!e||e.status===u.uQ.Error){const t="page resources for "+h.pathname+" not found. Not rendering React";if(e&&e.error)throw console.error(t),e.error;throw new Error(t)}const r=(0,o.h)("wrapRootElement",{element:a.createElement(p,null)},a.createElement(p,null),(e=>{let{result:t}=e;return{element:t}})).pop(),i=function(){const e=a.useRef(!1);return a.useEffect((()=>{e.current||(e.current=!0,performance.mark&&performance.mark("onInitialClientRender"),(0,o.h)("onInitialClientRender"))}),[]),a.createElement(l,null,r)},s=document.getElementById("gatsby-focus-wrapper");let c=M;s&&s.children.length&&(c=N);const f=(0,o.h)("replaceHydrateFunction",void 0,c)[0];function m(){const e="undefined"!=typeof window?document.getElementById("___gatsby"):null;f(a.createElement(i,null),e)}const g=document;if("complete"===g.readyState||"loading"!==g.readyState&&!g.documentElement.doScroll)setTimeout((function(){m()}),0);else{const e=function(){g.removeEventListener("DOMContentLoaded",e,!1),window.removeEventListener("load",e,!1),m()};g.addEventListener("DOMContentLoaded",e,!1),window.addEventListener("load",e,!1)}}))}))},224:function(e,t,n){"use strict";n.r(t);var r=n(4572),o=n(7294),a=n(8575),i=n(4779);function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}t.default=e=>{let{location:t}=e;const n=a.ZP.loadPageSync(t.pathname);return n?o.createElement(i.Z,function(e){for(var t=1;te},6073:function(e,t,n){"use strict";n.d(t,{J:function(){return a}});const r=new Map,o=new Map;function a(e){let t=r.get(e);return t||(t=o.get(e.toLowerCase())),t}[].forEach((e=>{e.ignoreCase?o.set(e.fromPath,e):r.set(e.fromPath,e)}))},9939:function(e,t,n){"use strict";n.r(t);var r=n(3092);"https:"!==window.location.protocol&&"localhost"!==window.location.hostname?console.error("Service workers can only be used over HTTPS, or on localhost for development"):"serviceWorker"in navigator&&navigator.serviceWorker.register("/sw.js").then((function(e){e.addEventListener("updatefound",(()=>{(0,r.h)("onServiceWorkerUpdateFound",{serviceWorker:e});const t=e.installing;console.log("installingWorker",t),t.addEventListener("statechange",(()=>{switch(t.state){case"installed":navigator.serviceWorker.controller?(window.___swUpdated=!0,(0,r.h)("onServiceWorkerUpdateReady",{serviceWorker:e}),window.___failedResources&&(console.log("resources failed, SW updated - reloading"),window.location.reload())):(console.log("Content is now available offline!"),(0,r.h)("onServiceWorkerInstalled",{serviceWorker:e}));break;case"redundant":console.error("The installing service worker became redundant."),(0,r.h)("onServiceWorkerRedundant",{serviceWorker:e});break;case"activated":(0,r.h)("onServiceWorkerActive",{serviceWorker:e})}}))}))})).catch((function(e){console.error("Error during service worker registration:",e)}))},1505:function(e,t,n){"use strict";function r(e,t){return void 0===t&&(t=""),t?e===t?"/":e.startsWith(t+"/")?e.slice(t.length):e:e}n.d(t,{Z:function(){return r}})},7420:function(e,t,n){"use strict";n.r(t)},9608:function(e,t,n){"use strict";n.r(t),n.d(t,{onRouteUpdate:function(){return r}});n(1082),n(292);const r=function(e,t){let{location:n}=e}},292:function(e,t,n){"use strict";var r=n(1082)},6003:function(e,t,n){"use strict";n.r(t),n.d(t,{wrapRootElement:function(){return C}});var r=n(4572),o=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var l=o.createContext({}),p=function(e){var t=o.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):c(c({},t),e)),n},f=function(e){var t=p(e.components);return o.createElement(l.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,a=e.originalType,i=e.parentName,s=u(e,["components","mdxType","originalType","parentName"]),l=p(n),f=r,d=l["".concat(i,".").concat(f)]||l[f]||h[f]||a;return n?o.createElement(d,c(c({ref:t},s),{},{components:n})):o.createElement(d,c({ref:t},s))}));d.displayName="MDXCreateElement";const m=(0,o.createContext)({}),g=e=>{let{__mdxScope:t,children:n}=e;return o.createElement(m.Provider,{value:t},n)};var v=n(1548),y=Object.assign({});function b(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;tfunction(t){const{Component:n}=e.find((e=>{let{guard:n}=e;return!n||n(t)}));return o.createElement(n,t)};v.plugins.forEach((e=>{let{guards:t={},components:n}=e;Object.entries(n).forEach((e=>{let[n,r]=e;P[n]?P.push({guard:t[n],Component:r}):P[n]=[{guard:t[n],Component:r}]}))}));const E=Object.entries(P).map((e=>{let[t,n]=e;return{[t]:O(n.concat({guard:void 0,Component:t}))}})).reduce(((e,t)=>w(w({},e),t)),{}),j=(S=e=>{let{components:t,children:n}=e;return o.createElement(g,{__mdxScope:y},o.createElement(f,{components:w(w({},t),E)},n))},function(e){var t=p(e.components);return o.createElement(S,i({},e,{components:t}))});var S;const C=e=>{let{element:t}=e;return o.createElement(j,null,t)}},1548:function(e){e.exports={plugins:[]}},3631:function(e,t,n){"use strict";n.r(t),n.d(t,{BaseContext:function(){return U},Link:function(){return G},Location:function(){return M},LocationProvider:function(){return N},Match:function(){return X},Redirect:function(){return V},Router:function(){return A},ServerLocation:function(){return H},createHistory:function(){return O},createMemorySource:function(){return E},globalHistory:function(){return S},isRedirect:function(){return K},matchPath:function(){return u},navigate:function(){return C},redirectTo:function(){return z},resolve:function(){return l},useLocation:function(){return ee},useMatch:function(){return re},useNavigate:function(){return te},useParams:function(){return ne}});var r=n(7294),o=n(1143),a=n.n(o),i=n(9712),s=function(e,t){return e.substr(0,t.length)===t},c=function(e,t){for(var n=void 0,r=void 0,o=t.split("?")[0],i=v(o),s=""===i[0],c=g(e),u=0,l=c.length;ut.score?-1:e.index-t.index}))},v=function(e){return e.replace(/(^\/+|\/+$)/g,"").split("/")},y=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r0})))&&n.length>0?"?"+n.join("&"):"")},b=["uri","path"],w=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},s=i.state,c=i.replace,u=void 0!==c&&c;if("number"==typeof t)e.history.go(t);else{s=w({},s,{key:Date.now()+""});try{o||u?e.history.replaceState(s,null,t):e.history.pushState(s,null,t)}catch(p){e.location[u?"replace":"assign"](t)}}r=P(e),o=!0;var l=new Promise((function(e){return a=e}));return n.forEach((function(e){return e({location:r,action:"PUSH"})})),l}}},E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=e.indexOf("?"),n={pathname:t>-1?e.substr(0,t):e,search:t>-1?e.substr(t):""},r=0,o=[n],a=[null];return{get location(){return o[r]},addEventListener:function(e,t){},removeEventListener:function(e,t){},history:{get entries(){return o},get index(){return r},get state(){return a[r]},pushState:function(e,t,n){var i=n.split("?"),s=i[0],c=i[1],u=void 0===c?"":c;r++,o.push({pathname:s,search:u.length?"?"+u:u}),a.push(e)},replaceState:function(e,t,n){var i=n.split("?"),s=i[0],c=i[1],u=void 0===c?"":c;o[r]={pathname:s,search:u},a[r]=e},go:function(e){var t=r+e;t<0||t>a.length-1||(r=t)}}}},j=!("undefined"==typeof window||!window.document||!window.document.createElement),S=O(j?window:E()),C=S.navigate,k=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function R(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function D(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var L=function(e,t){var n=(0,r.createContext)(t);return n.displayName=e,n},T=L("Location"),M=function(e){var t=e.children;return r.createElement(T.Consumer,null,(function(e){return e?t(e):r.createElement(N,null,t)}))},N=function(e){function t(){var n,r;R(this,t);for(var o=arguments.length,a=Array(o),i=0;i-1?(a=t.substring(0,o),i=t.substring(o)):a=t,r.createElement(T.Provider,{value:{location:{pathname:a,search:i,hash:""},navigate:function(){throw new Error("You can't call navigate on the server.")}}},n)},U=L("Base",{baseuri:"/",basepath:"/",navigate:S.navigate}),A=function(e){return r.createElement(U.Consumer,null,(function(t){return r.createElement(M,null,(function(n){return r.createElement(I,k({},t,n,e))}))}))},I=function(e){function t(){return R(this,t),_(this,e.apply(this,arguments))}return D(t,e),t.prototype.render=function(){var e=this.props,t=e.location,n=e.navigate,o=e.basepath,a=e.primary,i=e.children,s=(e.baseuri,e.component),u=void 0===s?"div":s,p=x(e,["location","navigate","basepath","primary","children","baseuri","component"]),f=r.Children.toArray(i).reduce((function(e,t){var n=ae(o)(t);return e.concat(n)}),[]),h=t.pathname,d=c(f,h);if(d){var m=d.params,g=d.uri,v=d.route,y=d.route.value;o=v.default?o:v.path.replace(/\*$/,"");var b=k({},m,{uri:g,location:t,navigate:function(e,t){return n(l(e,g),t)}}),w=r.cloneElement(y,b,y.props.children?r.createElement(A,{location:t,primary:a},y.props.children):void 0),P=a?q:u,O=a?k({uri:g,location:t,component:u},p):p;return r.createElement(U.Provider,{value:{baseuri:g,basepath:o,navigate:b.navigate}},r.createElement(P,O,w))}return null},t}(r.PureComponent);I.defaultProps={primary:!0};var W=L("Focus"),q=function(e){var t=e.uri,n=e.location,o=e.component,a=x(e,["uri","location","component"]);return r.createElement(W.Consumer,null,(function(e){return r.createElement(Z,k({},a,{component:o,requestFocus:e,uri:t,location:n}))}))},F=!0,Q=0,Z=function(e){function t(){var n,r;R(this,t);for(var o=arguments.length,a=Array(o),i=0;i((e,t)=>{const{forward:n=[],...r}=e||{},o=JSON.stringify(r,((e,t)=>("function"==typeof t&&(t=String(t)).startsWith(e+"(")&&(t="function "+t),t)));return["!(function(w,p,f,c){",Object.keys(r).length>0?`c=w[p]=Object.assign(w[p]||{},${o});`:"c=w[p]=w[p]||{};","c[f]=(c[f]||[])",n.length>0?`.concat(${JSON.stringify(n)})`:"","})(window,'partytown','forward');",t].join("")})(e,'/* Partytown 0.5.4 - MIT builder.io */\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,"/"==(a=(o.lib||"/~partytown/")+(o.debug?"debug/":""))[0]&&(s=e.querySelectorAll(\'script[type="text/partytown"]\'),i!=t?i.dispatchEvent(new CustomEvent("pt1",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener("pt0",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||"partytown-sw.js"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener("statechange",(function(t){"activated"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?"script":"iframe"),t||(c.setAttribute("style","display:block;width:0;height:0;border:0;visibility:hidden"),c.setAttribute("aria-hidden",!0)),c.src=a+"partytown-"+(t?"atomics.js?v=0.5.4":"sandbox-sw.html?"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t{if("string"==typeof e)return!(e=>c.test(e))(e)};function l(e,t=""){var n;if(!u(e))return e;if(e.startsWith("./")||e.startsWith("../"))return e;const r=null!=(n=null!=t?t:"")?n:"/";return`${null!=r&&r.endsWith("/")?r.slice(0,-1):r}${e.startsWith("/")?e:`/${e}`}`}const p=e=>null==e?void 0:e.startsWith("/"),f=(e,t)=>"number"==typeof e?e:u(e)?p(e)?function(e){const t=l(e);return t}(e):function(e,t){if(p(e))return e;const n=(0,a.resolve)(e,t);return n}(e,t):e,h=["to","getProps","onClick","onMouseEnter","activeClassName","activeStyle","innerRef","partiallyActive","state","replace","_location"];function d(e){return l(e,"")}const m={activeClassName:r.string,activeStyle:r.object,partiallyActive:r.bool};function g(e){return o.createElement(a.Location,null,(({location:t})=>o.createElement(v,i({},e,{_location:t}))))}class v extends o.Component{constructor(e){super(e),this.defaultGetProps=({isPartiallyCurrent:e,isCurrent:t})=>(this.props.partiallyActive?e:t)?{className:[this.props.className,this.props.activeClassName].filter(Boolean).join(" "),style:i({},this.props.style,this.props.activeStyle)}:null;let t=!1;"undefined"!=typeof window&&window.IntersectionObserver&&(t=!0),this.state={IOSupported:t},this.abortPrefetch=null,this.handleRef=this.handleRef.bind(this)}_prefetch(){let e=window.location.pathname+window.location.search;this.props._location&&this.props._location.pathname&&(e=this.props._location.pathname+this.props._location.search);const t=s(f(this.props.to,e)),n=t.pathname+t.search;if(e!==n)return ___loader.enqueue(n)}componentWillUnmount(){if(!this.io)return;const{instance:e,el:t}=this.io;this.abortPrefetch&&this.abortPrefetch.abort(),e.unobserve(t),e.disconnect()}handleRef(e){this.props.innerRef&&Object.prototype.hasOwnProperty.call(this.props.innerRef,"current")?this.props.innerRef.current=e:this.props.innerRef&&this.props.innerRef(e),this.state.IOSupported&&e&&(this.io=((e,t)=>{const n=new window.IntersectionObserver((n=>{n.forEach((n=>{e===n.target&&t(n.isIntersecting||n.intersectionRatio>0)}))}));return n.observe(e),{instance:n,el:e}})(e,(e=>{e?this.abortPrefetch=this._prefetch():this.abortPrefetch&&this.abortPrefetch.abort()})))}render(){const e=this.props,{to:t,getProps:n=this.defaultGetProps,onClick:r,onMouseEnter:c,state:l,replace:p,_location:d}=e,m=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,h),g=f(t,d.pathname);return u(g)?o.createElement(a.Link,i({to:g,state:l,getProps:n,innerRef:this.handleRef,onMouseEnter:e=>{c&&c(e);const t=s(g);___loader.hovering(t.pathname+t.search)},onClick:e=>{if(r&&r(e),!(0!==e.button||this.props.target||e.defaultPrevented||e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)){e.preventDefault();let t=p;const n=encodeURI(g)===d.pathname;"boolean"!=typeof p&&n&&(t=!0),window.___navigate(g,{state:l,replace:t})}return!0}},m)):o.createElement("a",i({href:g},m))}}v.propTypes=i({},m,{onClick:r.func,to:r.string.isRequired,replace:r.bool,state:r.object});var y=o.forwardRef(((e,t)=>o.createElement(g,i({innerRef:t},e))));const b=(e,t)=>{window.___navigate(f(e,window.location.pathname),t)}},3521:function(e,t,n){"use strict";n.r(t),n.d(t,{Script:function(){return d},ScriptStrategy:function(){return u},collectedScriptsByPage:function(){return s},scriptCache:function(){return f},scriptCallbackCache:function(){return h}});var r=n(7294),o=n(3631);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;ti.get(e)||[],set(e,t){const n=i.get(e)||[];n.push(t),i.set(e,n)},delete(e){i.delete(e)}},c="undefined"!=typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(e){const t=Date.now();return setTimeout((function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})}),1)};var u,l;(l=u||(u={})).postHydrate="post-hydrate",l.idle="idle",l.offMainThread="off-main-thread";const p=new Set(["src","strategy","dangerouslySetInnerHTML","children","onLoad","onError"]),f=new Set,h=new Map;function d(e){return r.createElement(o.Location,null,(()=>r.createElement(m,e)))}function m(e){const{src:t,strategy:n=u.postHydrate}=e||{},{pathname:i}=(0,o.useLocation)();if((0,r.useEffect)((()=>{let t;switch(n){case u.postHydrate:t=g(e);break;case u.idle:c((()=>{t=g(e)}));break;case u.offMainThread:{const t=y(e);s.set(i,t)}}return()=>{const{script:e,loadCallback:n,errorCallback:r}=t||{};n&&(null==e||e.removeEventListener("load",n)),r&&(null==e||e.removeEventListener("error",r)),null==e||e.remove()}}),[]),n===u.offMainThread){const o=v(e),c=y(e);return"undefined"==typeof window&&s.set(i,c),r.createElement("script",o?a({type:"text/partytown","data-strategy":n,crossOrigin:"anonymous"},c,{dangerouslySetInnerHTML:{__html:v(e)}}):a({type:"text/partytown",src:b(t),"data-strategy":n,crossOrigin:"anonymous"},c))}return null}function g(e){const{id:t,src:n,strategy:r=u.postHydrate,onLoad:o,onError:i}=e||{},s=t||n,c=["load","error"],l={load:o,error:i};if(s){for(const e of c)if(null!=l&&l[e]){var p;const t=h.get(s)||{},{callbacks:n=[]}=(null==t?void 0:t[e])||{};var d,m;n.push(null==l?void 0:l[e]),null!=t&&null!=(p=t[e])&&p.event?null==l||null==(d=l[e])||d.call(l,null==t||null==(m=t[e])?void 0:m.event):h.set(s,a({},t,{[e]:{callbacks:n}}))}if(f.has(s))return null}const g=v(e),b=y(e),P=document.createElement("script");t&&(P.id=t),P.dataset.strategy=r;for(const[a,u]of Object.entries(b))P.setAttribute(a,u);g&&(P.textContent=g),n&&(P.src=n);const O={};if(s){for(const e of c){const t=t=>w(t,s,e);P.addEventListener(e,t),O[`${e}Callback`]=t}f.add(s)}return document.body.appendChild(P),{script:P,loadCallback:O.loadCallback,errorCallback:O.errorCallback}}function v(e){const{dangerouslySetInnerHTML:t,children:n=""}=e||{},{__html:r=""}=t||{};return r||n}function y(e){const t={};for(const[n,r]of Object.entries(e))p.has(n)||(t[n]=r);return t}function b(e){if(e)return`/__third-party-proxy?url=${encodeURIComponent(e)}`}function w(e,t,n){const r=h.get(t)||{};for(const a of(null==r||null==(o=r[n])?void 0:o.callbacks)||[]){var o;a(e)}h.set(t,{[n]:{event:e}})}}},function(e){e.O(0,[532,774],(function(){return t=5824,e(e.s=t);var t}));e.O()}]); +//# sourceMappingURL=app-1184d6558bd1537bf382.js.map \ No newline at end of file diff --git a/app-8b87a8d1fc394e048f7e.js.map b/app-1184d6558bd1537bf382.js.map similarity index 99% rename from app-8b87a8d1fc394e048f7e.js.map rename to app-1184d6558bd1537bf382.js.map index 60feaa95..def9cc5b 100644 --- a/app-8b87a8d1fc394e048f7e.js.map +++ b/app-1184d6558bd1537bf382.js.map @@ -1 +1 @@ -{"version":3,"file":"app-8b87a8d1fc394e048f7e.js","mappings":"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","sources":["webpack://ethberlin/./node_modules/@gatsbyjs/reach-router/lib/history.js","webpack://ethberlin/./node_modules/@gatsbyjs/reach-router/lib/utils.js","webpack://ethberlin/./node_modules/gatsby-page-utils/dist/apply-trailing-slash-option.js","webpack://ethberlin/./node_modules/gatsby-react-router-scroll/index.js","webpack://ethberlin/./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack://ethberlin/./node_modules/gatsby-react-router-scroll/session-storage.js","webpack://ethberlin/./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack://ethberlin/./node_modules/gatsby/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js","webpack://ethberlin/./node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js","webpack://ethberlin/./node_modules/gatsby/dist/internal-plugins/partytown/utils/get-forwards.js","webpack://ethberlin/./node_modules/gatsby/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js","webpack://ethberlin/./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack://ethberlin/./.cache/api-runner-browser-plugins.js","webpack://ethberlin/./.cache/api-runner-browser.js","webpack://ethberlin/./.cache/emitter.js","webpack://ethberlin/./node_modules/mitt/dist/mitt.es.js","webpack://ethberlin/./.cache/normalize-page-path.js","webpack://ethberlin/./.cache/find-path.js","webpack://ethberlin/./.cache/static-query.js","webpack://ethberlin/./.cache/gatsby-browser-entry.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://ethberlin/./.cache/prefetch.js","webpack://ethberlin/./.cache/loader.js","webpack://ethberlin/./.cache/head/components/fire-callback-in-effect.js","webpack://ethberlin/./.cache/head/constants.js","webpack://ethberlin/./.cache/head/utils.js","webpack://ethberlin/./.cache/head/head-export-handler-for-browser.js","webpack://ethberlin/./.cache/page-renderer.js","webpack://ethberlin/./.cache/route-announcer-props.js","webpack://ethberlin/./.cache/navigation.js","webpack://ethberlin/./node_modules/shallow-compare/es/index.js","webpack://ethberlin/./.cache/ensure-resources.js","webpack://ethberlin/./.cache/production-app.js","webpack://ethberlin/./.cache/public-page-renderer-prod.js","webpack://ethberlin/./.cache/public-page-renderer.js","webpack://ethberlin/./.cache/react-dom-utils.js","webpack://ethberlin/./.cache/react-lifecycles-compat.js","webpack://ethberlin/./.cache/redirect-utils.js","webpack://ethberlin/./.cache/register-service-worker.js","webpack://ethberlin/./.cache/strip-prefix.js","webpack://ethberlin/./node_modules/gatsby-plugin-manifest/gatsby-browser.js","webpack://ethberlin/./node_modules/gatsby-plugin-manifest/get-manifest-pathname.js","webpack://ethberlin/./node_modules/@mdx-js/react/dist/esm.js","webpack://ethberlin/./node_modules/gatsby-plugin-mdx/context.js","webpack://ethberlin/./node_modules/gatsby-plugin-mdx/loaders/mdx-scopes.js","webpack://ethberlin/./node_modules/gatsby-plugin-mdx/wrap-root-element.js","webpack://ethberlin/./node_modules/gatsby-plugin-mdx/gatsby-browser.js","webpack://ethberlin/./node_modules/gatsby-plugin-mdx/loaders/mdx-components.js","webpack://ethberlin/./node_modules/@gatsbyjs/reach-router/es/lib/utils.js","webpack://ethberlin/./node_modules/@gatsbyjs/reach-router/es/lib/history.js","webpack://ethberlin/./node_modules/@gatsbyjs/reach-router/es/index.js","webpack://ethberlin/./node_modules/invariant/browser.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://ethberlin/./node_modules/@builder.io/partytown/integration/index.cjs","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://ethberlin/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://ethberlin/./node_modules/gatsby-link/dist/index.modern.mjs","webpack://ethberlin/./node_modules/gatsby-script/dist/index.modern.mjs"],"sourcesContent":["\"use strict\";\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexports.globalHistory = globalHistory;\nexports.navigate = navigate;\nexports.createHistory = createHistory;\nexports.createMemorySource = createMemorySource;","\"use strict\";\n\nexports.__esModule = true;\nexports.shallowCompare = exports.validateRedirect = exports.insertParams = exports.resolve = exports.match = exports.pick = exports.startsWith = undefined;\n\nvar _invariant = require(\"invariant\");\n\nvar _invariant2 = _interopRequireDefault(_invariant);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? (0, _invariant2.default)(false, \" dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : (0, _invariant2.default)(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// \n// // instead of\n// \n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexports.startsWith = startsWith;\nexports.pick = pick;\nexports.match = match;\nexports.resolve = resolve;\nexports.insertParams = insertParams;\nexports.validateRedirect = validateRedirect;\nexports.shallowCompare = shallowCompare;","\"use strict\";\n\nexports.__esModule = true;\nexports.applyTrailingSlashOption = void 0;\n\n// TODO(v5): Remove legacy setting and default to \"always\"\nconst applyTrailingSlashOption = (input, option = `legacy`) => {\n const hasHtmlSuffix = input.endsWith(`.html`);\n const hasXmlSuffix = input.endsWith(`.xml`);\n const hasPdfSuffix = input.endsWith(`.pdf`);\n if (input === `/`) return input;\n\n if (hasHtmlSuffix || hasXmlSuffix || hasPdfSuffix) {\n option = `never`;\n }\n\n if (option === `always`) {\n return input.endsWith(`/`) ? input : `${input}/`;\n }\n\n if (option === `never`) {\n return input.endsWith(`/`) ? input.slice(0, -1) : input;\n }\n\n return input;\n};\n\nexports.applyTrailingSlashOption = applyTrailingSlashOption;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContext = void 0;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nexports.ScrollContext = _scrollHandler.ScrollHandler;\n\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\n\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _sessionStorage = require(\"./session-storage\");\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\n\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n\n function ScrollHandler() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n _this._isTicking = false;\n _this._latestKnownScrollY = 0;\n\n _this.scrollListener = function () {\n _this._latestKnownScrollY = window.scrollY;\n\n if (!_this._isTicking) {\n _this._isTicking = true;\n requestAnimationFrame(_this._saveScroll.bind((0, _assertThisInitialized2.default)(_this)));\n }\n };\n\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n\n if (!shouldUpdateScroll) {\n return true;\n } // Hack to allow accessing this._stateStorage.\n\n\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n\n return _this;\n }\n\n var _proto = ScrollHandler.prototype;\n\n _proto._saveScroll = function _saveScroll() {\n var key = this.props.location.key || null;\n\n if (key) {\n this._stateStorage.save(this.props.location, key, this._latestKnownScrollY);\n }\n\n this._isTicking = false;\n };\n\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n } else if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n\n return ScrollHandler;\n}(React.Component);\n\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\n\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n\n var _proto = SessionStorage.prototype;\n\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n\n return 0;\n }\n };\n\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n\n return SessionStorage;\n}();\n\nexports.SessionStorage = SessionStorage;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _react = require(\"react\");\n\nvar _reachRouter = require(\"@gatsbyjs/reach-router\");\n\nfunction useScrollRestoration(identifier) {\n var location = (0, _reachRouter.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)(null);\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, [location.key]);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","\"use strict\";\n\nmodule.exports = Object.assign;\n//# sourceMappingURL=object-assign.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.onInitialClientRender = void 0;\n\nvar _gatsbyScript = require(\"gatsby-script\");\n\nvar _injectPartytownSnippet = require(\"./utils/inject-partytown-snippet\");\n\n// Makes sure off-main-thread scripts are loaded in `gatsby develop`\nconst onInitialClientRender = () => {\n if (process.env.NODE_ENV !== `development`) {\n return;\n }\n\n (0, _injectPartytownSnippet.injectPartytownSnippet)(_gatsbyScript.collectedScriptsByPage.get(window.location.pathname)); // Clear scripts after we've used them to avoid leaky behavior\n\n _gatsbyScript.collectedScriptsByPage.delete(window.location.pathname);\n}; // Client-side navigation (CSR, e.g. Gatsby Link navigations) are broken upstream in Partytown.\n// We need an official API from Partytown for handling re-configuration and on-demand script loading.\n// Until then, `off-main-thread` scripts load only on server-side navigation (SSR).\n// See https://github.com/BuilderIO/partytown/issues/74 for more details.\n\n\nexports.onInitialClientRender = onInitialClientRender;\n//# sourceMappingURL=gatsby-browser.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.getForwards = getForwards;\n\nfunction getForwards(collectedScripts) {\n return collectedScripts === null || collectedScripts === void 0 ? void 0 : collectedScripts.flatMap(script => (script === null || script === void 0 ? void 0 : script.forward) || []);\n}\n//# sourceMappingURL=get-forwards.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.injectPartytownSnippet = injectPartytownSnippet;\n\nvar _integration = require(\"@builder.io/partytown/integration\");\n\nvar _getForwards = require(\"./get-forwards\");\n\n// Adapted from https://github.com/BuilderIO/partytown/blob/main/src/react/snippet.tsx to only include CSR logic\nfunction injectPartytownSnippet(collectedScripts) {\n if (!collectedScripts.length) {\n return;\n }\n\n const existingSnippet = document.querySelector(`script[data-partytown]`);\n const existingSandbox = document.querySelector(`iframe[src*=\"~partytown/partytown-sandbox-sw\"]`);\n\n if (existingSnippet) {\n existingSnippet.remove();\n }\n\n if (existingSandbox) {\n existingSandbox.remove();\n }\n\n const forwards = (0, _getForwards.getForwards)(collectedScripts);\n const snippet = document.createElement(`script`);\n snippet.dataset.partytown = ``;\n snippet.innerHTML = (0, _integration.partytownSnippet)({\n forward: forwards\n });\n document.head.appendChild(snippet);\n}\n//# sourceMappingURL=inject-partytown-snippet.js.map","exports.components = {\n \"component---src-pages-404-jsx\": () => import(\"./../../../src/pages/404.jsx\" /* webpackChunkName: \"component---src-pages-404-jsx\" */),\n \"component---src-pages-art-jsx\": () => import(\"./../../../src/pages/art.jsx\" /* webpackChunkName: \"component---src-pages-art-jsx\" */),\n \"component---src-pages-code-of-conduct-jsx\": () => import(\"./../../../src/pages/code-of-conduct.jsx\" /* webpackChunkName: \"component---src-pages-code-of-conduct-jsx\" */),\n \"component---src-pages-contact-jsx\": () => import(\"./../../../src/pages/contact.jsx\" /* webpackChunkName: \"component---src-pages-contact-jsx\" */),\n \"component---src-pages-contributors-jsx\": () => import(\"./../../../src/pages/contributors.jsx\" /* webpackChunkName: \"component---src-pages-contributors-jsx\" */),\n \"component---src-pages-decentralization-jsx\": () => import(\"./../../../src/pages/decentralization.jsx\" /* webpackChunkName: \"component---src-pages-decentralization-jsx\" */),\n \"component---src-pages-experiences-jsx\": () => import(\"./../../../src/pages/experiences.jsx\" /* webpackChunkName: \"component---src-pages-experiences-jsx\" */),\n \"component---src-pages-face-idont-jsx\": () => import(\"./../../../src/pages/face-idont.jsx\" /* webpackChunkName: \"component---src-pages-face-idont-jsx\" */),\n \"component---src-pages-hacker-manual-jsx\": () => import(\"./../../../src/pages/hacker-manual.jsx\" /* webpackChunkName: \"component---src-pages-hacker-manual-jsx\" */),\n \"component---src-pages-index-jsx\": () => import(\"./../../../src/pages/index.jsx\" /* webpackChunkName: \"component---src-pages-index-jsx\" */),\n \"component---src-pages-manifesto-jsx\": () => import(\"./../../../src/pages/manifesto.jsx\" /* webpackChunkName: \"component---src-pages-manifesto-jsx\" */),\n \"component---src-pages-privacy-policy-jsx\": () => import(\"./../../../src/pages/privacy-policy.jsx\" /* webpackChunkName: \"component---src-pages-privacy-policy-jsx\" */),\n \"component---src-pages-schedule-jsx\": () => import(\"./../../../src/pages/schedule.jsx\" /* webpackChunkName: \"component---src-pages-schedule-jsx\" */),\n \"component---src-pages-venue-jsx\": () => import(\"./../../../src/pages/venue.jsx\" /* webpackChunkName: \"component---src-pages-venue-jsx\" */)\n}\n\n","module.exports = [{\n plugin: require('../node_modules/gatsby-plugin-manifest/gatsby-browser.js'),\n options: {\"plugins\":[],\"icon\":\"src/assets/icons/favicon-32x32.png\",\"icons\":[{\"src\":\"/src/assets/icons/android-chrome-192x192.png\",\"sizes\":\"192x192\",\"type\":\"image/png\"}],\"legacy\":true,\"theme_color_in_head\":true,\"cache_busting_mode\":\"query\",\"crossOrigin\":\"anonymous\",\"include_favicon\":true,\"cacheDigest\":\"d49cf8e0928082a766c984d9ed2ec98e\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-mdx/gatsby-browser.js'),\n options: {\"plugins\":[],\"extensions\":[\".mdx\"],\"defaultLayouts\":{},\"gatsbyRemarkPlugins\":[],\"lessBabel\":false,\"remarkPlugins\":[],\"rehypePlugins\":[],\"mediaTypes\":[\"text/markdown\",\"text/x-markdown\"],\"root\":\"/home/runner/work/4/4\",\"commonmark\":false,\"JSFrontmatterEngine\":false,\"engines\":{}},\n },{\n plugin: require('../gatsby-browser.js'),\n options: {\"plugins\":[]},\n },{\n plugin: require('../node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","const plugins = require(`./api-runner-browser-plugins`)\nconst { getResourceURLsForPathname, loadPage, loadPageSync } =\n require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","export default pathAndSearch => {\n if (pathAndSearch === undefined) {\n return pathAndSearch\n }\n let [path, search = ``] = pathAndSearch.split(`?`)\n if (search) {\n search = `?` + search\n }\n\n if (path === `/`) {\n return `/` + search\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1) + search\n }\n return path + search\n}\n","import { pick } from \"@gatsbyjs/reach-router/lib/utils\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n let newRawPathname = rawPathname\n const queryIndex = rawPathname.indexOf(`?`)\n\n if (queryIndex !== -1) {\n const [path, qs] = rawPathname.split(`?`)\n newRawPathname = `${path}?${encodeURIComponent(qs)}`\n }\n\n const pathname = decodeURIComponent(newRawPathname)\n\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(\n pathname,\n decodeURIComponent(__BASE_PATH__)\n )\n // Remove any hashfragment\n .split(`#`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n const redirect = maybeGetBrowserRedirect(rawPathname)\n if (redirect) {\n return findPath(redirect.toPath)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nconst StaticQueryContext = React.createContext({})\nlet StaticQueryServerContext = null\nif (React.createServerContext) {\n StaticQueryServerContext = React.createServerContext(`StaticQuery`, {})\n}\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n \n {finalData && render(finalData)}\n {!finalData &&
Loading (StaticQuery)
}\n
\n )\n}\n\n// TODO(v5): Remove completely\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n return (\n \n {staticQueryData => (\n \n )}\n \n )\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n // TODO(v5): Remove since we require React >= 18\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n let context\n\n // Can we get a better check here?\n if (\n StaticQueryServerContext &&\n Object.keys(StaticQueryServerContext._currentValue).length\n ) {\n context = React.useContext(StaticQueryServerContext)\n } else {\n context = React.useContext(StaticQueryContext)\n }\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nexport {\n StaticQuery,\n StaticQueryContext,\n useStaticQuery,\n StaticQueryServerContext,\n}\n","import loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport { default as PageRenderer } from \"./public-page-renderer\"\nexport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nexport {\n default as Link,\n withPrefix,\n withAssetPrefix,\n navigate,\n parsePath,\n} from \"gatsby-link\"\n\nexport { graphql, prefetchPathname }\nexport {\n StaticQuery,\n StaticQueryContext,\n useStaticQuery,\n StaticQueryServerContext,\n} from \"./static-query\"\n\nexport * from \"gatsby-script\"\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","import { createFromReadableStream } from \"react-server-dom-webpack\"\nimport prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = rawPath => {\n const [path, maybeSearch] = rawPath.split(`?`)\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json${\n maybeSearch ? `?${maybeSearch}` : ``\n }`\n}\n\nfunction doFetch(url, method = `GET`) {\n return new Promise(resolve => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\n// Regex that matches common search crawlers\nconst BOT_REGEX = /bot|crawler|spider|crawling/i\n\nconst toPageResources = (pageData, component = null, head) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n getServerDataError: pageData.getServerDataError,\n }\n\n return {\n component,\n head,\n json: pageData.result,\n page,\n }\n}\n\nfunction waitForResponse(response) {\n return new Promise(resolve => {\n try {\n const result = response.readRoot()\n resolve(result)\n } catch (err) {\n if (\n Object.hasOwnProperty.call(err, `_response`) &&\n Object.hasOwnProperty.call(err, `_status`)\n ) {\n setTimeout(() => {\n waitForResponse(response).then(resolve)\n }, 200)\n } else {\n throw err\n }\n }\n })\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = {}\n this.pageDataDb = new Map()\n this.partialHydrationDb = new Map()\n this.isPrefetchQueueRunning = false\n this.prefetchQueued = []\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n const maybeSearch = pagePath.split(`?`)[1]\n if (maybeSearch && !jsonPayload.path.includes(maybeSearch)) {\n jsonPayload.path += `?${maybeSearch}`\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n fetchPartialHydrationJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath).replace(`.json`, `-rsc.json`)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: responseText,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n const pageData = this.pageDataDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.partialHydrationDb.has(pagePath)) {\n const pageData = this.partialHydrationDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPartialHydrationJson({ pagePath }).then(pageData => {\n this.partialHydrationDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !page.payload.stale) {\n if (page.error) {\n return {\n error: page.error,\n status: page.status,\n }\n }\n\n return Promise.resolve(page.payload)\n }\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n let inFlightPromise\n if (global.hasPartialHydration) {\n inFlightPromise = Promise.all([\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n this.loadPartialHydrationJson(pagePath),\n ]).then(([appData, { payload: pageData }, result]) => {\n if (result.status === PageResourceStatus.Error) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n const finalResult = {}\n\n // In develop we have separate chunks for template and Head components\n // to enable HMR (fast refresh requires single exports).\n // In production we have shared chunk with both exports. Double loadComponent here\n // will be deduped by webpack runtime resulting in single request and single module\n // being loaded for both `component` and `head`.\n const componentChunkPromise = this.loadComponent(\n pageData.componentChunkName,\n `head`\n ).then(head => {\n finalResult.createdAt = new Date()\n finalResult.status = PageResourceStatus.Success\n if (result.notFound === true) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: appData\n ? appData.webpackCompilationHash\n : ``,\n })\n\n const pageResources = toPageResources(pageData, null, head)\n\n if (result.payload && typeof result.payload === `string`) {\n pageResources.partialHydration = result.payload\n\n const readableStream = new ReadableStream({\n start(controller) {\n const te = new TextEncoder()\n controller.enqueue(te.encode(result.payload))\n },\n pull(controller) {\n // close on next read when queue is empty\n controller.close()\n },\n cancel() {},\n })\n\n return waitForResponse(\n createFromReadableStream(readableStream)\n ).then(result => {\n pageResources.partialHydration = result\n\n return pageResources\n })\n }\n\n // undefined if final result is an error\n return pageResources\n })\n\n // Necessary for head component\n const staticQueryBatchPromise = Promise.all(\n (pageData.staticQueryHashes || []).map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n )\n .then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n .catch(() => {\n throw new Error(\n `We couldn't load \"${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json\"`\n )\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return (\n Promise.all([componentChunkPromise, staticQueryBatchPromise])\n .then(([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = {\n ...pageResources,\n staticQueryResults: staticQueryResults,\n }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n if (finalResult.error) {\n return {\n error: finalResult.error,\n status: finalResult.status,\n }\n }\n\n return payload\n })\n // when static-query fail to load we throw a better error\n .catch(err => {\n return {\n error: err,\n status: PageResourceStatus.Error,\n }\n })\n )\n })\n } else {\n inFlightPromise = Promise.all([\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]).then(allData => {\n const result = allData[1]\n if (result.status === PageResourceStatus.Error) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = result.payload\n const { componentChunkName, staticQueryHashes = [] } = pageData\n\n const finalResult = {}\n\n // In develop we have separate chunks for template and Head components\n // to enable HMR (fast refresh requires single exports).\n // In production we have shared chunk with both exports. Double loadComponent here\n // will be deduped by webpack runtime resulting in single request and single module\n // being loaded for both `component` and `head`.\n const componentChunkPromise = Promise.all([\n this.loadComponent(componentChunkName),\n this.loadComponent(componentChunkName, `head`),\n ]).then(([component, head]) => {\n finalResult.createdAt = new Date()\n let pageResources\n if (!component || component instanceof Error) {\n finalResult.status = PageResourceStatus.Error\n finalResult.error = component\n } else {\n finalResult.status = PageResourceStatus.Success\n if (result.notFound === true) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: allData[0]\n ? allData[0].webpackCompilationHash\n : ``,\n })\n pageResources = toPageResources(pageData, component, head)\n }\n // undefined if final result is an error\n return pageResources\n })\n\n const staticQueryBatchPromise = Promise.all(\n staticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n )\n .then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n .catch(() => {\n throw new Error(\n `We couldn't load \"${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json\"`\n )\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return (\n Promise.all([componentChunkPromise, staticQueryBatchPromise])\n .then(([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n if (finalResult.error) {\n return {\n error: finalResult.error,\n status: finalResult.status,\n }\n }\n\n return payload\n })\n // when static-query fail to load we throw a better error\n .catch(err => {\n return {\n error: err,\n status: PageResourceStatus.Error,\n }\n })\n )\n })\n }\n\n inFlightPromise\n .then(() => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if the page does not exists in cache\n loadPageSync(rawPath, options = {}) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath)\n\n if (pageData.payload) {\n return pageData.payload\n }\n\n if (options?.withErrorDetails) {\n return {\n error: pageData.error,\n status: pageData.status,\n }\n }\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Don't prefetch if this is a crawler bot\n if (navigator.userAgent && BOT_REGEX.test(navigator.userAgent)) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return {\n then: resolve => resolve(false),\n abort: () => {},\n }\n }\n if (this.prefetchTriggered.has(pagePath)) {\n return {\n then: resolve => resolve(true),\n abort: () => {},\n }\n }\n\n const defer = {\n resolve: null,\n reject: null,\n promise: null,\n }\n defer.promise = new Promise((resolve, reject) => {\n defer.resolve = resolve\n defer.reject = reject\n })\n this.prefetchQueued.push([pagePath, defer])\n const abortC = new AbortController()\n abortC.signal.addEventListener(`abort`, () => {\n const index = this.prefetchQueued.findIndex(([p]) => p === pagePath)\n // remove from the queue\n if (index !== -1) {\n this.prefetchQueued.splice(index, 1)\n }\n })\n\n if (!this.isPrefetchQueueRunning) {\n this.isPrefetchQueueRunning = true\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n }\n\n return {\n then: (resolve, reject) => defer.promise.then(resolve, reject),\n abort: abortC.abort.bind(abortC),\n }\n }\n\n _processNextPrefetchBatch() {\n const idleCallback = window.requestIdleCallback || (cb => setTimeout(cb, 0))\n\n idleCallback(() => {\n const toPrefetch = this.prefetchQueued.splice(0, 4)\n const prefetches = Promise.all(\n toPrefetch.map(([pagePath, dPromise]) => {\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return dPromise.resolve(false)\n }\n\n return this.doPrefetch(findPath(pagePath)).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n\n dPromise.resolve(true)\n })\n })\n )\n\n if (this.prefetchQueued.length) {\n prefetches.then(() => {\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n })\n } else {\n this.isPrefetchQueueRunning = false\n }\n })\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n\n if (global.hasPartialHydration) {\n return Promise.all([\n prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n ),\n prefetchHelper(pageDataUrl.replace(`.json`, `-rsc.json`), {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPartialHydrationJson(pagePath)\n ),\n ])\n } else {\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n }\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return !page || page.notFound\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths, pageData) {\n const loadComponent = (chunkName, exportType = `components`) => {\n if (!global.hasPartialHydration) {\n exportType = `components`\n }\n\n if (!asyncRequires[exportType][chunkName]) {\n throw new Error(\n `We couldn't find the correct component chunk with the name \"${chunkName}\"`\n )\n }\n\n return (\n asyncRequires[exportType][chunkName]()\n // loader will handle the case when component is error\n .catch(err => err)\n )\n }\n\n super(loadComponent, matchPaths)\n\n if (pageData) {\n this.pageDataDb.set(findPath(pageData.path), {\n pagePath: pageData.path,\n payload: pageData,\n status: `success`,\n })\n }\n }\n\n doPrefetch(pagePath) {\n return super.doPrefetch(pagePath).then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(() => pageData)\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n return super.loadPartialHydrationJson(rawPath).then(data => {\n if (data.notFound) {\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n // TODO add deprecation to v4 so people use withErrorDetails and then we can remove in v5 and change default behaviour\n loadPageSync: (rawPath, options = {}) =>\n instance.loadPageSync(rawPath, options),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n\nexport function getStaticQueryResults() {\n if (instance) {\n return instance.staticQueryDb\n } else {\n return {}\n }\n}\n","import { useEffect } from \"react\"\n\n/*\n * Calls callback in an effect and renders children\n */\nexport function FireCallbackInEffect({ children, callback }) {\n useEffect(() => {\n callback()\n })\n\n return children\n}\n","export const VALID_NODE_NAMES = [\n `link`,\n `meta`,\n `style`,\n `title`,\n `base`,\n `noscript`,\n `script`,\n]\n","import { VALID_NODE_NAMES } from \"./constants\"\n\n/**\n * Filter the props coming from a page down to just the ones that are relevant for head.\n * This e.g. filters out properties that are undefined during SSR.\n */\nexport function filterHeadProps(input) {\n return {\n location: {\n pathname: input.location.pathname,\n },\n params: input.params,\n data: input.data || {},\n pageContext: input.pageContext,\n }\n}\n\n/**\n * Throw error if Head export is not a valid\n */\nexport function headExportValidator(head) {\n if (typeof head !== `function`)\n throw new Error(\n `Expected \"Head\" export to be a function got \"${typeof head}\".`\n )\n}\n\n/**\n * Warn once for same messsage\n */\nlet warnOnce = _ => {}\nif (process.env.NODE_ENV !== `production`) {\n const warnings = new Set()\n warnOnce = msg => {\n if (!warnings.has(msg)) {\n console.warn(msg)\n }\n warnings.add(msg)\n }\n}\n\n/**\n * Warn for invalid tags in head.\n * @param {string} tagName\n */\nexport function warnForInvalidTags(tagName) {\n if (process.env.NODE_ENV !== `production`) {\n const warning = `<${tagName}> is not a valid head element. Please use one of the following: ${VALID_NODE_NAMES.join(\n `, `\n )}`\n\n warnOnce(warning)\n }\n}\n\n/**\n * When a `nonce` is present on an element, browsers such as Chrome and Firefox strip it out of the\n * actual HTML attributes for security reasons *when the element is added to the document*. Thus,\n * given two equivalent elements that have nonces, `Element,isEqualNode()` will return false if one\n * of those elements gets added to the document. Although the `element.nonce` property will be the\n * same for both elements, the one that was added to the document will return an empty string for\n * its nonce HTML attribute value.\n *\n * This custom `isEqualNode()` function therefore removes the nonce value from the `newTag` before\n * comparing it to `oldTag`, restoring it afterwards.\n *\n * For more information, see:\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1211471#c12\n */\nexport function isEqualNode(oldTag, newTag) {\n if (oldTag instanceof HTMLElement && newTag instanceof HTMLElement) {\n const nonce = newTag.getAttribute(`nonce`)\n // Only strip the nonce if `oldTag` has had it stripped. An element's nonce attribute will not\n // be stripped if there is no content security policy response header that includes a nonce.\n if (nonce && !oldTag.getAttribute(`nonce`)) {\n const cloneTag = newTag.cloneNode(true)\n cloneTag.setAttribute(`nonce`, ``)\n cloneTag.nonce = nonce\n return nonce === oldTag.nonce && oldTag.isEqualNode(cloneTag)\n }\n }\n\n return oldTag.isEqualNode(newTag)\n}\n\nexport function diffNodes({ oldNodes, newNodes, onStale, onNew }) {\n for (const existingHeadElement of oldNodes) {\n const indexInNewNodes = newNodes.findIndex(e =>\n isEqualNode(e, existingHeadElement)\n )\n\n if (indexInNewNodes === -1) {\n onStale(existingHeadElement)\n } else {\n // this node is re-created as-is, so we keep old node, and remove it from list of new nodes (as we handled it already here)\n newNodes.splice(indexInNewNodes, 1)\n }\n }\n\n // remaing new nodes didn't have matching old node, so need to be added\n for (const newNode of newNodes) {\n onNew(newNode)\n }\n}\n","import React from \"react\"\nimport { useEffect } from \"react\"\nimport { StaticQueryContext } from \"gatsby\"\nimport { LocationProvider } from \"@gatsbyjs/reach-router\"\nimport { reactDOMUtils } from \"../react-dom-utils\"\nimport { FireCallbackInEffect } from \"./components/fire-callback-in-effect\"\nimport { VALID_NODE_NAMES } from \"./constants\"\nimport {\n headExportValidator,\n filterHeadProps,\n warnForInvalidTags,\n diffNodes,\n} from \"./utils\"\n\nconst hiddenRoot = document.createElement(`div`)\n\nconst removePrevHeadElements = () => {\n const prevHeadNodes = document.querySelectorAll(`[data-gatsby-head]`)\n\n for (const node of prevHeadNodes) {\n node.parentNode.removeChild(node)\n }\n}\n\nconst onHeadRendered = () => {\n const validHeadNodes = []\n\n const seenIds = new Map()\n for (const node of hiddenRoot.childNodes) {\n const nodeName = node.nodeName.toLowerCase()\n const id = node.attributes?.id?.value\n\n if (!VALID_NODE_NAMES.includes(nodeName)) {\n warnForInvalidTags(nodeName)\n } else {\n let clonedNode = node.cloneNode(true)\n clonedNode.setAttribute(`data-gatsby-head`, true)\n\n // Create an element for scripts to make script work\n if (clonedNode.nodeName.toLowerCase() === `script`) {\n const script = document.createElement(`script`)\n for (const attr of clonedNode.attributes) {\n script.setAttribute(attr.name, attr.value)\n }\n script.innerHTML = clonedNode.innerHTML\n clonedNode = script\n }\n\n if (id) {\n if (!seenIds.has(id)) {\n validHeadNodes.push(clonedNode)\n seenIds.set(id, validHeadNodes.length - 1)\n } else {\n const indexOfPreviouslyInsertedNode = seenIds.get(id)\n validHeadNodes[indexOfPreviouslyInsertedNode].parentNode?.removeChild(\n validHeadNodes[indexOfPreviouslyInsertedNode]\n )\n validHeadNodes[indexOfPreviouslyInsertedNode] = clonedNode\n }\n } else {\n validHeadNodes.push(clonedNode)\n }\n }\n }\n\n const existingHeadElements = document.querySelectorAll(`[data-gatsby-head]`)\n\n if (existingHeadElements.length === 0) {\n document.head.append(...validHeadNodes)\n return\n }\n\n const newHeadNodes = []\n diffNodes({\n oldNodes: existingHeadElements,\n newNodes: validHeadNodes,\n onStale: node => node.parentNode.removeChild(node),\n onNew: node => newHeadNodes.push(node),\n })\n\n document.head.append(...newHeadNodes)\n}\n\nif (process.env.BUILD_STAGE === `develop`) {\n // We set up observer to be able to regenerate after react-refresh\n // updates our hidden element.\n const observer = new MutationObserver(onHeadRendered)\n observer.observe(hiddenRoot, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n })\n}\n\nexport function headHandlerForBrowser({\n pageComponent,\n staticQueryResults,\n pageComponentProps,\n}) {\n useEffect(() => {\n if (pageComponent?.Head) {\n headExportValidator(pageComponent.Head)\n\n const { render } = reactDOMUtils()\n\n const Head = pageComponent.Head\n\n render(\n // just a hack to call the callback after react has done first render\n // Note: In dev, we call onHeadRendered twice( in FireCallbackInEffect and after mutualution observer dectects initail render into hiddenRoot) this is for hot reloading\n // In Prod we only call onHeadRendered in FireCallbackInEffect to render to head\n \n \n \n \n \n \n ,\n hiddenRoot\n )\n }\n\n return () => {\n removePrevHeadElements()\n }\n })\n}\n","import React, { Suspense, createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\nimport { headHandlerForBrowser } from \"./head/head-export-handler-for-browser\"\n\n// Renders page\nfunction PageRenderer(props) {\n const pageComponentProps = {\n ...props,\n params: {\n ...grabMatchParams(props.location.pathname),\n ...props.pageResources.json.pageContext.__params,\n },\n }\n\n const preferDefault = m => (m && m.default) || m\n\n let pageElement\n if (props.pageResources.partialHydration) {\n pageElement = props.pageResources.partialHydration\n } else {\n pageElement = createElement(preferDefault(props.pageResources.component), {\n ...pageComponentProps,\n key: props.path || props.pageResources.page.path,\n })\n }\n\n const pageComponent = props.pageResources.head\n\n headHandlerForBrowser({\n pageComponent,\n staticQueryResults: props.pageResources.staticQueryResults,\n pageComponentProps,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n {\n element: pageElement,\n props: pageComponentProps,\n },\n pageElement,\n ({ result }) => {\n return { element: result, props: pageComponentProps }\n }\n ).pop()\n\n return wrappedPage\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport { navigate as reachNavigate } from \"@gatsbyjs/reach-router\"\nimport { globalHistory } from \"@gatsbyjs/reach-router/lib/history\"\nimport { parsePath } from \"gatsby-link\"\n\nfunction maybeRedirect(pathname) {\n const redirect = maybeGetBrowserRedirect(pathname)\n const { hash, search } = window.location\n\n if (redirect != null) {\n window.___replace(redirect.toPath + search + hash)\n return true\n } else {\n return false\n }\n}\n\n// Catch unhandled chunk loading errors and force a restart of the app.\nlet nextRoute = ``\n\nwindow.addEventListener(`unhandledrejection`, event => {\n if (/loading chunk \\d* failed./i.test(event.reason)) {\n if (nextRoute) {\n window.location.pathname = nextRoute\n }\n }\n})\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n nextRoute = location.pathname\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n emitter.emit(`onRouteUpdate`, { location, prevLocation })\n }\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n const { pathname, search, hash } = parsePath(to)\n const redirect = maybeGetBrowserRedirect(pathname)\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath + search + hash\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname + search + hash\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname + search).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n window.location = pathname + search + hash\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => [\n 0,\n // FIXME this is actually a big code smell, we should fix this\n // eslint-disable-next-line @babel/no-invalid-this\n this._stateStorage.read(args, args.key),\n ],\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return
\n }\n}\n\nconst compareLocationProps = (prevLocation, nextLocation) => {\n if (prevLocation.href !== nextLocation.href) {\n return true\n }\n\n if (prevLocation?.state?.key !== nextLocation?.state?.key) {\n return true\n }\n\n return false\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n shouldComponentUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onPreRouteUpdate(this.props.location, prevProps.location)\n return true\n }\n return false\n }\n\n componentDidUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n render() {\n return (\n \n {this.props.children}\n \n \n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates, maybeGetBrowserRedirect }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources:\n pageResources ||\n loader.loadPageSync(location.pathname + location.search, {\n withErrorDetails: true,\n }),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(\n location.pathname + location.search,\n {\n withErrorDetails: true,\n }\n )\n\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n if (\n process.env.BUILD_STAGE === `develop` &&\n nextState.pageResources.stale\n ) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (\n process.env.NODE_ENV !== `production` &&\n (!this.state.pageResources ||\n this.state.pageResources.status === PageResourceStatus.Error)\n ) {\n const message = `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n if (this.state.pageResources?.error) {\n console.error(message)\n throw this.state.pageResources.error\n }\n\n throw new Error(message)\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport { Router, navigate, Location, BaseContext } from \"@gatsbyjs/reach-router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport { StaticQueryContext } from \"gatsby\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n getStaticQueryResults,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\nimport { reactDOMUtils } from \"./react-dom-utils\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths, window.pageData)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nconst { render, hydrate } = reactDOMUtils()\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\nconst reloadStorageKey = `gatsby-reload-compilation-hash-match`\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).filter(Boolean).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n \n \n \n )\n\n const DataContext = React.createContext({})\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n \n {({ location }) => (\n \n {({ pageResources, location }) => {\n if (pageResources.partialHydration) {\n return (\n \n {children}\n \n )\n } else {\n const staticQueryResults = getStaticQueryResults()\n return (\n \n \n {children}\n \n \n )\n }\n }}\n \n )}\n \n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n \n {({ pageResources, location }) => (\n \n \n \n \n
\n \n \n )}\n \n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). SSR\n // page paths might include search params, while SSG and DSG won't.\n // If page path include search params we also compare query params.\n // But only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !==\n browserLoc.pathname + (pagePath.includes(`?`) ? browserLoc.search : ``) &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath.match(/^\\/(404|500)(\\/?|.html)$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(\n __BASE_PATH__ +\n pagePath +\n (!pagePath.includes(`?`) ? browserLoc.search : ``) +\n browserLoc.hash,\n {\n replace: true,\n }\n )\n }\n\n // It's possible that sessionStorage can throw an exception if access is not granted, see https://github.com/gatsbyjs/gatsby/issues/34512\n const getSessionStorage = () => {\n try {\n return sessionStorage\n } catch {\n return null\n }\n }\n\n publicLoader.loadPage(browserLoc.pathname + browserLoc.search).then(page => {\n const sessionStorage = getSessionStorage()\n\n if (\n page?.page?.webpackCompilationHash &&\n page.page.webpackCompilationHash !== window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n // We have not matching html + js (inlined `window.___webpackCompilationHash`)\n // with our data (coming from `app-data.json` file). This can cause issues such as\n // errors trying to load static queries (as list of static queries is inside `page-data`\n // which might not match to currently loaded `.js` scripts).\n // We are making attempt to reload if hashes don't match, but we also have to handle case\n // when reload doesn't fix it (possibly broken deploy) so we don't end up in infinite reload loop\n if (sessionStorage) {\n const isReloaded = sessionStorage.getItem(reloadStorageKey) === `1`\n\n if (!isReloaded) {\n sessionStorage.setItem(reloadStorageKey, `1`)\n window.location.reload(true)\n return\n }\n }\n }\n\n if (sessionStorage) {\n sessionStorage.removeItem(reloadStorageKey)\n }\n\n if (!page || page.status === PageResourceStatus.Error) {\n const message = `page resources for ${browserLoc.pathname} not found. Not rendering React`\n\n // if the chunk throws an error we want to capture the real error\n // This should help with https://github.com/gatsbyjs/gatsby/issues/19618\n if (page && page.error) {\n console.error(message)\n throw page.error\n }\n\n throw new Error(message)\n }\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: },\n ,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = function App() {\n const onClientEntryRanRef = React.useRef(false)\n\n React.useEffect(() => {\n if (!onClientEntryRanRef.current) {\n onClientEntryRanRef.current = true\n if (performance.mark) {\n performance.mark(`onInitialClientRender`)\n }\n\n apiRunner(`onInitialClientRender`)\n }\n }, [])\n\n return {SiteRoot}\n }\n\n const focusEl = document.getElementById(`gatsby-focus-wrapper`)\n\n // Client only pages have any empty body so we just do a normal\n // render to avoid React complaining about hydration mis-matches.\n let defaultRenderer = render\n if (focusEl && focusEl.children.length) {\n defaultRenderer = hydrate\n }\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n defaultRenderer\n )[0]\n\n function runRender() {\n const rootElement =\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : null\n\n renderer(, rootElement)\n }\n\n // https://github.com/madrobby/zepto/blob/b5ed8d607f67724788ec9ff492be297f64d47dfc/src/zepto.js#L439-L450\n // TODO remove IE 10 support\n const doc = document\n if (\n doc.readyState === `complete` ||\n (doc.readyState !== `loading` && !doc.documentElement.doScroll)\n ) {\n setTimeout(function () {\n runRender()\n }, 0)\n } else {\n const handler = function () {\n doc.removeEventListener(`DOMContentLoaded`, handler, false)\n window.removeEventListener(`load`, handler, false)\n\n runRender()\n }\n\n doc.addEventListener(`DOMContentLoaded`, handler, false)\n window.addEventListener(`load`, handler, false)\n }\n\n return\n })\n})\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport loader from \"./loader\"\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.loadPageSync(location.pathname)\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","/* global HAS_REACT_18 */\n\nconst map = new WeakMap()\n\n/**\n * Since react 18, render and hydrate moved to react-dom/client\n * returns correct hydrate and render function based on installed react-dom version\n */\n\nexport function reactDOMUtils() {\n let render\n let hydrate\n\n if (HAS_REACT_18) {\n const reactDomClient = require(`react-dom/client`)\n\n render = (Component, el) => {\n let root = map.get(el)\n if (!root) {\n map.set(el, (root = reactDomClient.createRoot(el)))\n }\n root.render(Component)\n }\n\n hydrate = (Component, el) => reactDomClient.hydrateRoot(el, Component)\n } else {\n const reactDomClient = require(`react-dom`)\n render = reactDomClient.render\n hydrate = reactDomClient.hydrate\n }\n\n return { render, hydrate }\n}\n","exports.polyfill = Component => Component\n","import redirects from \"./redirects.json\"\n\n// Convert to a map for faster lookup in maybeRedirect()\n\nconst redirectMap = new Map()\nconst redirectIgnoreCaseMap = new Map()\n\nredirects.forEach(redirect => {\n if (redirect.ignoreCase) {\n redirectIgnoreCaseMap.set(redirect.fromPath, redirect)\n } else {\n redirectMap.set(redirect.fromPath, redirect)\n }\n})\n\nexport function maybeGetBrowserRedirect(pathname) {\n let redirect = redirectMap.get(pathname)\n if (!redirect) {\n redirect = redirectIgnoreCaseMap.get(pathname.toLowerCase())\n }\n return redirect\n}\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","/* global __MANIFEST_PLUGIN_HAS_LOCALISATION__ */\nimport { withPrefix } from \"gatsby\";\nimport getManifestForPathname from \"./get-manifest-pathname\"; // when we don't have localisation in our manifest, we tree shake everything away\n\nexport const onRouteUpdate = function onRouteUpdate({\n location\n}, pluginOptions) {\n if (__MANIFEST_PLUGIN_HAS_LOCALISATION__) {\n const {\n localize\n } = pluginOptions;\n const manifestFilename = getManifestForPathname(location.pathname, localize, true);\n const manifestEl = document.head.querySelector(`link[rel=\"manifest\"]`);\n\n if (manifestEl) {\n manifestEl.setAttribute(`href`, withPrefix(manifestFilename));\n }\n }\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _gatsby = require(\"gatsby\");\n\n/**\n * Get a manifest filename depending on localized pathname\n *\n * @param {string} pathname\n * @param {Array<{start_url: string, lang: string}>} localizedManifests\n * @param {boolean} shouldPrependPathPrefix\n * @return string\n */\nvar _default = (pathname, localizedManifests, shouldPrependPathPrefix = false) => {\n const defaultFilename = `manifest.webmanifest`;\n\n if (!Array.isArray(localizedManifests)) {\n return defaultFilename;\n }\n\n const localizedManifest = localizedManifests.find(app => {\n let startUrl = app.start_url;\n\n if (shouldPrependPathPrefix) {\n startUrl = (0, _gatsby.withPrefix)(startUrl);\n }\n\n return pathname.startsWith(startUrl);\n });\n\n if (!localizedManifest) {\n return defaultFilename;\n }\n\n return `manifest_${localizedManifest.lang}.webmanifest`;\n};\n\nexports.default = _default;","import React from 'react';\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isFunction = function isFunction(obj) {\n return typeof obj === 'function';\n};\n\nvar MDXContext = /*#__PURE__*/React.createContext({});\nvar withMDXComponents = function withMDXComponents(Component) {\n return function (props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n components: allComponents\n }));\n };\n};\nvar useMDXComponents = function useMDXComponents(components) {\n var contextComponents = React.useContext(MDXContext);\n var allComponents = contextComponents;\n\n if (components) {\n allComponents = isFunction(components) ? components(contextComponents) : _objectSpread2(_objectSpread2({}, contextComponents), components);\n }\n\n return allComponents;\n};\nvar MDXProvider = function MDXProvider(props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(MDXContext.Provider, {\n value: allComponents\n }, props.children);\n};\n\nvar TYPE_PROP_NAME = 'mdxType';\nvar DEFAULTS = {\n inlineCode: 'code',\n wrapper: function wrapper(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, {}, children);\n }\n};\nvar MDXCreateElement = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var propComponents = props.components,\n mdxType = props.mdxType,\n originalType = props.originalType,\n parentName = props.parentName,\n etc = _objectWithoutProperties(props, [\"components\", \"mdxType\", \"originalType\", \"parentName\"]);\n\n var components = useMDXComponents(propComponents);\n var type = mdxType;\n var Component = components[\"\".concat(parentName, \".\").concat(type)] || components[type] || DEFAULTS[type] || originalType;\n\n if (propComponents) {\n return /*#__PURE__*/React.createElement(Component, _objectSpread2(_objectSpread2({\n ref: ref\n }, etc), {}, {\n components: propComponents\n }));\n }\n\n return /*#__PURE__*/React.createElement(Component, _objectSpread2({\n ref: ref\n }, etc));\n});\nMDXCreateElement.displayName = 'MDXCreateElement';\nfunction createElement (type, props) {\n var args = arguments;\n var mdxType = props && props.mdxType;\n\n if (typeof type === 'string' || mdxType) {\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = MDXCreateElement;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.originalType = type;\n newProps[TYPE_PROP_NAME] = typeof type === 'string' ? type : mdxType;\n createElementArgArray[1] = newProps;\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n }\n\n return React.createElement.apply(null, createElementArgArray);\n }\n\n return React.createElement.apply(null, args);\n}\n\nexport { MDXContext, MDXProvider, createElement as mdx, useMDXComponents, withMDXComponents };\n","import React, { createContext, useContext } from \"react\"\n\nconst GatsbyMDXScopeContext = createContext({})\n\nexport const useMDXScope = scope => {\n const contextScope = useContext(GatsbyMDXScopeContext)\n return scope || contextScope\n}\n\nexport const MDXScopeProvider = ({ __mdxScope, children }) =>\n React.createElement(\n GatsbyMDXScopeContext.Provider,\n { value: __mdxScope },\n children\n )\n","export default\n Object.assign({}, )\n ","import React from \"react\"\nimport { MDXProvider, withMDXComponents } from \"@mdx-js/react\"\nimport { MDXScopeProvider } from \"./context\"\n\n/**\n * so, this import is weird right?\n *\n * # What it looks like:\n * we're importing a webpack loader directly into our runtime bundle\n *\n * # What it's actually doing:\n * We configure the `mdx-components` loader in gatsby-node's\n * `onCreateWebpackConfig`. The configuration sets the loader to handle its\n * own file, so if we import `./loaders/mdx-components`, the `mdx-components`\n * loader handles loading itself.\n *\n * # Why does this work?\n * The loader doesn't use the file argument to itself and instead returns\n * a generated file that includes the `gatsby-config` mdxPlugins wrapped in\n * require() statements. This results in the `mdxPlugins` being required\n * and available to the code after this import.\n *\n * # Have a better solution to this?\n * Submit a PR\n */\nimport { plugins as mdxPlugins } from \"./loaders/mdx-components\"\nimport scopeContexts from \"./loaders/mdx-scopes\"\n\nconst componentsAndGuards = {}\n\nconst componentFromGuards = arr =>\n function GatsbyMDXComponentFinder(props) {\n const { Component } = arr.find(({ guard }) => (guard ? guard(props) : true))\n return \n }\n\nmdxPlugins.forEach(({ guards = {}, components }) => {\n Object.entries(components).forEach(([componentName, Component]) => {\n if (componentsAndGuards[componentName]) {\n componentsAndGuards.push({ guard: guards[componentName], Component })\n } else {\n componentsAndGuards[componentName] = [\n { guard: guards[componentName], Component },\n ]\n }\n })\n})\n\nconst components = Object.entries(componentsAndGuards)\n .map(([name, arr]) => {\n return {\n [name]: componentFromGuards(\n arr.concat({ guard: undefined, Component: name })\n ),\n }\n })\n .reduce((acc, obj) => {\n return { ...acc, ...obj }\n }, {})\n\n// merge any components in wrapRootElement above this wrapRoot\nconst MDXConsumer = withMDXComponents(\n ({ components: componentsFromContext, children }) => (\n \n \n {children}\n \n \n )\n)\n\nconst WrapRootElement = ({ element }) => {element}\n\nexport default WrapRootElement\n","import wrap from \"./wrap-root-element\"\nexport const wrapRootElement = wrap\n","module.exports = {plugins: []}","import invariant from \"invariant\";\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : invariant(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// \n// // instead of\n// \n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexport { startsWith, pick, match, resolve, insertParams, validateRedirect, shallowCompare };","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexport { globalHistory, navigate, createHistory, createMemorySource };","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/* eslint-disable jsx-a11y/anchor-has-content */\nimport React, { useContext, createContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"invariant\";\nimport { polyfill } from \"react-lifecycles-compat\";\nimport { startsWith, pick, resolve, match, insertParams, validateRedirect, shallowCompare } from \"./lib/utils\";\nimport { globalHistory, navigate, createHistory, createMemorySource } from \"./lib/history\";\n\n////////////////////////////////////////////////////////////////////////////////\n\nvar createNamedContext = function createNamedContext(name, defaultValue) {\n var Ctx = createContext(defaultValue);\n Ctx.displayName = name;\n return Ctx;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Location Context/Provider\nvar LocationContext = createNamedContext(\"Location\");\n\n// sets up a listener if there isn't one already so apps don't need to be\n// wrapped in some top level provider\nvar Location = function Location(_ref) {\n var children = _ref.children;\n return React.createElement(\n LocationContext.Consumer,\n null,\n function (context) {\n return context ? children(context) : React.createElement(\n LocationProvider,\n null,\n children\n );\n }\n );\n};\n\nvar LocationProvider = function (_React$Component) {\n _inherits(LocationProvider, _React$Component);\n\n function LocationProvider() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, LocationProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n context: _this.getContext(),\n refs: { unlisten: null }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n LocationProvider.prototype.getContext = function getContext() {\n var _props$history = this.props.history,\n navigate = _props$history.navigate,\n location = _props$history.location;\n\n return { navigate: navigate, location: location };\n };\n\n LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {\n if (isRedirect(error)) {\n var _navigate = this.props.history.navigate;\n\n _navigate(error.uri, { replace: true });\n } else {\n throw error;\n }\n };\n\n LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevState.context.location !== this.state.context.location) {\n this.props.history._onTransitionComplete();\n }\n };\n\n LocationProvider.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n var refs = this.state.refs,\n history = this.props.history;\n\n history._onTransitionComplete();\n refs.unlisten = history.listen(function () {\n Promise.resolve().then(function () {\n // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306\n requestAnimationFrame(function () {\n if (!_this2.unmounted) {\n _this2.setState(function () {\n return { context: _this2.getContext() };\n });\n }\n });\n });\n });\n };\n\n LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {\n var refs = this.state.refs;\n\n this.unmounted = true;\n refs.unlisten();\n };\n\n LocationProvider.prototype.render = function render() {\n var context = this.state.context,\n children = this.props.children;\n\n return React.createElement(\n LocationContext.Provider,\n { value: context },\n typeof children === \"function\" ? children(context) : children || null\n );\n };\n\n return LocationProvider;\n}(React.Component);\n\n////////////////////////////////////////////////////////////////////////////////\n\n\nLocationProvider.defaultProps = {\n history: globalHistory\n};\nprocess.env.NODE_ENV !== \"production\" ? LocationProvider.propTypes = {\n history: PropTypes.object.isRequired\n} : void 0;\nvar ServerLocation = function ServerLocation(_ref2) {\n var url = _ref2.url,\n children = _ref2.children;\n\n var searchIndex = url.indexOf(\"?\");\n var searchExists = searchIndex > -1;\n var pathname = void 0;\n var search = \"\";\n var hash = \"\";\n\n if (searchExists) {\n pathname = url.substring(0, searchIndex);\n search = url.substring(searchIndex);\n } else {\n pathname = url;\n }\n\n return React.createElement(\n LocationContext.Provider,\n {\n value: {\n location: {\n pathname: pathname,\n search: search,\n hash: hash\n },\n navigate: function navigate() {\n throw new Error(\"You can't call navigate on the server.\");\n }\n }\n },\n children\n );\n};\n////////////////////////////////////////////////////////////////////////////////\n// Sets baseuri and basepath for nested routers and links\nvar BaseContext = createNamedContext(\"Base\", {\n baseuri: \"/\",\n basepath: \"/\",\n navigate: globalHistory.navigate\n});\n\n////////////////////////////////////////////////////////////////////////////////\n// The main event, welcome to the show everybody.\nvar Router = function Router(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (baseContext) {\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RouterImpl, _extends({}, baseContext, locationContext, props));\n }\n );\n }\n );\n};\n\nvar RouterImpl = function (_React$PureComponent) {\n _inherits(RouterImpl, _React$PureComponent);\n\n function RouterImpl() {\n _classCallCheck(this, RouterImpl);\n\n return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));\n }\n\n RouterImpl.prototype.render = function render() {\n var _props = this.props,\n location = _props.location,\n _navigate2 = _props.navigate,\n basepath = _props.basepath,\n primary = _props.primary,\n children = _props.children,\n baseuri = _props.baseuri,\n _props$component = _props.component,\n component = _props$component === undefined ? \"div\" : _props$component,\n domProps = _objectWithoutProperties(_props, [\"location\", \"navigate\", \"basepath\", \"primary\", \"children\", \"baseuri\", \"component\"]);\n\n var routes = React.Children.toArray(children).reduce(function (array, child) {\n var routes = createRoute(basepath)(child);\n return array.concat(routes);\n }, []);\n var pathname = location.pathname;\n\n\n var match = pick(routes, pathname);\n\n if (match) {\n var params = match.params,\n uri = match.uri,\n route = match.route,\n element = match.route.value;\n\n // remove the /* from the end for child routes relative paths\n\n basepath = route.default ? basepath : route.path.replace(/\\*$/, \"\");\n\n var props = _extends({}, params, {\n uri: uri,\n location: location,\n navigate: function navigate(to, options) {\n return _navigate2(resolve(to, uri), options);\n }\n });\n\n var clone = React.cloneElement(element, props, element.props.children ? React.createElement(\n Router,\n { location: location, primary: primary },\n element.props.children\n ) : undefined);\n\n // using 'div' for < 16.3 support\n var FocusWrapper = primary ? FocusHandler : component;\n // don't pass any props to 'div'\n var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;\n\n return React.createElement(\n BaseContext.Provider,\n {\n value: { baseuri: uri, basepath: basepath, navigate: props.navigate }\n },\n React.createElement(\n FocusWrapper,\n wrapperProps,\n clone\n )\n );\n } else {\n // Not sure if we want this, would require index routes at every level\n // warning(\n // false,\n // `\\n\\nNothing matched:\\n\\t${\n // location.pathname\n // }\\n\\nPaths checked: \\n\\t${routes\n // .map(route => route.path)\n // .join(\n // \"\\n\\t\"\n // )}\\n\\nTo get rid of this warning, add a default NotFound component as child of Router:\n // \\n\\tlet NotFound = () =>
Not Found!
\n // \\n\\t\\n\\t \\n\\t {/* ... */}\\n\\t`\n // );\n return null;\n }\n };\n\n return RouterImpl;\n}(React.PureComponent);\n\nRouterImpl.defaultProps = {\n primary: true\n};\n\n\nvar FocusContext = createNamedContext(\"Focus\");\n\nvar FocusHandler = function FocusHandler(_ref3) {\n var uri = _ref3.uri,\n location = _ref3.location,\n component = _ref3.component,\n domProps = _objectWithoutProperties(_ref3, [\"uri\", \"location\", \"component\"]);\n\n return React.createElement(\n FocusContext.Consumer,\n null,\n function (requestFocus) {\n return React.createElement(FocusHandlerImpl, _extends({}, domProps, {\n component: component,\n requestFocus: requestFocus,\n uri: uri,\n location: location\n }));\n }\n );\n};\n\n// don't focus on initial render\nvar initialRender = true;\nvar focusHandlerCount = 0;\n\nvar FocusHandlerImpl = function (_React$Component2) {\n _inherits(FocusHandlerImpl, _React$Component2);\n\n function FocusHandlerImpl() {\n var _temp2, _this4, _ret2;\n\n _classCallCheck(this, FocusHandlerImpl);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {\n if (!_this4.state.shouldFocus && node) {\n node.focus();\n }\n }, _temp2), _possibleConstructorReturn(_this4, _ret2);\n }\n\n FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n var initial = prevState.uri == null;\n if (initial) {\n return _extends({\n shouldFocus: true\n }, nextProps);\n } else {\n var myURIChanged = nextProps.uri !== prevState.uri;\n var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;\n return _extends({\n shouldFocus: myURIChanged || navigatedUpToMe\n }, nextProps);\n }\n };\n\n FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {\n focusHandlerCount++;\n this.focus();\n };\n\n FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {\n focusHandlerCount--;\n if (focusHandlerCount === 0) {\n initialRender = true;\n }\n };\n\n FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevProps.location !== this.props.location && this.state.shouldFocus) {\n this.focus();\n }\n };\n\n FocusHandlerImpl.prototype.focus = function focus() {\n if (process.env.NODE_ENV === \"test\") {\n // getting cannot read property focus of null in the tests\n // and that bit of global `initialRender` state causes problems\n // should probably figure it out!\n return;\n }\n\n var requestFocus = this.props.requestFocus;\n\n\n if (requestFocus) {\n requestFocus(this.node);\n } else {\n if (initialRender) {\n initialRender = false;\n } else if (this.node) {\n // React polyfills [autofocus] and it fires earlier than cDM,\n // so we were stealing focus away, this line prevents that.\n if (!this.node.contains(document.activeElement)) {\n this.node.focus();\n }\n }\n }\n };\n\n FocusHandlerImpl.prototype.render = function render() {\n var _this5 = this;\n\n var _props2 = this.props,\n children = _props2.children,\n style = _props2.style,\n requestFocus = _props2.requestFocus,\n _props2$component = _props2.component,\n Comp = _props2$component === undefined ? \"div\" : _props2$component,\n uri = _props2.uri,\n location = _props2.location,\n domProps = _objectWithoutProperties(_props2, [\"children\", \"style\", \"requestFocus\", \"component\", \"uri\", \"location\"]);\n\n return React.createElement(\n Comp,\n _extends({\n style: _extends({ outline: \"none\" }, style),\n tabIndex: \"-1\",\n ref: function ref(n) {\n return _this5.node = n;\n }\n }, domProps),\n React.createElement(\n FocusContext.Provider,\n { value: this.requestFocus },\n this.props.children\n )\n );\n };\n\n return FocusHandlerImpl;\n}(React.Component);\n\npolyfill(FocusHandlerImpl);\n\nvar k = function k() {};\n\n////////////////////////////////////////////////////////////////////////////////\nvar forwardRef = React.forwardRef;\n\nif (typeof forwardRef === \"undefined\") {\n forwardRef = function forwardRef(C) {\n return C;\n };\n}\n\nvar Link = forwardRef(function (_ref4, ref) {\n var innerRef = _ref4.innerRef,\n props = _objectWithoutProperties(_ref4, [\"innerRef\"]);\n\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref5) {\n var basepath = _ref5.basepath,\n baseuri = _ref5.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref6) {\n var location = _ref6.location,\n navigate = _ref6.navigate;\n\n var to = props.to,\n state = props.state,\n replace = props.replace,\n _props$getProps = props.getProps,\n getProps = _props$getProps === undefined ? k : _props$getProps,\n anchorProps = _objectWithoutProperties(props, [\"to\", \"state\", \"replace\", \"getProps\"]);\n\n var href = resolve(to, baseuri);\n var encodedHref = encodeURI(href);\n var isCurrent = location.pathname === encodedHref;\n var isPartiallyCurrent = startsWith(location.pathname, encodedHref);\n\n return React.createElement(\"a\", _extends({\n ref: ref || innerRef,\n \"aria-current\": isCurrent ? \"page\" : undefined\n }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {\n href: href,\n onClick: function onClick(event) {\n if (anchorProps.onClick) anchorProps.onClick(event);\n if (shouldNavigate(event)) {\n event.preventDefault();\n var shouldReplace = replace;\n if (typeof replace !== \"boolean\" && isCurrent) {\n var _location$state = _extends({}, location.state),\n key = _location$state.key,\n restState = _objectWithoutProperties(_location$state, [\"key\"]);\n\n shouldReplace = shallowCompare(_extends({}, state), restState);\n }\n navigate(href, {\n state: state,\n replace: shouldReplace\n });\n }\n }\n }));\n }\n );\n }\n );\n});\n\nLink.displayName = \"Link\";\n\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes = {\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nfunction RedirectRequest(uri) {\n this.uri = uri;\n}\n\nvar isRedirect = function isRedirect(o) {\n return o instanceof RedirectRequest;\n};\n\nvar redirectTo = function redirectTo(to) {\n throw new RedirectRequest(to);\n};\n\nvar RedirectImpl = function (_React$Component3) {\n _inherits(RedirectImpl, _React$Component3);\n\n function RedirectImpl() {\n _classCallCheck(this, RedirectImpl);\n\n return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));\n }\n\n // Support React < 16 with this hook\n RedirectImpl.prototype.componentDidMount = function componentDidMount() {\n var _props3 = this.props,\n navigate = _props3.navigate,\n to = _props3.to,\n from = _props3.from,\n _props3$replace = _props3.replace,\n replace = _props3$replace === undefined ? true : _props3$replace,\n state = _props3.state,\n noThrow = _props3.noThrow,\n baseuri = _props3.baseuri,\n props = _objectWithoutProperties(_props3, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n Promise.resolve().then(function () {\n var resolvedTo = resolve(to, baseuri);\n navigate(insertParams(resolvedTo, props), { replace: replace, state: state });\n });\n };\n\n RedirectImpl.prototype.render = function render() {\n var _props4 = this.props,\n navigate = _props4.navigate,\n to = _props4.to,\n from = _props4.from,\n replace = _props4.replace,\n state = _props4.state,\n noThrow = _props4.noThrow,\n baseuri = _props4.baseuri,\n props = _objectWithoutProperties(_props4, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n var resolvedTo = resolve(to, baseuri);\n if (!noThrow) redirectTo(insertParams(resolvedTo, props));\n return null;\n };\n\n return RedirectImpl;\n}(React.Component);\n\nvar Redirect = function Redirect(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref7) {\n var baseuri = _ref7.baseuri;\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));\n }\n );\n }\n );\n};\n\nprocess.env.NODE_ENV !== \"production\" ? Redirect.propTypes = {\n from: PropTypes.string,\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nvar Match = function Match(_ref8) {\n var path = _ref8.path,\n children = _ref8.children;\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref9) {\n var baseuri = _ref9.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref10) {\n var navigate = _ref10.navigate,\n location = _ref10.location;\n\n var resolvedPath = resolve(path, baseuri);\n var result = match(resolvedPath, location.pathname);\n return children({\n navigate: navigate,\n location: location,\n match: result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null\n });\n }\n );\n }\n );\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Hooks\n\nvar useLocation = function useLocation() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.location;\n};\n\nvar useNavigate = function useNavigate() {\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useNavigate hook was used but a BaseContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.navigate;\n};\n\nvar useParams = function useParams() {\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var results = match(context.basepath, location.pathname);\n\n return results ? results.params : null;\n};\n\nvar useMatch = function useMatch(path) {\n if (!path) {\n throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");\n }\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var resolvedPath = resolve(path, context.baseuri);\n var result = match(resolvedPath, location.pathname);\n return result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar stripSlashes = function stripSlashes(str) {\n return str.replace(/(^\\/+|\\/+$)/g, \"\");\n};\n\nvar createRoute = function createRoute(basepath) {\n return function (element) {\n if (!element) {\n return null;\n }\n\n if (element.type === React.Fragment && element.props.children) {\n return React.Children.map(element.props.children, createRoute(basepath));\n }\n !(element.props.path || element.props.default || element.type === Redirect) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \": Children of must have a `path` or `default` prop, or be a ``. None found on element type `\" + element.type + \"`\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && (!element.props.from || !element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" requires both \\\"from\\\" and \\\"to\\\" props when inside a .\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && !validateRedirect(element.props.from, element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.\") : invariant(false) : void 0;\n\n if (element.props.default) {\n return { value: element, default: true };\n }\n\n var elementPath = element.type === Redirect ? element.props.from : element.props.path;\n\n var path = elementPath === \"/\" ? basepath : stripSlashes(basepath) + \"/\" + stripSlashes(elementPath);\n\n return {\n value: element,\n default: element.props.default,\n path: element.props.children ? stripSlashes(path) + \"/*\" : path\n };\n };\n};\n\nvar shouldNavigate = function shouldNavigate(event) {\n return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n};\n\n////////////////////////////////////////////////////////////////////////\nexport { Link, Location, LocationProvider, Match, Redirect, Router, ServerLocation, createHistory, createMemorySource, isRedirect, navigate, redirectTo, globalHistory, match as matchPath, useLocation, useNavigate, useParams, useMatch, resolve , BaseContext };","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inheritsLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst PartytownSnippet = \"/* Partytown 0.5.4 - MIT builder.io */\\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\\\"/\\\"==(a=(o.lib||\\\"/~partytown/\\\")+(o.debug?\\\"debug/\\\":\\\"\\\"))[0]&&(s=e.querySelectorAll('script[type=\\\"text/partytown\\\"]'),i!=t?i.dispatchEvent(new CustomEvent(\\\"pt1\\\",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener(\\\"pt0\\\",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\\\"partytown-sw.js\\\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\\\"statechange\\\",(function(t){\\\"activated\\\"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?\\\"script\\\":\\\"iframe\\\"),t||(c.setAttribute(\\\"style\\\",\\\"display:block;width:0;height:0;border:0;visibility:hidden\\\"),c.setAttribute(\\\"aria-hidden\\\",!0)),c.src=a+\\\"partytown-\\\"+(t?\\\"atomics.js?v=0.5.4\\\":\\\"sandbox-sw.html?\\\"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t {\n const { forward = [], ...filteredConfig } = config || {};\n const configStr = JSON.stringify(filteredConfig, (k, v) => {\n if (typeof v === 'function') {\n v = String(v);\n if (v.startsWith(k + '(')) {\n v = 'function ' + v;\n }\n }\n return v;\n });\n return [\n `!(function(w,p,f,c){`,\n Object.keys(filteredConfig).length > 0\n ? `c=w[p]=Object.assign(w[p]||{},${configStr});`\n : `c=w[p]=w[p]||{};`,\n `c[f]=(c[f]||[])`,\n forward.length > 0 ? `.concat(${JSON.stringify(forward)})` : ``,\n `})(window,'partytown','forward');`,\n snippetCode,\n ].join('');\n};\n\n/**\n * The `type` attribute for Partytown scripts, which does two things:\n *\n * 1. Prevents the `
\ No newline at end of file +*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}
\ No newline at end of file diff --git a/chunk-map.json b/chunk-map.json index 3efe1160..ce507a06 100644 --- a/chunk-map.json +++ b/chunk-map.json @@ -1 +1 @@ -{"app":["/app-8b87a8d1fc394e048f7e.js"],"component---src-pages-404-jsx":["/component---src-pages-404-jsx-4cf060a07c68caa1c140.js"],"component---src-pages-art-jsx":["/component---src-pages-art-jsx-bac09a056aef3d37c859.js"],"component---src-pages-code-of-conduct-jsx":["/component---src-pages-code-of-conduct-jsx-ea3e54fb583953316f82.js"],"component---src-pages-contact-jsx":["/component---src-pages-contact-jsx-eeed4a6218b292a16537.js"],"component---src-pages-contributors-jsx":["/component---src-pages-contributors-jsx-1a2ae9776f3d500d55c4.js"],"component---src-pages-decentralization-jsx":["/component---src-pages-decentralization-jsx-47e1d053a6c933ee77f8.js"],"component---src-pages-experiences-jsx":["/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js"],"component---src-pages-face-idont-jsx":["/component---src-pages-face-idont-jsx-e16b1875fd7d2c16a88b.js"],"component---src-pages-hacker-manual-jsx":["/component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js"],"component---src-pages-index-jsx":["/component---src-pages-index-jsx-e63b726eb73e105f64dd.js"],"component---src-pages-manifesto-jsx":["/component---src-pages-manifesto-jsx-9d110170a4ca367f1585.js"],"component---src-pages-privacy-policy-jsx":["/component---src-pages-privacy-policy-jsx-03d26a735c5b91a6f8cd.js"],"component---src-pages-schedule-jsx":["/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js"],"component---src-pages-venue-jsx":["/component---src-pages-venue-jsx-278bea4b22ef9c09629f.js"]} \ No newline at end of file +{"app":["/app-1184d6558bd1537bf382.js"],"component---src-pages-404-jsx":["/component---src-pages-404-jsx-4cf060a07c68caa1c140.js"],"component---src-pages-art-jsx":["/component---src-pages-art-jsx-8d84780042c3b69fcf49.js"],"component---src-pages-code-of-conduct-jsx":["/component---src-pages-code-of-conduct-jsx-ea3e54fb583953316f82.js"],"component---src-pages-contact-jsx":["/component---src-pages-contact-jsx-eeed4a6218b292a16537.js"],"component---src-pages-contributors-jsx":["/component---src-pages-contributors-jsx-1a2ae9776f3d500d55c4.js"],"component---src-pages-decentralization-jsx":["/component---src-pages-decentralization-jsx-47e1d053a6c933ee77f8.js"],"component---src-pages-experiences-jsx":["/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js"],"component---src-pages-face-idont-jsx":["/component---src-pages-face-idont-jsx-e16b1875fd7d2c16a88b.js"],"component---src-pages-hacker-manual-jsx":["/component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js"],"component---src-pages-index-jsx":["/component---src-pages-index-jsx-e63b726eb73e105f64dd.js"],"component---src-pages-manifesto-jsx":["/component---src-pages-manifesto-jsx-9d110170a4ca367f1585.js"],"component---src-pages-privacy-policy-jsx":["/component---src-pages-privacy-policy-jsx-03d26a735c5b91a6f8cd.js"],"component---src-pages-schedule-jsx":["/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js"],"component---src-pages-venue-jsx":["/component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js"]} \ No newline at end of file diff --git a/code-of-conduct/index.html b/code-of-conduct/index.html index 5a531915..65dc9a31 100644 --- a/code-of-conduct/index.html +++ b/code-of-conduct/index.html @@ -60,4 +60,4 @@ /* ! tailwindcss v3.1.6 | MIT License | https://tailwindcss.com -*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}

CODE <<O<F CONDUCT

\ No newline at end of file +*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}@font-face{font-family:OCR-A;font-weight:400;src:url(/static/OCR-AStd-Regular-69ad6aa98a96f9b4d4c94875380fa8a7.ttf)}@font-face{font-family:BundesSans;font-weight:400;src:url(/static/BundesSans-Regular-1d0b4fe7a450b459126be27d3b39d6f6.ttf)}@font-face{font-family:DotPassport;font-weight:400;src:url(/static/dot-9da5bc1ec1f769f458e8e31efb535c1d.ttf)}@font-face{font-family:DotCapital;font-weight:400;src:url(/static/dotCapital-f425dde8229adecc363ea0f57ef225e9.ttf)}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/static/google-icons-479dcfb8ff6270576e715b3e57769f82.woff2) format("woff2")}.material-symbols-outlined{word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;display:inline-block;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;letter-spacing:normal;line-height:0;text-transform:none;white-space:nowrap}h1{font-size:1.25rem;line-height:1.75rem}@media (min-width:640px){h1{font-size:1.875rem;line-height:2.25rem}}h2{font-size:1.5rem;line-height:2rem}p,quote{margin-bottom:1.5rem}quote{--tw-border-opacity:1;border-left-color:rgb(229 231 235/var(--tw-border-opacity));border-left-width:4px;display:block;font-style:italic;margin-left:2rem;margin-top:1.5rem;padding-left:1rem}a:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}a{cursor:pointer}li{list-style-position:inside;list-style-type:disc;margin-bottom:.25rem;margin-left:1rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.-top-1{top:-.25rem}.-left-1{left:-.25rem}.-bottom-10{bottom:-2.5rem}.-right-10{right:-2.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.-z-50{z-index:-50}.z-30{z-index:30}.m-0{margin:0}.m-auto{margin:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-0{margin-bottom:0;margin-top:0}.my-9{margin-bottom:2.25rem;margin-top:2.25rem}.mt-8{margin-top:2rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mr-0\.5{margin-right:.125rem}.ml-1{margin-left:.25rem}.mr-0{margin-right:0}.mt-6{margin-top:1.5rem}.mt-2{margin-top:.5rem}.mr-1{margin-right:.25rem}.ml-4{margin-left:1rem}.mb-1{margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-\[2px\]{margin-right:2px}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mr-2{margin-right:.5rem}.mb-4{margin-bottom:1rem}.ml-6{margin-left:1.5rem}.-mb-4{margin-bottom:-1rem}.-mt-5{margin-top:-1.25rem}.ml-8{margin-left:2rem}.-mt-2{margin-top:-.5rem}.mr-3{margin-right:.75rem}.ml-3{margin-left:.75rem}.ml-12{margin-left:3rem}.mb-16{margin-bottom:4rem}.mt-12{margin-top:3rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-auto{margin-top:auto}.mr-8{margin-right:2rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-32{height:8rem}.h-4{height:1rem}.h-56{height:14rem}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.min-h-full{min-height:100%}.w-48{width:12rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-20{width:5rem}.w-8{width:2rem}.w-auto{width:auto}.w-10{width:2.5rem}.w-56{width:14rem}.w-72{width:18rem}.w-screen{width:100vw}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-4xl{max-width:56rem}.max-w-\[100rem\]{max-width:100rem}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.origin-center{transform-origin:center}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.-rotate-12{--tw-rotate:-12deg}.-rotate-12,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-12{gap:3rem}.gap-2{gap:.5rem}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-berlin-red{--tw-border-opacity:1;border-color:rgb(230 91 84/var(--tw-border-opacity))}.bg-berlin-red{--tw-bg-opacity:1;background-color:rgb(230 91 84/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-berlin-yellow{--tw-bg-opacity:1;background-color:rgb(255 210 0/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-8{padding:2rem}.p-4{padding:1rem}.p-2{padding:.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-justify{text-align:justify}.align-middle{vertical-align:middle}.font-ocra{font-family:OCR-A,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-dotpassport{font-family:DotPassport,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-bundessans{font-family:BundesSans,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-\[72pt\]{font-size:72pt}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1rem\]{font-size:1rem}.text-\[0\.5rem\]{font-size:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\.91rem\]{font-size:.91rem}.text-\[4px\]{font-size:4px}.text-\[2rem\]{font-size:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-3{line-height:.75rem}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.tracking-wider{letter-spacing:.05em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-berlin-red,.text-secondary{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-95{opacity:.95}.opacity-40{opacity:.4}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-25{opacity:.25}.opacity-\[0\.15\]{opacity:.15}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow,.shadow-inner{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.blur{--tw-blur:blur(8px)}.blur,.brightness-90{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-90{--tw-brightness:brightness(.9)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.textbox{background-color:hsla(0,0%,100%,.65);padding:1.5rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;margin:0;min-height:100vh;overscroll-behavior-x:contain;position:relative}body:before{background-color:hsla(43,69%,85%,.4);background-image:url(/static/bg-6009e07927cfe786619ed93c97ee3f62.png);background-repeat:repeat-y;background-size:100% auto;bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0;z-index:-1}.mouse{border:3px solid #000;border-radius:32px;height:60px;position:relative;width:32px;.scrollWheel{animation:scroll 2s linear infinite;background:#000;border-radius:1px;height:20px;left:0;margin:0 auto;position:absolute;right:0;top:10px;transform:scaleY(0);width:2px}}@keyframes scroll{0%{transform:scaleY(0);transform-origin:top}25%{transform:scaleY(1);transform-origin:top}26%{transform-origin:bottom}50%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.decorate-links a{color:#e65b54;text-decoration:underline}.blink{animation:blinker 1s step-start infinite}.fake-bold{font-weight:400;letter-spacing:1px;text-shadow:1px 0 0 currentColor}.fake-delete{text-decoration:line-through}.fade-in-left{opacity:1;visibility:visible}.fade-in-left,.fade-out-left{transition:opacity .5s,visibility .5s}.fade-out-left{opacity:0;transform:translate(-13rem);visibility:hidden}.fade-in-right{opacity:1;transform:translateX(0);visibility:visible}.fade-in-right,.fade-out-right{transition:opacity .5s,visibility .5s}.fade-out-right{opacity:0;transform:translate(13rem);visibility:hidden}.light-up{animation:light-up-animation 2s ease infinite}@keyframes light-up-animation{0%,to{opacity:80%}50%{opacity:30%}}.light-up-delayed{animation:light-up-animation 2s ease infinite;animation-delay:1s}@keyframes flickerAnimation{0%{opacity:1}11%{opacity:.7}25%{opacity:.1}29%{opacity:.6}40%{opacity:0,1}50%{opacity:0}72%{opacity:.66}80%{opacity:.92}90%{opacity:.6}to{opacity:1}}.animate-flicker{animation:flickerAnimation 1.5s ease}@keyframes pulse{50%{opacity:.2}}.animate-pulse-faster{animation:pulse 1.25s ease-in-out infinite}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-opacity-70:hover{--tw-bg-opacity:0.7}.hover\:text-berlin-red:hover{--tw-text-opacity:1;color:rgb(230 91 84/var(--tw-text-opacity))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.hover\:opacity-0:hover{opacity:0}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-110:hover{--tw-brightness:brightness(1.1)}.hover\:brightness-105:hover,.hover\:brightness-110:hover{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:brightness-105:hover{--tw-brightness:brightness(1.05)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:mr-12{margin-right:3rem}.sm\:ml-8{margin-left:2rem}.sm\:mr-8{margin-right:2rem}.sm\:ml-72{margin-left:18rem}.sm\:mt-16{margin-top:4rem}.sm\:mr-6{margin-right:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:h-64{height:16rem}.md\:flex-row{flex-direction:row}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.lg\:px-32{padding-left:8rem;padding-right:8rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1280px){.xl\:ml-8{margin-left:2rem}.xl\:w-2\/3{width:66.666667%}.xl\:flex-row-reverse{flex-direction:row-reverse}.xl\:px-48{padding-left:12rem;padding-right:12rem}.xl\:text-\[6px\]{font-size:6px}.xl\:opacity-50{opacity:.5}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:rgba(0,0,0,.2);--rc-drag-bar-size:6px;--rc-border-color:hsla(0,0%,100%,.7);--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);height:var(--rc-drag-handle-size);position:absolute;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:var(--rc-drag-handle-mobile-size);width:var(--rc-drag-handle-mobile-size)}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:5px;height:5px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.slider:hover{opacity:1}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider::-moz-range-thumb{background:#e65b54;border-radius:50%;cursor:pointer;height:25px;width:25px}.slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #e65b54}.ReactModal__Overlay{opacity:0;transition:opacity 500 ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.yard0{clip-path:polygon(76.5% 15%,86.2% 10.5%,89% 58%,87.2% 58%,87.2% 73.5%,85% 73.5%,85% 97.5%,83% 97.5%,83% 73%,80.5% 73%,80.5% 69.5%,76.5% 69.5%)}.nodeCafe,.yard0{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.nodeCafe{clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%)}.yard1{clip-path:polygon(57% 42.5%,68% 42.5%,68% 71%,65% 71%,65% 95%,62% 95%,62% 71%,57% 71%)}.restaurant,.yard1{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.restaurant{clip-path:polygon(57% 27%,76.5% 15%,76.5% 71%,68% 71%,68% 43%,57% 43%)}.yard2{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(33% 47.5%,53.8% 28.5%,53.8% 65%,34.5% 65%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.lexis{clip-path:polygon(48.5% 33%,57% 24.5%,57% 95.5%,48.5% 95.5%)}.giftShop,.lexis{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.giftShop{clip-path:polygon(14% 67.5%,21% 61.5%,21.5% 68.5%,28.5% 61.5%,29.5% 71%,32.5% 71%,32.5% 97%,14% 97%)}.main-enterence{clip-path:polygon(79% 88%,89% 88%,89% 100%,79% 100%)}.main-enterence,.registration{animation:blinker 1s linear infinite;background-color:red;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.registration{clip-path:polygon(91% 88%,100% 88%,100% 100%,91% 100%)}.xrRoom{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(95.5% 56%,99.3% 56%,99.3% 79%,95.5% 79%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}@keyframes blinker{50%{opacity:0}}.mckinsey{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(0 95%,0 80%,21% 60%,21.5% 67%,28.5% 62%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-first-floor:hover{cursor:pointer;opacity:.8}.library{animation:blinker 1s linear infinite;background-color:#000;clip-path:polygon(86.5% 10%,96% 5%,99.5% 58%,89% 58%);left:0;opacity:.9;top:0}.else,.library{height:100%;position:absolute;width:100%}.else{background-color:#90ee90;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);opacity:.5}.else:hover{cursor:pointer;opacity:.8}.community-space-second-floor{animation:blinker 2s cubic-bezier(.4,0,.6,1) infinite;background-color:red;clip-path:polygon(29% 70.5%,36.5% 61.5%,37.5% 70.5%,56.5% 70.5%,56.5% 32%,60.5% 29%,60.5% 94%,51% 94%,51% 78%,44% 78%,44% 81.5%,29% 81%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.community-space-second-floor:hover{cursor:pointer;opacity:.8}.grace{background-color:#ff8c00;clip-path:polygon(33% 81%,35.5% 81%,35.5% 94%,33% 94%);height:100%;opacity:.5;position:absolute;width:100%}.grace:hover{cursor:pointer;opacity:.8}.mercury{background-color:darkred;clip-path:polygon(35.5% 81%,38% 81%,38% 94%,35.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.mercury:hover{cursor:pointer;opacity:.8}.kiefholz{background-color:#7cfc00;clip-path:polygon(91.5% 60%,96.5% 60%,96.5% 94%,91.5% 94%);height:100%;opacity:.5;position:absolute;width:100%}.kiefholz:hover{cursor:pointer;opacity:.8}.meeting-room-1-second-floor{background-color:#ffb6c1;clip-path:polygon(69.5% 38%,73% 38%,73% 45.5%,69.5% 45.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-1-second-floor:hover{cursor:pointer;opacity:.8}.meeting-room-2-second-floor{background-color:#6b8e23;clip-path:polygon(69.5% 45.5%,73% 45.5%,73% 53.5%,69.5% 53.5%);height:100%;opacity:.5;position:absolute;width:100%}.meeting-room-2-second-floor:hover{cursor:pointer;opacity:.8}.alice{animation:blinker 1s linear infinite;background-color:red;clip-path:polygon(26.5% 71%,29.3% 71%,29.3% 84%,26.5% 84%);height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.artExhibition{clip-path:polygon(21.5% 69%,28.5% 62.5%,29.5% 71.5%,46% 72%,46% 79%,38.5% 79%,38.5% 96%,21.5% 96%)}.artExhibition,.wellnessRoom{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.wellnessRoom{clip-path:polygon(49% 34%,53% 30.1%,57.5% 27%,57.5% 72%,65.5% 72%,65.5% 77%,49% 77%)}.parlour{background-color:#adff2f;clip-path:polygon(69% 24.5%,76.5% 20%,76.5% 73%,69% 73%);height:100%;opacity:.5;position:absolute;width:100%}.parlour:hover{cursor:pointer;opacity:.8}.cinema{clip-path:polygon(86% 11%,96.5% 5.5%,99.5% 59%,89% 58%)}.cinebar,.cinema{animation:blinker 1s linear infinite;background-color:#000;height:100%;left:0;opacity:.9;position:absolute;top:0;width:100%}.cinebar{clip-path:polygon(94.5% 58%,99.5% 58%,99.5% 97%,94.5% 97%)}.cinebar:hover{cursor:pointer;opacity:.8}

CODE <<O<F CONDUCT

\ No newline at end of file diff --git a/component---src-pages-art-jsx-bac09a056aef3d37c859.js b/component---src-pages-art-jsx-8d84780042c3b69fcf49.js similarity index 97% rename from component---src-pages-art-jsx-bac09a056aef3d37c859.js rename to component---src-pages-art-jsx-8d84780042c3b69fcf49.js index a4c81306..bb04fe8c 100644 --- a/component---src-pages-art-jsx-bac09a056aef3d37c859.js +++ b/component---src-pages-art-jsx-8d84780042c3b69fcf49.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[640],{5472:function(e,t,n){n.r(t);var a=n(7294),r=n(3911),i=n(2722),o=n(9184);t.default=()=>{const[e,t]=a.useState(!1);return a.createElement(r.Z,null,a.createElement("div",{className:"textbox decorate-links"},a.createElement("h1",{className:"text-secondary underline font-ocra"},"<t(!0)},a.createElement("span",{className:"align-middle"},a.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),a.createElement("span",{className:"underline"},"Art Exhibition"))),a.createElement("p",null),a.createElement("p",null,"Tickets:"," ",a.createElement("a",{href:"https://visas.ethberlin.org/ethberlin/art",target:"_blank",rel:"noreferrer noopener"},"visas.ethberlin.org/ethberlin/art")," "),a.createElement("p",null,"In the history of media, sound, and related image-based practices, hardly any city in the world has been as impactful in the concept of collaborative performance and presentation as a genre and medium as Berlin. From the early hacklabs, cross-sound performances, Bring-Your-Own-Beamer initiatives, and crypto raves, the sense of a joint collaboration has been at the core, inviting artists of many disciplines and genres to create, exhibit and perform together, creating novel social sculptural movements."),a.createElement("p",null,"It is in this ethos Department of Decentralization, in collaboration with Refraction, presents 'co-create'. The exhibition asks questions in and around identity, open source technology, and participatory frameworks as they relate to contemporary on-chain discourse. The work is presented on-chain and IRL, creating a new mode of action and communication, bridging the exhibition space in Berlin and on the blockchain, furthering the notion of presentation as participation."),a.createElement("p",null,"The IRL exhibition is inspired by the Bring-Your-Own-Beamer (BYOB) initiative and asks presenting artists to consider and bring the device on which they believe the work is best suited for."),a.createElement("p",null,"The BYOB concept was initiated by Rafaël Rozendaal."),a.createElement("h3",{className:"text-xl mt-6"},"Talks"),a.createElement("ul",null,a.createElement("li",null,"12.00: Panel - ",a.createElement("strong",null,"Decentralized Art Organisation"),a.createElement("br",null),"With Vincent Trasov and Benny Giang; Moderated by Stina Gustafsson."),a.createElement("li",null,"13.30: Panel - ",a.createElement("strong",null,"Art after NFTs"),a.createElement("br",null),"With Joan Heemskerk and Billy Rennekamp; moderated by María Paula Fernández.")),a.createElement("p",null,a.createElement("h3",{className:"text-xl mt-6"},"Biographies")),a.createElement("p",null,a.createElement("strong",null,"Benny Giang")," is a founding team member of CryptoKitties, the first NFT project to launch on Ethereum in 2017. Since the formation of Dapper Labs he has taken on many different roles from building the earliest NFT community in Asia to launching several core projects such as Cheeze Wizards, Dapper Wallet, and NBA Top Shot. During his tenure at Dapper Labs he also helped release the most iconic digital fashion project IRIDESCENCE in collaboration with The Fabricant. Benny has also made several angel investments into web3 music, fashion, gaming, and infrastructure. After leaving Dapper Labs in 2021, Benny co-founded Future Primitive with Jayden and developed several successful projects over the last 3 years including ERC 6551 (TBAs) which is a protocol level upgrade for all NFTs in the EVM ecosystem."),a.createElement("p",null,a.createElement("strong",null,"Joan Heemskerk"),', a Dutch contemporary artist, centers her artistic practice around the internet, with a current focus on exploring the potentials of web4, spanning from cryptography systems to the realm of quantum non-binary computing. Her diverse body of work includes photography, video, software, games, websites, NFT, performances and installations. _ She is also a member of the art collective JODI, or (jodi.org) - pioneered net.art in 1995. JODI were among thd first artists to inves|igate and subvert conventkoos od |heInternet, compute?programs, and vhdeo ajd computer gamus. Radically di{rupting The ver9 languawe of tese systemr, including risual aesthepics, iNterface elemen}q? commandS, errors and?code. ?ODI staes ext?ema digmtal(intesventionq!that deStakilizg the reliTiofShip bdTween cmputer tdchnolOgy and ids use03jy sufterting oub(d8pectatIofs abkup?4jm?g?nctignah)tieS and conventio.s /f the sqrtees that ?e0Eepend upol eve2y?p?y. Tlcir wkr?!u?es thev?tasv pmsskble rriudy f mudi ane te?h?iqtes."frgm$insTalli?ionc, s/Ltw?re?Qod wd"sites to Pesf/zma?caw?aNd exhibitiof{.$'),a.createElement("p",null,a.createElement("strong",null,"Billy Rennekamp")," is founder of Trifle Labs, blurring the line between art and games with new on-chain experiences. He previously founded Folia.app space for exhibiting and collecting NFTs and Clovers Network, an on-chain game that rewards the creation of scarce art. He has also served as the Cosmos Hub Lead and Funding Manager at Interchain Foundation and contributed to various Ethereum EIPs, Gnosis and Aragon. He recently completed a stint as Entrepreneur in Residence at 1kx, where he researched zk circuits for verifiable computation of real-time game mechanics."),a.createElement("p",null,a.createElement("strong",null,"Vincent Trasov")," is a painter, video and performance artist. His work is often media based and collaborative in spirit, involved with developing networks. He is a Canadian born in 1947 in Edmonton. In 1969 he founded Image Bank with Michael Morris, a method for personal exchange of information amongst artists; he has made videotapes since 1971; 1973 he was co-founder and co-director of Western Front Society, Vancouver, a centre for the production and presentation of new art activity; 1981 he was invited with Morris as guest of Berliner Kunstlerprogramm, DAAD to Berlin; 1991 he and Morris founded the Morris/Trasov Archive, currently housed at Morris and Helen Belkin Art Gallery, Vancouver, to research contemporary art and communication. Trasov has had numerous international exhibitions and is represented in public and private collections in Europe and North America. He presently resides in Germany and Canada.")),a.createElement(i.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:"Top Floor (#5)",activeMap:o.Z,activeRoomClass:"artExhibition"})))}},9184:function(e,t,n){t.Z=n.p+"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png"}}]); -//# sourceMappingURL=component---src-pages-art-jsx-bac09a056aef3d37c859.js.map \ No newline at end of file +"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[640],{5472:function(e,t,n){n.r(t);var a=n(7294),r=n(3911),i=n(2722),o=n(9184);t.default=()=>{const[e,t]=a.useState(!1);return a.createElement(r.Z,null,a.createElement("div",{className:"textbox decorate-links"},a.createElement("h1",{className:"text-secondary underline font-ocra"},"<t(!0)},a.createElement("span",{className:"align-middle"},a.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),a.createElement("span",{className:"underline"},"Art Exhibition"))),a.createElement("p",null),a.createElement("p",null,"Tickets:"," ",a.createElement("a",{href:"https://visas.ethberlin.org/ethberlin/art",target:"_blank",rel:"noreferrer noopener"},"visas.ethberlin.org/ethberlin/art")," "),a.createElement("p",null,"In the history of media, sound, and related image-based practices, hardly any city in the world has been as impactful in the concept of collaborative performance and presentation as a genre and medium as Berlin. From the early hacklabs, cross-sound performances, Bring-Your-Own-Beamer initiatives, and crypto raves, the sense of a joint collaboration has been at the core, inviting artists of many disciplines and genres to create, exhibit and perform together, creating novel social sculptural movements."),a.createElement("p",null,"It is in this ethos Department of Decentralization, in collaboration with Refraction, presents 'co-create'. The exhibition asks questions in and around identity, open source technology, and participatory frameworks as they relate to contemporary on-chain discourse. The work is presented on-chain and IRL, creating a new mode of action and communication, bridging the exhibition space in Berlin and on the blockchain, furthering the notion of presentation as participation."),a.createElement("p",null,"The IRL exhibition is inspired by the Bring-Your-Own-Beamer (BYOB) initiative and asks presenting artists to consider and bring the device on which they believe the work is best suited for."),a.createElement("p",null,"The BYOB concept was initiated by Rafaël Rozendaal."),a.createElement("h3",{className:"text-xl mt-6"},"Talks"),a.createElement("ul",null,a.createElement("li",null,"12.00: Panel - ",a.createElement("strong",null,"Decentralized Art Organisation"),a.createElement("br",null),"With Vincent Trasov and Benny Giang; Moderated by Stina Gustafsson."),a.createElement("li",null,"13.30: Panel - ",a.createElement("strong",null,"Art after NFTs"),a.createElement("br",null),"With Joan Heemskerk and Billy Rennekamp; moderated by María Paula Fernández.")),a.createElement("p",null,a.createElement("h3",{className:"text-xl mt-6"},"Biographies")),a.createElement("p",null,a.createElement("strong",null,"Benny Giang")," is a founding team member of CryptoKitties, the first NFT project to launch on Ethereum in 2017. Since the formation of Dapper Labs he has taken on many different roles from building the earliest NFT community in Asia to launching several core projects such as Cheeze Wizards, Dapper Wallet, and NBA Top Shot. During his tenure at Dapper Labs he also helped release the most iconic digital fashion project IRIDESCENCE in collaboration with The Fabricant. Benny has also made several angel investments into web3 music, fashion, gaming, and infrastructure. After leaving Dapper Labs in 2021, Benny co-founded Future Primitive with Jayden and developed several successful projects over the last 3 years including ERC 6551 (TBAs) which is a protocol level upgrade for all NFTs in the EVM ecosystem."),a.createElement("p",null,a.createElement("strong",null,"Joan Heemskerk"),', a Dutch contemporary artist, centers her artistic practice around the internet, with a current focus on exploring the potentials of web4, spanning from cryptography systems to the realm of quantum non-binary computing. Her diverse body of work includes photography, video, software, games, websites, NFT, performances and installations. _ She is also a member of the art collective JODI, or (jodi.org) - pioneered net.art in 1995. JODI were among thd first artists to inves|igate and subvert conventkoos od |heInternet, compute?programs, and vhdeo ajd computer gamus. Radically di{rupting The ver9 languawe of tese systemr, including risual aesthepics, iNterface elemen}q? commandS, errors and?code. ?ODI staes ext?ema digmtal(intesventionq!that deStakilizg the reliTiofShip bdTween cmputer tdchnolOgy and ids use03jy sufterting oub(d8pectatIofs abkup?4jm?g?nctignah)tieS and conventio.s /f the sqrtees that ?e0Eepend upol eve2y?p?y. Tlcir wkr?!u?es thev?tasv pmsskble rriudy f mudi ane te?h?iqtes."frgm$insTalli?ionc, s/Ltw?re?Qod wd"sites to Pesf/zma?caw?aNd exhibitiof{.$'),a.createElement("p",null,a.createElement("strong",null,"Billy Rennekamp")," is founder of Trifle Labs, blurring the line between art and games with new on-chain experiences. He previously founded Folia.app space for exhibiting and collecting NFTs and Clovers Network, an on-chain game that rewards the creation of scarce art. He has also served as the Cosmos Hub Lead and Funding Manager at Interchain Foundation and contributed to various Ethereum EIPs, Gnosis and Aragon. He recently completed a stint as Entrepreneur in Residence at 1kx, where he researched zk circuits for verifiable computation of real-time game mechanics."),a.createElement("p",null,a.createElement("strong",null,"Vincent Trasov")," is a painter, video and performance artist. His work is often media based and collaborative in spirit, involved with developing networks. He is a Canadian born in 1947 in Edmonton. In 1969 he founded Image Bank with Michael Morris, a method for personal exchange of information amongst artists; he has made videotapes since 1971; 1973 he was co-founder and co-director of Western Front Society, Vancouver, a centre for the production and presentation of new art activity; 1981 he was invited with Morris as guest of Berliner Kunstlerprogramm, DAAD to Berlin; 1991 he and Morris founded the Morris/Trasov Archive, currently housed at Morris and Helen Belkin Art Gallery, Vancouver, to research contemporary art and communication. Trasov has had numerous international exhibitions and is represented in public and private collections in Europe and North America. He presently resides in Germany and Canada.")),a.createElement(i.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:"Top Floor (#5)",activeMap:o.Z,activeRoomClass:"artExhibition"})))}},9184:function(e,t,n){t.Z=n.p+"static/fifthFloor-c58523dc038a4992132fae57aaa2ee5e.png"}}]); +//# sourceMappingURL=component---src-pages-art-jsx-8d84780042c3b69fcf49.js.map \ No newline at end of file diff --git a/component---src-pages-art-jsx-bac09a056aef3d37c859.js.map b/component---src-pages-art-jsx-8d84780042c3b69fcf49.js.map similarity index 98% rename from component---src-pages-art-jsx-bac09a056aef3d37c859.js.map rename to component---src-pages-art-jsx-8d84780042c3b69fcf49.js.map index 010c6657..4f5c85f0 100644 --- a/component---src-pages-art-jsx-bac09a056aef3d37c859.js.map +++ b/component---src-pages-art-jsx-8d84780042c3b69fcf49.js.map @@ -1 +1 @@ -{"version":3,"file":"component---src-pages-art-jsx-bac09a056aef3d37c859.js","mappings":"8JAyKA,UApKkB,KAChB,MAAOA,EAAgBC,GAAqBC,EAAAA,UAAe,GAO3D,OACE,gBAAC,IAAD,KACE,uBAAKC,UAAU,0BACb,sBAAIA,UAAU,sCAAqC,UACnD,sBAAIA,UAAU,2BAA0B,aACxC,uBAAKA,UAAU,QACb,0BAAI,kEAGJ,qBAAGA,UAAU,QAAO,2EAGlB,0BACEA,UAAW,qCACXC,QAAS,IAAMH,GAAkB,IAEjC,wBAAME,UAAU,gBACd,wBAAME,MAAM,iDAAgD,gBAI9D,wBAAMF,UAAU,aAAY,oBAGhC,0BACA,yBAAG,WACQ,IACT,qBACEG,KAAK,4CACLC,OAAO,SACPC,IAAI,uBACL,qCAEI,KAEP,yBAAG,6fAUH,yBAAG,6dAUH,yBAAG,iMAKH,yBAAG,uDACH,sBAAIL,UAAU,gBAAe,SAC7B,0BACE,0BAAI,kBACa,8BAAQ,kCACvB,2BAAM,uEAIR,0BAAI,kBACa,8BAAQ,kBACvB,2BAAM,iFAKV,yBACE,sBAAIA,UAAU,gBAAe,gBAE/B,yBACE,8BAAQ,eAAoB,+xBAc9B,yBACE,8BAAQ,kBAAuB,wjCAmBjC,yBACE,8BAAQ,mBAAwB,6iBAUlC,yBACE,8BAAQ,kBAAuB,84BAkBnC,gBAAC,IAAD,CACEM,OAAQT,EACRU,iBAvJkBC,IACxBA,EAAEC,kBACFX,GAAkB,EAAlB,EAsJMY,cAAe,iBACfC,UAAWC,EAAAA,EACXC,gBAAiB,mBArJzB,C,uBCbF,IAAe,IAA0B,wD","sources":["webpack://ethberlin/./src/pages/art.jsx","webpack://ethberlin/./src/images/fifthFloor.png"],"sourcesContent":["import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport fifthFloor from \"../images/fifthFloor.png\";\n\nconst Impressum = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n return (\n \n
\n

<<A<RT

\n

co-create

\n
\n \n An exhibition by Department of Decentralization and Refraction\n \n

\n Public entrance and talks: Saturday, May 25th, 2024, from 11:00 to\n 17:00\n setIsMapModalOpen(true)}\n >\n \n \n my_location\n \n \n Art Exhibition\n \n

\n

\n

\n Tickets:{\" \"}\n \n visas.ethberlin.org/ethberlin/art\n {\" \"}\n

\n

\n In the history of media, sound, and related image-based practices,\n hardly any city in the world has been as impactful in the concept of\n collaborative performance and presentation as a genre and medium as\n Berlin. From the early hacklabs, cross-sound performances,\n Bring-Your-Own-Beamer initiatives, and crypto raves, the sense of a\n joint collaboration has been at the core, inviting artists of many\n disciplines and genres to create, exhibit and perform together,\n creating novel social sculptural movements.\n

\n

\n It is in this ethos Department of Decentralization, in collaboration\n with Refraction, presents 'co-create'. The exhibition asks questions\n in and around identity, open source technology, and participatory\n frameworks as they relate to contemporary on-chain discourse. The\n work is presented on-chain and IRL, creating a new mode of action\n and communication, bridging the exhibition space in Berlin and on\n the blockchain, furthering the notion of presentation as\n participation.\n

\n

\n The IRL exhibition is inspired by the Bring-Your-Own-Beamer (BYOB)\n initiative and asks presenting artists to consider and bring the\n device on which they believe the work is best suited for.\n

\n

The BYOB concept was initiated by Rafaël Rozendaal.

\n

Talks

\n
    \n
  • \n 12.00: Panel - Decentralized Art Organisation\n
    \n With Vincent Trasov and Benny Giang; Moderated by Stina\n Gustafsson.\n
  • \n
  • \n 13.30: Panel - Art after NFTs\n
    \n With Joan Heemskerk and Billy Rennekamp; moderated by María Paula\n Fernández.\n
  • \n
\n

\n

Biographies

\n

\n

\n Benny Giang is a founding team member of\n CryptoKitties, the first NFT project to launch on Ethereum in 2017.\n Since the formation of Dapper Labs he has taken on many different\n roles from building the earliest NFT community in Asia to launching\n several core projects such as Cheeze Wizards, Dapper Wallet, and NBA\n Top Shot. During his tenure at Dapper Labs he also helped release\n the most iconic digital fashion project IRIDESCENCE in collaboration\n with The Fabricant. Benny has also made several angel investments\n into web3 music, fashion, gaming, and infrastructure. After leaving\n Dapper Labs in 2021, Benny co-founded Future Primitive with Jayden\n and developed several successful projects over the last 3 years\n including ERC 6551 (TBAs) which is a protocol level upgrade for all\n NFTs in the EVM ecosystem.\n

\n

\n Joan Heemskerk, a Dutch contemporary artist,\n centers her artistic practice around the internet, with a current\n focus on exploring the potentials of web4, spanning from\n cryptography systems to the realm of quantum non-binary computing.\n Her diverse body of work includes photography, video, software,\n games, websites, NFT, performances and installations. _ She is also\n a member of the art collective JODI, or (jodi.org) - pioneered\n net.art in 1995. JODI were among thd first artists to inves|igate\n and subvert conventkoos od |heInternet, compute?programs, and vhdeo\n ajd computer gamus. Radically di{rupting The ver9 languawe of\n tese systemr, including risual aesthepics, iNterface elemen}q?\n commandS, errors and?code. ?ODI staes ext?ema\n digmtal(intesventionq!that deStakilizg the reliTiofShip bdTween\n cmputer tdchnolOgy and ids use03jy sufterting oub(d8pectatIofs\n abkup?4jm?g?nctignah)tieS and conventio.s /f the sqrtees that\n ?e0Eepend upol eve2y?p?y. Tlcir wkr?!u?es thev?tasv pmsskble rriudy\n f mudi ane te?h?iqtes.\"frgm$insTalli?ionc, s/Ltw?re?Qod wd\"sites to\n Pesf/zma?caw?aNd exhibitiof{.$\n

\n

\n Billy Rennekamp is founder of Trifle Labs, blurring\n the line between art and games with new on-chain experiences. He\n previously founded Folia.app space for exhibiting and collecting\n NFTs and Clovers Network, an on-chain game that rewards the creation\n of scarce art. He has also served as the Cosmos Hub Lead and Funding\n Manager at Interchain Foundation and contributed to various Ethereum\n EIPs, Gnosis and Aragon. He recently completed a stint as\n Entrepreneur in Residence at 1kx, where he researched zk circuits\n for verifiable computation of real-time game mechanics.\n

\n

\n Vincent Trasov is a painter, video and performance\n artist. His work is often media based and collaborative in spirit,\n involved with developing networks. He is a Canadian born in 1947 in\n Edmonton. In 1969 he founded Image Bank with Michael Morris, a\n method for personal exchange of information amongst artists; he has\n made videotapes since 1971; 1973 he was co-founder and co-director\n of Western Front Society, Vancouver, a centre for the production and\n presentation of new art activity; 1981 he was invited with Morris as\n guest of Berliner Kunstlerprogramm, DAAD to Berlin; 1991 he and\n Morris founded the Morris/Trasov Archive, currently housed at Morris\n and Helen Belkin Art Gallery, Vancouver, to research contemporary\n art and communication. Trasov has had numerous international\n exhibitions and is represented in public and private collections in\n Europe and North America. He presently resides in Germany and\n Canada.\n

\n
\n\n \n
\n
\n );\n};\n\nexport default Impressum;\n","export default __webpack_public_path__ + \"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png\";"],"names":["isMapModalOpen","setIsMapModalOpen","React","className","onClick","class","href","target","rel","isOpen","handleCloseModal","e","stopPropagation","activeMapName","activeMap","fifthFloor","activeRoomClass"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"component---src-pages-art-jsx-8d84780042c3b69fcf49.js","mappings":"8JAyKA,UApKkB,KAChB,MAAOA,EAAgBC,GAAqBC,EAAAA,UAAe,GAO3D,OACE,gBAAC,IAAD,KACE,uBAAKC,UAAU,0BACb,sBAAIA,UAAU,sCAAqC,UACnD,sBAAIA,UAAU,2BAA0B,aACxC,uBAAKA,UAAU,QACb,0BAAI,kEAGJ,qBAAGA,UAAU,QAAO,2EAGlB,0BACEA,UAAW,qCACXC,QAAS,IAAMH,GAAkB,IAEjC,wBAAME,UAAU,gBACd,wBAAME,MAAM,iDAAgD,gBAI9D,wBAAMF,UAAU,aAAY,oBAGhC,0BACA,yBAAG,WACQ,IACT,qBACEG,KAAK,4CACLC,OAAO,SACPC,IAAI,uBACL,qCAEI,KAEP,yBAAG,6fAUH,yBAAG,6dAUH,yBAAG,iMAKH,yBAAG,uDACH,sBAAIL,UAAU,gBAAe,SAC7B,0BACE,0BAAI,kBACa,8BAAQ,kCACvB,2BAAM,uEAIR,0BAAI,kBACa,8BAAQ,kBACvB,2BAAM,iFAKV,yBACE,sBAAIA,UAAU,gBAAe,gBAE/B,yBACE,8BAAQ,eAAoB,+xBAc9B,yBACE,8BAAQ,kBAAuB,wjCAmBjC,yBACE,8BAAQ,mBAAwB,6iBAUlC,yBACE,8BAAQ,kBAAuB,84BAkBnC,gBAAC,IAAD,CACEM,OAAQT,EACRU,iBAvJkBC,IACxBA,EAAEC,kBACFX,GAAkB,EAAlB,EAsJMY,cAAe,iBACfC,UAAWC,EAAAA,EACXC,gBAAiB,mBArJzB,C,uBCbF,IAAe,IAA0B,wD","sources":["webpack://ethberlin/./src/pages/art.jsx","webpack://ethberlin/./src/images/fifthFloor.png"],"sourcesContent":["import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport fifthFloor from \"../images/fifthFloor.png\";\n\nconst Impressum = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n return (\n \n
\n

<<A<RT

\n

co-create

\n
\n \n An exhibition by Department of Decentralization and Refraction\n \n

\n Public entrance and talks: Saturday, May 25th, 2024, from 11:00 to\n 17:00\n setIsMapModalOpen(true)}\n >\n \n \n my_location\n \n \n Art Exhibition\n \n

\n

\n

\n Tickets:{\" \"}\n \n visas.ethberlin.org/ethberlin/art\n {\" \"}\n

\n

\n In the history of media, sound, and related image-based practices,\n hardly any city in the world has been as impactful in the concept of\n collaborative performance and presentation as a genre and medium as\n Berlin. From the early hacklabs, cross-sound performances,\n Bring-Your-Own-Beamer initiatives, and crypto raves, the sense of a\n joint collaboration has been at the core, inviting artists of many\n disciplines and genres to create, exhibit and perform together,\n creating novel social sculptural movements.\n

\n

\n It is in this ethos Department of Decentralization, in collaboration\n with Refraction, presents 'co-create'. The exhibition asks questions\n in and around identity, open source technology, and participatory\n frameworks as they relate to contemporary on-chain discourse. The\n work is presented on-chain and IRL, creating a new mode of action\n and communication, bridging the exhibition space in Berlin and on\n the blockchain, furthering the notion of presentation as\n participation.\n

\n

\n The IRL exhibition is inspired by the Bring-Your-Own-Beamer (BYOB)\n initiative and asks presenting artists to consider and bring the\n device on which they believe the work is best suited for.\n

\n

The BYOB concept was initiated by Rafaël Rozendaal.

\n

Talks

\n
    \n
  • \n 12.00: Panel - Decentralized Art Organisation\n
    \n With Vincent Trasov and Benny Giang; Moderated by Stina\n Gustafsson.\n
  • \n
  • \n 13.30: Panel - Art after NFTs\n
    \n With Joan Heemskerk and Billy Rennekamp; moderated by María Paula\n Fernández.\n
  • \n
\n

\n

Biographies

\n

\n

\n Benny Giang is a founding team member of\n CryptoKitties, the first NFT project to launch on Ethereum in 2017.\n Since the formation of Dapper Labs he has taken on many different\n roles from building the earliest NFT community in Asia to launching\n several core projects such as Cheeze Wizards, Dapper Wallet, and NBA\n Top Shot. During his tenure at Dapper Labs he also helped release\n the most iconic digital fashion project IRIDESCENCE in collaboration\n with The Fabricant. Benny has also made several angel investments\n into web3 music, fashion, gaming, and infrastructure. After leaving\n Dapper Labs in 2021, Benny co-founded Future Primitive with Jayden\n and developed several successful projects over the last 3 years\n including ERC 6551 (TBAs) which is a protocol level upgrade for all\n NFTs in the EVM ecosystem.\n

\n

\n Joan Heemskerk, a Dutch contemporary artist,\n centers her artistic practice around the internet, with a current\n focus on exploring the potentials of web4, spanning from\n cryptography systems to the realm of quantum non-binary computing.\n Her diverse body of work includes photography, video, software,\n games, websites, NFT, performances and installations. _ She is also\n a member of the art collective JODI, or (jodi.org) - pioneered\n net.art in 1995. JODI were among thd first artists to inves|igate\n and subvert conventkoos od |heInternet, compute?programs, and vhdeo\n ajd computer gamus. Radically di{rupting The ver9 languawe of\n tese systemr, including risual aesthepics, iNterface elemen}q?\n commandS, errors and?code. ?ODI staes ext?ema\n digmtal(intesventionq!that deStakilizg the reliTiofShip bdTween\n cmputer tdchnolOgy and ids use03jy sufterting oub(d8pectatIofs\n abkup?4jm?g?nctignah)tieS and conventio.s /f the sqrtees that\n ?e0Eepend upol eve2y?p?y. Tlcir wkr?!u?es thev?tasv pmsskble rriudy\n f mudi ane te?h?iqtes.\"frgm$insTalli?ionc, s/Ltw?re?Qod wd\"sites to\n Pesf/zma?caw?aNd exhibitiof{.$\n

\n

\n Billy Rennekamp is founder of Trifle Labs, blurring\n the line between art and games with new on-chain experiences. He\n previously founded Folia.app space for exhibiting and collecting\n NFTs and Clovers Network, an on-chain game that rewards the creation\n of scarce art. He has also served as the Cosmos Hub Lead and Funding\n Manager at Interchain Foundation and contributed to various Ethereum\n EIPs, Gnosis and Aragon. He recently completed a stint as\n Entrepreneur in Residence at 1kx, where he researched zk circuits\n for verifiable computation of real-time game mechanics.\n

\n

\n Vincent Trasov is a painter, video and performance\n artist. His work is often media based and collaborative in spirit,\n involved with developing networks. He is a Canadian born in 1947 in\n Edmonton. In 1969 he founded Image Bank with Michael Morris, a\n method for personal exchange of information amongst artists; he has\n made videotapes since 1971; 1973 he was co-founder and co-director\n of Western Front Society, Vancouver, a centre for the production and\n presentation of new art activity; 1981 he was invited with Morris as\n guest of Berliner Kunstlerprogramm, DAAD to Berlin; 1991 he and\n Morris founded the Morris/Trasov Archive, currently housed at Morris\n and Helen Belkin Art Gallery, Vancouver, to research contemporary\n art and communication. Trasov has had numerous international\n exhibitions and is represented in public and private collections in\n Europe and North America. He presently resides in Germany and\n Canada.\n

\n
\n\n \n
\n
\n );\n};\n\nexport default Impressum;\n","export default __webpack_public_path__ + \"static/fifthFloor-c58523dc038a4992132fae57aaa2ee5e.png\";"],"names":["isMapModalOpen","setIsMapModalOpen","React","className","onClick","class","href","target","rel","isOpen","handleCloseModal","e","stopPropagation","activeMapName","activeMap","fifthFloor","activeRoomClass"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js.map b/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js.map deleted file mode 100644 index 3963b877..00000000 --- a/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js","mappings":"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","sources":["webpack://ethberlin/./src/pages/experiences.jsx","webpack://ethberlin/./src/images/fifthFloor.png","webpack://ethberlin/./src/images/firstFloor.png","webpack://ethberlin/./src/images/fourthFloor.png","webpack://ethberlin/./src/images/groundFloor.png","webpack://ethberlin/./src/images/secondFloor.png","webpack://ethberlin/./src/images/thirdFloor.png","webpack://ethberlin/./node_modules/react-icons/lib/iconsManifest.mjs","webpack://ethberlin/./node_modules/react-icons/lib/iconContext.mjs","webpack://ethberlin/./node_modules/react-icons/lib/iconBase.mjs"],"sourcesContent":["import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport groundFloor from \"../images/groundFloor.png\";\nimport firstFloor from \"../images/firstFloor.png\";\nimport secondFloor from \"../images/secondFloor.png\";\nimport thirdFloor from \"../images/thirdFloor.png\";\nimport fourthFloor from \"../images/fourthFloor.png\";\nimport fifthFloor from \"../images/fifthFloor.png\";\nimport { FaExternalLinkAlt } from \"react-icons/fa\";\n\nconst Experiences = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n const [activeMap, setActiveMap] = React.useState(groundFloor);\n const [activeMapName, setActiveMapName] = React.useState(\"Ground Floor (#0)\");\n const [activeRoomClass, setActiveRoomClass] = React.useState(\"lexis\");\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n const handleGroundFloor = () => {\n setActiveMap(groundFloor);\n setActiveMapName(\"Ground Floor (#0)\");\n };\n\n const handleFirstFloor = () => {\n setActiveMap(firstFloor);\n setActiveMapName(\"First Floor (#1)\");\n };\n\n const handleSecondFloor = () => {\n setActiveMap(secondFloor);\n setActiveMapName(\"Second Floor (#2)\");\n };\n\n const handleThirdFloor = () => {\n setActiveMap(thirdFloor);\n setActiveMapName(\"Third Floor (#3)\");\n };\n\n const handleFourthFloor = () => {\n setActiveMap(fourthFloor);\n setActiveMapName(\"Fourth Floor (#4)\");\n };\n\n const handleFifthFloor = () => {\n setActiveMap(fifthFloor);\n setActiveMapName(\"Fifth Floor (#5)\");\n };\n\n const locations = {\n lexis: {\n name: \"Lexis\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"lexis\");\n setIsMapModalOpen(true);\n },\n },\n giftShop: {\n name: \"Gift Shop\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"giftShop\");\n setIsMapModalOpen(true);\n },\n },\n nodeCafe: {\n name: \"Node Cafe\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"nodeCafe\");\n setIsMapModalOpen(true);\n },\n },\n yard0: {\n name: \"Yard 0\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard0\");\n setIsMapModalOpen(true);\n },\n },\n yard1: {\n name: \"Yard 1\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard1\");\n setIsMapModalOpen(true);\n },\n },\n yard2: {\n name: \"Yard 2\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard2\");\n setIsMapModalOpen(true);\n },\n },\n mainEnterence: {\n name: \"Main Enterance\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"main-enterence\");\n setIsMapModalOpen(true);\n },\n },\n registration: {\n name: \"Registration\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"registration\");\n setIsMapModalOpen(true);\n },\n },\n restaurant: {\n name: \"Restaurant\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"restaurant\");\n setIsMapModalOpen(true);\n },\n },\n mckinsey: {\n name: \"McKinsey\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"mckinsey\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace1: {\n name: \"First Floor Community Space\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"community-space-first-floor\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace2: {\n name: \"Second Floor Community Space\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"community-space-second-floor\");\n setIsMapModalOpen(true);\n },\n },\n artExhibition: {\n name: \"Art Exhibition\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"artExhibition\");\n setIsMapModalOpen(true);\n },\n },\n library: {\n name: \"Library\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"library\");\n setIsMapModalOpen(true);\n },\n },\n alice: {\n name: \"Alice\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"alice\");\n setIsMapModalOpen(true);\n },\n },\n wellnessRoom: {\n name: \"Wellness & Planeterium\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"wellnessRoom\");\n setIsMapModalOpen(true);\n },\n },\n cinema: {\n name: \"Cinema\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinema\");\n setIsMapModalOpen(true);\n },\n },\n cinebar: {\n name: \"Cinebar\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinebar\");\n setIsMapModalOpen(true);\n },\n },\n };\n\n const LocationButton = ({ loc, className }) => (\n {\n loc.handler();\n }}\n >\n \n my_location\n \n {loc.name}\n \n );\n\n return (\n \n
\n

\n <<E<XPERIENCES\n

\n

ETHBerlin04 Experiences

\n

\n ETHBerlin is a hackathon first but not a hackathon only. Like the last\n years we’re also hosting different experiences for our hackers to\n enjoy during the weekend. These experiences are not only hosted and\n organized by us, the Department of Decentralization, but also by our\n friends and conspirators.\n

\n\n
\n
\n
\n

Gift Shop

\n hosted by\n \n DoD\n \n \n
\n
\n Grab our iconic ETHBerlin04 swag and goodies from some of our\n experience hosts at the gift shop!\n
\n
\n\n
\n
\n

Cafe & Books

\n hosted by\n \n Eigenlayer\n \n \n
\n
\n
\n Get your day started with coffee and a good read on blockchain\n essentials.\n
\n
    \n
  • Saturday: 09:00 - 16:00
  • \n
  • Sunday: 09:00 - 12:00
  • \n
\n
\n
\n\n
\n
\n

\n Wellness Room by Day, Planetarium by Night\n

\n hosted by\n \n Scroll\n \n \n
\n
\n
\n On the fifth floor we’ll host yoga, reiki, meditation and\n breathwork sessions throughout the weekend so hackers can rewind\n and recenter. At night the space will transform into a starry\n night, with areas for hackers to sleep or unwind.\n
\n
Saturday 25th:
\n
    \n
  • 10:00 - 11:30 - Kundalini yoga
  • \n
  • 13:00 - 15:00 - Reiki practitioner available
  • \n
  • 15:00 - 16:30 - Sound healing practice
  • \n
  • 17:00 - 19:00 - Yoga flow + Sound Bath
  • \n
\n
Sunday 26th:
\n
    \n
  • 10:00 - 10:45 Active/dance meditation
  • \n
  • 10:45 - 11:30 Vibro Acoustic massage 1:1 first slot
  • \n
  • 11:45 - 12:30 Vibro acoustic massage 1:1 2nd slot
  • \n
\n
\n
\n\n
\n
\n

Screen Printing

\n hosted by\n \n Lens\n \n \n
\n
\n Family Style, located in the Library, invites hackers to relax,\n have some matcha, get some Lens swag live-screen printed by a\n local Berliner screen printer.\n
\n
\n\n
\n
\n

Pizza Delivery

\n by\n \n Base\n \n
\n
\n Pizza will be served on Saturday, after 22 hs. Stay tuned for the\n mic call, and make sure to get some napkins, greasy fingers\n guaranteed. :)\n
\n
\n\n
\n
\n

Co-Create

\n hosted by\n \n Refraction\n \n \n
\n
\n
\n Art exhibition curated by Department of Decentralization and\n Refraction.\n
\n
    \n
  • Friday: 19:00 - 23:59 for hackers
  • \n
  • \n Saturday: 11:00 - 23:59 for hackers, 11:00 - 17:00 for public.\n Public tickets available{\" \"}\n \n here\n {\" \"}\n
    \n With panels and content from 12:00 - 14:00\n
    \n
  • \n
  • Sunday 11:00-15:00
  • \n
\n
\n
\n\n
\n
\n

THC @ETHBerlin04

\n hosted by\n \n Social Dist0rtion Protocol\n \n
\n
\n Social Dist0rtion Protocol (SDP) where the first \"o\" in\n \"distortion\" is a zero, have an important message for you. Their\n upcoming special operation will unfold at ETHBerlin04, where they\n urgently require your collaboration to avert a dire human destiny.\n
\n
\n\n
\n
\n

\n Cocktails at the Cinebar\n

\n hosted by\n \n Celestia\n \n \n
\n
\n Celestia will be serving what they do best: vibes, games and some\n fine cocktails. Starting from 6pm on Saturday you’ll be able to\n take a break from your computer and mingle with other teams,\n mentors, and hackers over a cocktail or two.\n
\n
\n\n
\n
\n

Cypherpunk Cinema

\n by\n \n DoD\n \n \n
\n
\n For newbies to our hackathon series, our amazing venue is blessed\n with a cinema and very comfy couches for the ultimate viewing\n experience. As per ETHBerlin³, we will be curating the cinema on\n Saturday with movies to inspire you.\n
\n
\n\n
\n
\n

Görli On-Chain

\n hosted by\n \n Infura\n \n
\n
\n Join the Decentralized Infrastructure Network (DIN) and Consensys\n Diligence team for a Smart Contract Capture the Flag (CTF)\n Farcaster Frames challenge to solve riddles and mint a limited\n edition Goerli Commemorative NFT. Celebrating Goerli's launch at\n Göorlicon in Feb 2019, this puzzle will be deployed at ETHBerlin\n and available to the broader audience.\n
\n
\n\n
\n
\n

Teledisko

\n by\n \n TelediskoDAO\n \n \n
\n
\n The teledisko needs no further explanation. Brought to you by\n telediskoDAO, it’s the smallest disco on earth - literally an\n upcycled telephone booth with a disco in it.\n
\n
\n\n
\n
\n

Donut Wall

\n by\n \n Missing Link\n \n \n
\n
\n Back by popular demand is the donut wall! It’s exactly what it\n says on the tin - A wall of donuts for you to get your sugar hit\n during the weekend.\n
\n
\n
\n
\n

\n ETHBerlin Privacy Corner\n

\n by\n \n Web3 Privacy now\n \n \n
\n
\n Hacker-focused safe space where you can get productive feedback\n on your hackathon project idea, its privacy features, and general viability.\n The Web3 Privacy team will be available throughout the weekend\n and will host open feedback and ideation sessions.\n For more info please see: https://c24ber.web3privacy.info\n
\n
\n
\n
\n

After party

\n by\n \n Entropy\n {\" \"}\n &{\" \"}\n \n Fuel\n \n \n {\" \"}\n Aeden\n \n
\n
From 8PM onwards on Sunday night.
\n
\n It would not be a hackathon without an after party. It would also\n not be Berlin without a dose of techno.\n
\n
\n You will receive an after-party wristband during the hackathon\n registration. If you don't want to or cannot attend on Sunday\n evening, you can share it with your friends.\n
\n
\n
\n\n \n
\n
\n );\n};\n\nexport default Experiences;\n","export default __webpack_public_path__ + \"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png\";","export default __webpack_public_path__ + \"static/firstFloor-40005b3ded32f04558d7184cf1b4db48.png\";","export default __webpack_public_path__ + \"static/fourthFloor-a546bb8ae3bd92f2d3cf397a628592e5.png\";","export default __webpack_public_path__ + \"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png\";","export default __webpack_public_path__ + \"static/secondFloor-b5962086a073150c890aa04414996fe3.png\";","export default __webpack_public_path__ + \"static/thirdFloor-55d040ac1a61dbe808e42bcdad639ea9.png\";","export var IconsManifest = [\n {\n \"id\": \"ci\",\n \"name\": \"Circum Icons\",\n \"projectUrl\": \"https://circumicons.com/\",\n \"license\": \"MPL-2.0 license\",\n \"licenseUrl\": \"https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE\"\n },\n {\n \"id\": \"fa\",\n \"name\": \"Font Awesome 5\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"fa6\",\n \"name\": \"Font Awesome 6\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"io\",\n \"name\": \"Ionicons 4\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"io5\",\n \"name\": \"Ionicons 5\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"md\",\n \"name\": \"Material Design icons\",\n \"projectUrl\": \"http://google.github.io/material-design-icons/\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"https://github.com/google/material-design-icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"ti\",\n \"name\": \"Typicons\",\n \"projectUrl\": \"http://s-ings.com/typicons/\",\n \"license\": \"CC BY-SA 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by-sa/3.0/\"\n },\n {\n \"id\": \"go\",\n \"name\": \"Github Octicons icons\",\n \"projectUrl\": \"https://octicons.github.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/primer/octicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"fi\",\n \"name\": \"Feather\",\n \"projectUrl\": \"https://feathericons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/feathericons/feather/blob/master/LICENSE\"\n },\n {\n \"id\": \"lu\",\n \"name\": \"Lucide\",\n \"projectUrl\": \"https://lucide.dev/\",\n \"license\": \"ISC\",\n \"licenseUrl\": \"https://github.com/lucide-icons/lucide/blob/main/LICENSE\"\n },\n {\n \"id\": \"gi\",\n \"name\": \"Game Icons\",\n \"projectUrl\": \"https://game-icons.net/\",\n \"license\": \"CC BY 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/3.0/\"\n },\n {\n \"id\": \"wi\",\n \"name\": \"Weather Icons\",\n \"projectUrl\": \"https://erikflowers.github.io/weather-icons/\",\n \"license\": \"SIL OFL 1.1\",\n \"licenseUrl\": \"http://scripts.sil.org/OFL\"\n },\n {\n \"id\": \"di\",\n \"name\": \"Devicons\",\n \"projectUrl\": \"https://vorillaz.github.io/devicons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ai\",\n \"name\": \"Ant Design Icons\",\n \"projectUrl\": \"https://github.com/ant-design/ant-design-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"bs\",\n \"name\": \"Bootstrap Icons\",\n \"projectUrl\": \"https://github.com/twbs/icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ri\",\n \"name\": \"Remix Icon\",\n \"projectUrl\": \"https://github.com/Remix-Design/RemixIcon\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"fc\",\n \"name\": \"Flat Color Icons\",\n \"projectUrl\": \"https://github.com/icons8/flat-color-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"gr\",\n \"name\": \"Grommet-Icons\",\n \"projectUrl\": \"https://github.com/grommet/grommet-icons\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"hi\",\n \"name\": \"Heroicons\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"hi2\",\n \"name\": \"Heroicons 2\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"si\",\n \"name\": \"Simple Icons\",\n \"projectUrl\": \"https://simpleicons.org/\",\n \"license\": \"CC0 1.0 Universal\",\n \"licenseUrl\": \"https://creativecommons.org/publicdomain/zero/1.0/\"\n },\n {\n \"id\": \"sl\",\n \"name\": \"Simple Line Icons\",\n \"projectUrl\": \"https://thesabbir.github.io/simple-line-icons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"im\",\n \"name\": \"IcoMoon Free\",\n \"projectUrl\": \"https://github.com/Keyamoon/IcoMoon-Free\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt\"\n },\n {\n \"id\": \"bi\",\n \"name\": \"BoxIcons\",\n \"projectUrl\": \"https://github.com/atisawd/boxicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/atisawd/boxicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"cg\",\n \"name\": \"css.gg\",\n \"projectUrl\": \"https://github.com/astrit/css.gg\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"vsc\",\n \"name\": \"VS Code Icons\",\n \"projectUrl\": \"https://github.com/microsoft/vscode-codicons\",\n \"license\": \"CC BY 4.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"tb\",\n \"name\": \"Tabler Icons\",\n \"projectUrl\": \"https://github.com/tabler/tabler-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"tfi\",\n \"name\": \"Themify Icons\",\n \"projectUrl\": \"https://github.com/lykmapipo/themify-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/thecreation/standard-icons/blob/master/modules/themify-icons/LICENSE\"\n },\n {\n \"id\": \"rx\",\n \"name\": \"Radix Icons\",\n \"projectUrl\": \"https://icons.radix-ui.com\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/radix-ui/icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"pi\",\n \"name\": \"Phosphor Icons\",\n \"projectUrl\": \"https://github.com/phosphor-icons/core\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/phosphor-icons/core/blob/main/LICENSE\"\n },\n {\n \"id\": \"lia\",\n \"name\": \"Icons8 Line Awesome\",\n \"projectUrl\": \"https://icons8.com/line-awesome\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/icons8/line-awesome/blob/master/LICENSE.md\"\n }\n]","import React from \"react\";\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && /*#__PURE__*/React.createContext(DefaultContext);","var _excluded = [\"attr\", \"size\", \"title\"];\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport React from \"react\";\nimport { IconContext, DefaultContext } from \"./iconContext.mjs\";\nfunction Tree2Element(tree) {\n return tree && tree.map((node, i) => /*#__PURE__*/React.createElement(node.tag, _objectSpread({\n key: i\n }, node.attr), Tree2Element(node.child)));\n}\nexport function GenIcon(data) {\n // eslint-disable-next-line react/display-name\n return props => /*#__PURE__*/React.createElement(IconBase, _extends({\n attr: _objectSpread({}, data.attr)\n }, props), Tree2Element(data.child));\n}\nexport function IconBase(props) {\n var elem = conf => {\n var {\n attr,\n size,\n title\n } = props,\n svgProps = _objectWithoutProperties(props, _excluded);\n var computedSize = size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + \" \" : \"\") + props.className;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: _objectSpread(_objectSpread({\n color: props.color || conf.color\n }, conf.style), props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && /*#__PURE__*/React.createElement(\"title\", null, title), props.children);\n };\n return IconContext !== undefined ? /*#__PURE__*/React.createElement(IconContext.Consumer, null, conf => elem(conf)) : elem(DefaultContext);\n}"],"names":["isMapModalOpen","setIsMapModalOpen","React","activeMap","setActiveMap","groundFloor","activeMapName","setActiveMapName","activeRoomClass","setActiveRoomClass","handleGroundFloor","handleFirstFloor","firstFloor","handleSecondFloor","secondFloor","handleFifthFloor","fifthFloor","locations","lexis","name","handler","giftShop","nodeCafe","yard0","yard1","yard2","mainEnterence","registration","restaurant","mckinsey","communitySpace1","communitySpace2","artExhibition","library","alice","wellnessRoom","cinema","cinebar","LocationButton","loc","className","onClick","class","href","target","rel","id","isOpen","handleCloseModal","e","stopPropagation","DefaultContext","color","undefined","size","style","attr","IconContext","_excluded","_objectWithoutProperties","source","excluded","key","i","sourceKeys","Object","keys","length","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_extends","assign","bind","arguments","hasOwnProperty","apply","this","ownKeys","r","t","o","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","arg","input","hint","prim","Symbol","toPrimitive","res","TypeError","String","Number","_toPrimitive","_toPropertyKey","configurable","writable","Tree2Element","tree","map","node","tag","child","GenIcon","data","props","IconBase","elem","conf","title","svgProps","computedSize","stroke","fill","strokeWidth","height","width","xmlns","children","Consumer"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js b/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js similarity index 71% rename from component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js rename to component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js index f8f6554b..9f5d6756 100644 --- a/component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js +++ b/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[70],{6333:function(e,t,a){a.r(t);var r=a(7294),n=a(3911),l=a(2722),i=a(4787),o=a(228),s=a(9515),c=(a(6048),a(8595),a(9184)),m=a(2091);t.default=()=>{const[e,t]=r.useState(!1),[a,d]=r.useState(i.Z),[u,h]=r.useState("Ground Floor (#0)"),[f,p]=r.useState("lexis"),b=()=>{d(i.Z),h("Ground Floor (#0)")},E=()=>{d(o.Z),h("First Floor (#1)")},y=()=>{d(s.Z),h("Second Floor (#2)")},g=()=>{d(c.Z),h("Fifth Floor (#5)")},v={lexis:{name:"Lexis",handler:()=>{b(),p("lexis"),t(!0)}},giftShop:{name:"Gift Shop",handler:()=>{b(),p("giftShop"),t(!0)}},nodeCafe:{name:"Node Cafe",handler:()=>{b(),p("nodeCafe"),t(!0)}},yard0:{name:"Yard 0",handler:()=>{b(),p("yard0"),t(!0)}},yard1:{name:"Yard 1",handler:()=>{b(),p("yard1"),t(!0)}},yard2:{name:"Yard 2",handler:()=>{b(),p("yard2"),t(!0)}},mainEnterence:{name:"Main Enterance",handler:()=>{b(),p("main-enterence"),t(!0)}},registration:{name:"Registration",handler:()=>{b(),p("registration"),t(!0)}},restaurant:{name:"Restaurant",handler:()=>{b(),p("restaurant"),t(!0)}},mckinsey:{name:"McKinsey",handler:()=>{E(),p("mckinsey"),t(!0)}},communitySpace1:{name:"First Floor Community Space",handler:()=>{E(),p("community-space-first-floor"),t(!0)}},communitySpace2:{name:"Second Floor Community Space",handler:()=>{y(),p("community-space-second-floor"),t(!0)}},artExhibition:{name:"Art Exhibition",handler:()=>{g(),p("artExhibition"),t(!0)}},library:{name:"Library",handler:()=>{E(),p("library"),t(!0)}},alice:{name:"Alice",handler:()=>{y(),p("alice"),t(!0)}},wellnessRoom:{name:"Wellness & Planeterium",handler:()=>{g(),p("wellnessRoom"),t(!0)}},cinema:{name:"Cinema",handler:()=>{g(),p("cinema"),t(!0)}},cinebar:{name:"Cinebar",handler:()=>{g(),p("cinebar"),t(!0)}}},w=e=>{let{loc:t,className:a}=e;return r.createElement("button",{className:"text-berlin-red inline-flex flex-wrap items-center font-bold",onClick:()=>{t.handler()}},r.createElement("span",{class:"material-symbols-outlined mr-0.5 ml-1 text-[1.2rem]"},"my_location"),r.createElement("span",{className:"hover:underline text-[1rem]"},t.name))};return r.createElement(n.Z,null,r.createElement("div",{className:"textbox"},r.createElement("h1",{className:"text-secondary underline font-ocra"},"<{e.stopPropagation(),t(!1)},activeMapName:u,activeMap:a,activeRoomClass:f})))}},9184:function(e,t,a){t.Z=a.p+"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png"},228:function(e,t,a){t.Z=a.p+"static/firstFloor-40005b3ded32f04558d7184cf1b4db48.png"},8595:function(e,t,a){t.Z=a.p+"static/fourthFloor-a546bb8ae3bd92f2d3cf397a628592e5.png"},4787:function(e,t,a){t.Z=a.p+"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png"},9515:function(e,t,a){t.Z=a.p+"static/secondFloor-b5962086a073150c890aa04414996fe3.png"},6048:function(e,t,a){t.Z=a.p+"static/thirdFloor-55d040ac1a61dbe808e42bcdad639ea9.png"},3621:function(e,t,a){a.d(t,{w_:function(){return h}});var r=a(7294),n={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},l=r.createContext&&r.createContext(n),i=["attr","size","title"];function o(e,t){if(null==e)return{};var a,r,n=function(e,t){if(null==e)return{};var a,r,n={},l=Object.keys(e);for(r=0;r=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;tr.createElement(e.tag,m({key:t},e.attr),u(e.child))))}function h(e){return t=>r.createElement(f,s({attr:m({},e.attr)},t),u(e.child))}function f(e){var t=t=>{var a,{attr:n,size:l,title:c}=e,d=o(e,i),u=l||t.size||"1em";return t.className&&(a=t.className),e.className&&(a=(a?a+" ":"")+e.className),r.createElement("svg",s({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},t.attr,n,d,{className:a,style:m(m({color:e.color||t.color},t.style),e.style),height:u,width:u,xmlns:"http://www.w3.org/2000/svg"}),c&&r.createElement("title",null,c),e.children)};return void 0!==l?r.createElement(l.Consumer,null,(e=>t(e))):t(n)}}}]); -//# sourceMappingURL=component---src-pages-experiences-jsx-3e995d2e49fb053cf590.js.map \ No newline at end of file +"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[70],{6333:function(e,t,a){a.r(t);var r=a(7294),n=a(3911),l=a(2722),i=a(4787),o=a(228),s=a(9515),c=(a(6048),a(8595),a(9184)),m=a(2091);t.default=()=>{const[e,t]=r.useState(!1),[a,d]=r.useState(i.Z),[u,h]=r.useState("Ground Floor (#0)"),[f,p]=r.useState("lexis"),E=()=>{d(i.Z),h("Ground Floor (#0)")},b=()=>{d(o.Z),h("First Floor (#1)")},y=()=>{d(s.Z),h("Second Floor (#2)")},v=()=>{d(c.Z),h("Fifth Floor (#5)")},g={lexis:{name:"Lexis",handler:()=>{E(),p("lexis"),t(!0)}},giftShop:{name:"Gift Shop",handler:()=>{E(),p("giftShop"),t(!0)}},nodeCafe:{name:"Node Cafe",handler:()=>{E(),p("nodeCafe"),t(!0)}},yard0:{name:"Yard 0",handler:()=>{E(),p("yard0"),t(!0)}},yard1:{name:"Yard 1",handler:()=>{E(),p("yard1"),t(!0)}},yard2:{name:"Yard 2",handler:()=>{E(),p("yard2"),t(!0)}},mainEnterence:{name:"Main Enterance",handler:()=>{E(),p("main-enterence"),t(!0)}},registration:{name:"Registration",handler:()=>{E(),p("registration"),t(!0)}},restaurant:{name:"Restaurant",handler:()=>{E(),p("restaurant"),t(!0)}},mckinsey:{name:"McKinsey",handler:()=>{b(),p("mckinsey"),t(!0)}},communitySpace1:{name:"First Floor Community Space",handler:()=>{b(),p("community-space-first-floor"),t(!0)}},communitySpace2:{name:"Second Floor Community Space",handler:()=>{y(),p("community-space-second-floor"),t(!0)}},artExhibition:{name:"Art Exhibition",handler:()=>{v(),p("artExhibition"),t(!0)}},library:{name:"Library",handler:()=>{b(),p("library"),t(!0)}},alice:{name:"Alice",handler:()=>{y(),p("alice"),t(!0)}},wellnessRoom:{name:"Wellness & Planeterium",handler:()=>{v(),p("wellnessRoom"),t(!0)}},cinema:{name:"Cinema",handler:()=>{v(),p("cinema"),t(!0)}},cinebar:{name:"Cinebar",handler:()=>{v(),p("cinebar"),t(!0)}}},w=e=>{let{loc:t,className:a}=e;return r.createElement("button",{className:"text-berlin-red inline-flex flex-wrap items-center font-bold",onClick:()=>{t.handler()}},r.createElement("span",{class:"material-symbols-outlined mr-0.5 ml-1 text-[1.2rem]"},"my_location"),r.createElement("span",{className:"hover:underline text-[1rem]"},t.name))};return r.createElement(n.Z,null,r.createElement("div",{className:"textbox"},r.createElement("h1",{className:"text-secondary underline font-ocra"},"<{e.stopPropagation(),t(!1)},activeMapName:u,activeMap:a,activeRoomClass:f})))}},3621:function(e,t,a){a.d(t,{w_:function(){return h}});var r=a(7294),n={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},l=r.createContext&&r.createContext(n),i=["attr","size","title"];function o(e,t){if(null==e)return{};var a,r,n=function(e,t){if(null==e)return{};var a,r,n={},l=Object.keys(e);for(r=0;r=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;tr.createElement(e.tag,m({key:t},e.attr),u(e.child))))}function h(e){return t=>r.createElement(f,s({attr:m({},e.attr)},t),u(e.child))}function f(e){var t=t=>{var a,{attr:n,size:l,title:c}=e,d=o(e,i),u=l||t.size||"1em";return t.className&&(a=t.className),e.className&&(a=(a?a+" ":"")+e.className),r.createElement("svg",s({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},t.attr,n,d,{className:a,style:m(m({color:e.color||t.color},t.style),e.style),height:u,width:u,xmlns:"http://www.w3.org/2000/svg"}),c&&r.createElement("title",null,c),e.children)};return void 0!==l?r.createElement(l.Consumer,null,(e=>t(e))):t(n)}}}]); +//# sourceMappingURL=component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js.map \ No newline at end of file diff --git a/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js.map b/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js.map new file mode 100644 index 00000000..4dcaaa17 --- /dev/null +++ b/component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js.map @@ -0,0 +1 @@ +{"version":3,"file":"component---src-pages-experiences-jsx-9cb69ad5d6fadedfd44e.js","mappings":"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","sources":["webpack://ethberlin/./src/pages/experiences.jsx","webpack://ethberlin/./node_modules/react-icons/lib/iconsManifest.mjs","webpack://ethberlin/./node_modules/react-icons/lib/iconContext.mjs","webpack://ethberlin/./node_modules/react-icons/lib/iconBase.mjs"],"sourcesContent":["import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport groundFloor from \"../images/groundFloor.png\";\nimport firstFloor from \"../images/firstFloor.png\";\nimport secondFloor from \"../images/secondFloor.png\";\nimport thirdFloor from \"../images/thirdFloor.png\";\nimport fourthFloor from \"../images/fourthFloor.png\";\nimport fifthFloor from \"../images/fifthFloor.png\";\nimport { FaExternalLinkAlt } from \"react-icons/fa\";\n\nconst Experiences = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n const [activeMap, setActiveMap] = React.useState(groundFloor);\n const [activeMapName, setActiveMapName] = React.useState(\"Ground Floor (#0)\");\n const [activeRoomClass, setActiveRoomClass] = React.useState(\"lexis\");\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n const handleGroundFloor = () => {\n setActiveMap(groundFloor);\n setActiveMapName(\"Ground Floor (#0)\");\n };\n\n const handleFirstFloor = () => {\n setActiveMap(firstFloor);\n setActiveMapName(\"First Floor (#1)\");\n };\n\n const handleSecondFloor = () => {\n setActiveMap(secondFloor);\n setActiveMapName(\"Second Floor (#2)\");\n };\n\n const handleThirdFloor = () => {\n setActiveMap(thirdFloor);\n setActiveMapName(\"Third Floor (#3)\");\n };\n\n const handleFourthFloor = () => {\n setActiveMap(fourthFloor);\n setActiveMapName(\"Fourth Floor (#4)\");\n };\n\n const handleFifthFloor = () => {\n setActiveMap(fifthFloor);\n setActiveMapName(\"Fifth Floor (#5)\");\n };\n\n const locations = {\n lexis: {\n name: \"Lexis\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"lexis\");\n setIsMapModalOpen(true);\n },\n },\n giftShop: {\n name: \"Gift Shop\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"giftShop\");\n setIsMapModalOpen(true);\n },\n },\n nodeCafe: {\n name: \"Node Cafe\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"nodeCafe\");\n setIsMapModalOpen(true);\n },\n },\n yard0: {\n name: \"Yard 0\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard0\");\n setIsMapModalOpen(true);\n },\n },\n yard1: {\n name: \"Yard 1\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard1\");\n setIsMapModalOpen(true);\n },\n },\n yard2: {\n name: \"Yard 2\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard2\");\n setIsMapModalOpen(true);\n },\n },\n mainEnterence: {\n name: \"Main Enterance\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"main-enterence\");\n setIsMapModalOpen(true);\n },\n },\n registration: {\n name: \"Registration\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"registration\");\n setIsMapModalOpen(true);\n },\n },\n restaurant: {\n name: \"Restaurant\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"restaurant\");\n setIsMapModalOpen(true);\n },\n },\n mckinsey: {\n name: \"McKinsey\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"mckinsey\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace1: {\n name: \"First Floor Community Space\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"community-space-first-floor\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace2: {\n name: \"Second Floor Community Space\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"community-space-second-floor\");\n setIsMapModalOpen(true);\n },\n },\n artExhibition: {\n name: \"Art Exhibition\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"artExhibition\");\n setIsMapModalOpen(true);\n },\n },\n library: {\n name: \"Library\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"library\");\n setIsMapModalOpen(true);\n },\n },\n alice: {\n name: \"Alice\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"alice\");\n setIsMapModalOpen(true);\n },\n },\n wellnessRoom: {\n name: \"Wellness & Planeterium\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"wellnessRoom\");\n setIsMapModalOpen(true);\n },\n },\n cinema: {\n name: \"Cinema\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinema\");\n setIsMapModalOpen(true);\n },\n },\n cinebar: {\n name: \"Cinebar\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinebar\");\n setIsMapModalOpen(true);\n },\n },\n };\n\n const LocationButton = ({ loc, className }) => (\n {\n loc.handler();\n }}\n >\n \n my_location\n \n {loc.name}\n \n );\n\n return (\n \n
\n

\n <<E<XPERIENCES\n

\n

ETHBerlin04 Experiences

\n

\n ETHBerlin is a hackathon first but not a hackathon only. Like the last\n years we’re also hosting different experiences for our hackers to\n enjoy during the weekend. These experiences are not only hosted and\n organized by us, the Department of Decentralization, but also by our\n friends and conspirators.\n

\n\n
\n
\n
\n

Gift Shop

\n hosted by\n \n DoD\n \n \n
\n
\n Grab our iconic ETHBerlin04 swag and goodies from some of our\n experience hosts at the gift shop!\n
\n
\n\n
\n
\n

Cafe & Books

\n hosted by\n \n Eigenlayer\n \n \n
\n
\n
\n Get your day started with coffee and a good read on blockchain\n essentials.\n
\n
    \n
  • Saturday: 09:00 - 16:00
  • \n
  • Sunday: 09:00 - 12:00
  • \n
\n
\n
\n\n
\n
\n

\n Wellness Room by Day, Planetarium by Night\n

\n hosted by\n \n Scroll\n \n \n
\n
\n
\n On the fifth floor we’ll host yoga, reiki, meditation and\n breathwork sessions throughout the weekend so hackers can rewind\n and recenter. At night the space will transform into a starry\n night, with areas for hackers to sleep or unwind.\n
\n
Saturday 25th:
\n
    \n
  • 10:00 - 11:30 - Kundalini yoga
  • \n
  • 13:00 - 15:00 - Reiki practitioner available
  • \n
  • 15:00 - 16:30 - Sound healing practice
  • \n
  • 17:00 - 19:00 - Yoga flow + Sound Bath
  • \n
\n
Sunday 26th:
\n
    \n
  • 10:00 - 10:45 Active/dance meditation
  • \n
  • 10:45 - 11:30 Vibro Acoustic massage 1:1 first slot
  • \n
  • 11:45 - 12:30 Vibro acoustic massage 1:1 2nd slot
  • \n
\n
\n
\n\n
\n
\n

Screen Printing

\n hosted by\n \n Lens\n \n \n
\n
\n Family Style, located in the Library, invites hackers to relax,\n have some matcha, get some Lens swag live-screen printed by a\n local Berliner screen printer.\n
\n
\n\n
\n
\n

Pizza Delivery

\n by\n \n Base\n \n
\n
\n Pizza will be served on Saturday, after 22 hs. Stay tuned for the\n mic call, and make sure to get some napkins, greasy fingers\n guaranteed. :)\n
\n
\n\n
\n
\n

Co-Create

\n hosted by\n \n Refraction\n \n \n
\n
\n
\n Art exhibition curated by Department of Decentralization and\n Refraction.\n
\n
    \n
  • Friday: 19:00 - 23:59 for hackers
  • \n
  • \n Saturday: 11:00 - 23:59 for hackers, 11:00 - 17:00 for public.\n Public tickets available{\" \"}\n \n here\n {\" \"}\n
    \n With panels and content from 12:00 - 14:00\n
    \n
  • \n
  • Sunday 11:00-15:00
  • \n
\n
\n
\n\n
\n
\n

THC @ETHBerlin04

\n hosted by\n \n Social Dist0rtion Protocol\n \n
\n
\n Social Dist0rtion Protocol (SDP) where the first \"o\" in\n \"distortion\" is a zero, have an important message for you. Their\n upcoming special operation will unfold at ETHBerlin04, where they\n urgently require your collaboration to avert a dire human destiny.\n
\n
\n\n
\n
\n

\n Cocktails at the Cinebar\n

\n hosted by\n \n Celestia\n \n \n
\n
\n Celestia will be serving what they do best: vibes, games and some\n fine cocktails. Starting from 6pm on Saturday you’ll be able to\n take a break from your computer and mingle with other teams,\n mentors, and hackers over a cocktail or two.\n
\n
\n\n
\n
\n

Cypherpunk Cinema

\n by\n \n DoD\n \n \n
\n
\n For newbies to our hackathon series, our amazing venue is blessed\n with a cinema and very comfy couches for the ultimate viewing\n experience. As per ETHBerlin³, we will be curating the cinema on\n Saturday with movies to inspire you.\n
\n
\n\n
\n
\n

Görli On-Chain

\n hosted by\n \n Infura\n \n
\n
\n Join the Decentralized Infrastructure Network (DIN) and Consensys\n Diligence team for a Smart Contract Capture the Flag (CTF)\n Farcaster Frames challenge to solve riddles and mint a limited\n edition Goerli Commemorative NFT. Celebrating Goerli's launch at\n Göorlicon in Feb 2019, this puzzle will be deployed at ETHBerlin\n and available to the broader audience.\n
\n
\n\n
\n
\n

Teledisko

\n by\n \n TelediskoDAO\n \n \n
\n
\n The teledisko needs no further explanation. Brought to you by\n telediskoDAO, it’s the smallest disco on earth - literally an\n upcycled telephone booth with a disco in it.\n
\n
\n\n
\n
\n

Donut Wall

\n by\n \n Missing Link\n \n \n
\n
\n Back by popular demand is the donut wall! It’s exactly what it\n says on the tin - A wall of donuts for you to get your sugar hit\n during the weekend.\n
\n
\n
\n
\n

\n ETHBerlin Privacy Corner\n

\n by\n \n Web3 Privacy now\n \n \n
\n
\n Hacker-focused safe space where you can get productive feedback\n on your hackathon project idea, its privacy features, and general viability.\n The Web3 Privacy team will be available throughout the weekend\n and will host open feedback and ideation sessions.\n For more info please see: https://c24ber.web3privacy.info\n
\n
\n
\n
\n

After party

\n by\n \n Entropy\n {\" \"}\n &{\" \"}\n \n Fuel\n \n \n {\" \"}\n Aeden\n \n
\n
From 8PM onwards on Sunday night.
\n
\n It would not be a hackathon without an after party. It would also\n not be Berlin without a dose of techno.\n
\n
\n You will receive an after-party wristband during the hackathon\n registration. If you don't want to or cannot attend on Sunday\n evening, you can share it with your friends.\n
\n
\n
\n\n \n
\n
\n );\n};\n\nexport default Experiences;\n","export var IconsManifest = [\n {\n \"id\": \"ci\",\n \"name\": \"Circum Icons\",\n \"projectUrl\": \"https://circumicons.com/\",\n \"license\": \"MPL-2.0 license\",\n \"licenseUrl\": \"https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE\"\n },\n {\n \"id\": \"fa\",\n \"name\": \"Font Awesome 5\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"fa6\",\n \"name\": \"Font Awesome 6\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"io\",\n \"name\": \"Ionicons 4\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"io5\",\n \"name\": \"Ionicons 5\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"md\",\n \"name\": \"Material Design icons\",\n \"projectUrl\": \"http://google.github.io/material-design-icons/\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"https://github.com/google/material-design-icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"ti\",\n \"name\": \"Typicons\",\n \"projectUrl\": \"http://s-ings.com/typicons/\",\n \"license\": \"CC BY-SA 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by-sa/3.0/\"\n },\n {\n \"id\": \"go\",\n \"name\": \"Github Octicons icons\",\n \"projectUrl\": \"https://octicons.github.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/primer/octicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"fi\",\n \"name\": \"Feather\",\n \"projectUrl\": \"https://feathericons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/feathericons/feather/blob/master/LICENSE\"\n },\n {\n \"id\": \"lu\",\n \"name\": \"Lucide\",\n \"projectUrl\": \"https://lucide.dev/\",\n \"license\": \"ISC\",\n \"licenseUrl\": \"https://github.com/lucide-icons/lucide/blob/main/LICENSE\"\n },\n {\n \"id\": \"gi\",\n \"name\": \"Game Icons\",\n \"projectUrl\": \"https://game-icons.net/\",\n \"license\": \"CC BY 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/3.0/\"\n },\n {\n \"id\": \"wi\",\n \"name\": \"Weather Icons\",\n \"projectUrl\": \"https://erikflowers.github.io/weather-icons/\",\n \"license\": \"SIL OFL 1.1\",\n \"licenseUrl\": \"http://scripts.sil.org/OFL\"\n },\n {\n \"id\": \"di\",\n \"name\": \"Devicons\",\n \"projectUrl\": \"https://vorillaz.github.io/devicons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ai\",\n \"name\": \"Ant Design Icons\",\n \"projectUrl\": \"https://github.com/ant-design/ant-design-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"bs\",\n \"name\": \"Bootstrap Icons\",\n \"projectUrl\": \"https://github.com/twbs/icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ri\",\n \"name\": \"Remix Icon\",\n \"projectUrl\": \"https://github.com/Remix-Design/RemixIcon\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"fc\",\n \"name\": \"Flat Color Icons\",\n \"projectUrl\": \"https://github.com/icons8/flat-color-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"gr\",\n \"name\": \"Grommet-Icons\",\n \"projectUrl\": \"https://github.com/grommet/grommet-icons\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"hi\",\n \"name\": \"Heroicons\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"hi2\",\n \"name\": \"Heroicons 2\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"si\",\n \"name\": \"Simple Icons\",\n \"projectUrl\": \"https://simpleicons.org/\",\n \"license\": \"CC0 1.0 Universal\",\n \"licenseUrl\": \"https://creativecommons.org/publicdomain/zero/1.0/\"\n },\n {\n \"id\": \"sl\",\n \"name\": \"Simple Line Icons\",\n \"projectUrl\": \"https://thesabbir.github.io/simple-line-icons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"im\",\n \"name\": \"IcoMoon Free\",\n \"projectUrl\": \"https://github.com/Keyamoon/IcoMoon-Free\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt\"\n },\n {\n \"id\": \"bi\",\n \"name\": \"BoxIcons\",\n \"projectUrl\": \"https://github.com/atisawd/boxicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/atisawd/boxicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"cg\",\n \"name\": \"css.gg\",\n \"projectUrl\": \"https://github.com/astrit/css.gg\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"vsc\",\n \"name\": \"VS Code Icons\",\n \"projectUrl\": \"https://github.com/microsoft/vscode-codicons\",\n \"license\": \"CC BY 4.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"tb\",\n \"name\": \"Tabler Icons\",\n \"projectUrl\": \"https://github.com/tabler/tabler-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"tfi\",\n \"name\": \"Themify Icons\",\n \"projectUrl\": \"https://github.com/lykmapipo/themify-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/thecreation/standard-icons/blob/master/modules/themify-icons/LICENSE\"\n },\n {\n \"id\": \"rx\",\n \"name\": \"Radix Icons\",\n \"projectUrl\": \"https://icons.radix-ui.com\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/radix-ui/icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"pi\",\n \"name\": \"Phosphor Icons\",\n \"projectUrl\": \"https://github.com/phosphor-icons/core\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/phosphor-icons/core/blob/main/LICENSE\"\n },\n {\n \"id\": \"lia\",\n \"name\": \"Icons8 Line Awesome\",\n \"projectUrl\": \"https://icons8.com/line-awesome\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/icons8/line-awesome/blob/master/LICENSE.md\"\n }\n]","import React from \"react\";\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && /*#__PURE__*/React.createContext(DefaultContext);","var _excluded = [\"attr\", \"size\", \"title\"];\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport React from \"react\";\nimport { IconContext, DefaultContext } from \"./iconContext.mjs\";\nfunction Tree2Element(tree) {\n return tree && tree.map((node, i) => /*#__PURE__*/React.createElement(node.tag, _objectSpread({\n key: i\n }, node.attr), Tree2Element(node.child)));\n}\nexport function GenIcon(data) {\n // eslint-disable-next-line react/display-name\n return props => /*#__PURE__*/React.createElement(IconBase, _extends({\n attr: _objectSpread({}, data.attr)\n }, props), Tree2Element(data.child));\n}\nexport function IconBase(props) {\n var elem = conf => {\n var {\n attr,\n size,\n title\n } = props,\n svgProps = _objectWithoutProperties(props, _excluded);\n var computedSize = size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + \" \" : \"\") + props.className;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: _objectSpread(_objectSpread({\n color: props.color || conf.color\n }, conf.style), props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && /*#__PURE__*/React.createElement(\"title\", null, title), props.children);\n };\n return IconContext !== undefined ? /*#__PURE__*/React.createElement(IconContext.Consumer, null, conf => elem(conf)) : elem(DefaultContext);\n}"],"names":["isMapModalOpen","setIsMapModalOpen","React","activeMap","setActiveMap","groundFloor","activeMapName","setActiveMapName","activeRoomClass","setActiveRoomClass","handleGroundFloor","handleFirstFloor","firstFloor","handleSecondFloor","secondFloor","handleFifthFloor","fifthFloor","locations","lexis","name","handler","giftShop","nodeCafe","yard0","yard1","yard2","mainEnterence","registration","restaurant","mckinsey","communitySpace1","communitySpace2","artExhibition","library","alice","wellnessRoom","cinema","cinebar","LocationButton","loc","className","onClick","class","href","target","rel","id","isOpen","handleCloseModal","e","stopPropagation","DefaultContext","color","undefined","size","style","attr","IconContext","_excluded","_objectWithoutProperties","source","excluded","key","i","sourceKeys","Object","keys","length","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_extends","assign","bind","arguments","hasOwnProperty","apply","this","ownKeys","r","t","o","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","arg","input","hint","prim","Symbol","toPrimitive","res","TypeError","String","Number","_toPrimitive","_toPropertyKey","configurable","writable","Tree2Element","tree","map","node","tag","child","GenIcon","data","props","IconBase","elem","conf","title","svgProps","computedSize","stroke","fill","strokeWidth","height","width","xmlns","children","Consumer"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js b/component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js similarity index 99% rename from component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js rename to component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js index c49f4e26..a45576a9 100644 --- a/component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js +++ b/component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[813],{7336:function(e,t,n){var a=n(7294);t.Z=e=>{let{className:t}=e;return a.createElement("span",{className:"font-ocra text-sm "+t+" break-all"},"ETHBERLIN04<<<{const[e,t]=a.useState(!1);return a.createElement(l.Z,null,a.createElement("div",{className:"textbox text-base decorate-links"},a.createElement("h1",{className:"mb-4 font-ocra underline text-berlin-red"},"<t(!0)},a.createElement("span",{className:"align-middle"},a.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),a.createElement("span",{className:"underline"},"Helpdesk Location"))),a.createElement("li",null,"Helpdesk opening hours:",a.createElement("ul",{className:"leading-none"},a.createElement("li",{className:"mt-2"},"Friday from hacking start (19:00) until midnight"),a.createElement("li",null,"Saturday from 08:00 to midnight "),a.createElement("li",null," Sunday from 08:00 to submission deadline (11:30)")))),a.createElement("h4",{className:"text-l mt-4 font-bold"},"Details "),a.createElement("p",null,"As with all previous ETHBerlins we've made sure to have a team of amazing mentors ready to help you build the best possible projects throughout the weekend. No questions are too small or too big to ask. As a hacker you can find the mentors in person as per the TL;DR above. You can also contact them with any questions you might have in the Matrix room that's also listed in the TL;DR. If you ask the question in the middle of the night you might not get a reply right away, but we will make sure to address it first thing in the morning."),a.createElement("p",null,"We encourage hackers to help each other out and keep an eye on the mentoring matrix channel. There might be some hackers with very specific expert knowledge and it would be great if this could be shared."),a.createElement("p",null,"You might also see the mentors throughout the venue. They'll be wearing a button/badge on their shirt saying \"Mentor\". They're all very friendly so don't hesitate to ask them a question or get their feedback on something."),a.createElement("div",{id:"submissions"},a.createElement("h3",{className:"text-2xl mt-6 font-bold"},"Submissions"),a.createElement("p",null,"This year thanks to our amazing Kirill, we've built our own tool for submissions and judging. The tool is open source, simple to use and should make the job of judging and tallying scores simple and fast."),a.createElement("p",null,"If you run into any problems or have any feedback it would be much appreciated if you would open an issue"," ",a.createElement("a",{href:"https://github.com/ethb3rlin/Submi-ions/issues",target:"_blank",rel:"noreferrer noopener"},"in the github repo"),"."),a.createElement("b",null,"The general flow for using the tool is as follows:"),a.createElement("ul",null,a.createElement("li",null,"Go to"," ",a.createElement("a",{href:"https://projects.ethberlin.org/",target:"_blank",rel:"noreferrer noopener"},"projects.ethberlin.org")," ",'and sign in with your Zupass credentials to receive your role as "hacker".'),a.createElement("li",null,"Create or join an existing team"),a.createElement("li",null,"Now you can submit projects and join team."),a.createElement("li",null,'To submit a project click the "Submit a project" button in the top bar.'),a.createElement("li",null,"There is a simple template with information you should add, but feel free to add whatever additional information you find relevant for your submission."),a.createElement("li",null,"Make sure to submit everything before the deadline Sunday 26th at 11:30, when submissions close."),a.createElement("li",null,"Once submissions are closed keep an eye on the general matrix channel, where we will provide further instructions for when your team will have to present to the judges.")),a.createElement("b",null,"Some things to keep in mind:"),a.createElement("ul",null,a.createElement("li",null,"Put as much information into the Github, Radicle, or whatever code collaboration platform you use, about the project so that judges and other hackers only need to look in one place to learn as much as possible about the project."),a.createElement("li",null,"Dedicate some time to make a crisp and precice presentation and don't forget to submit it too."),a.createElement("li",null,"Make sure to select the track that fits best to your project."))),a.createElement("div",{id:"judging"},a.createElement("h3",{className:"text-2xl mt-6 font-bold"},"Judging"),a.createElement("h4",{className:"text-l mt-4 font-bold"},"Judging Timeline on Sunday"),a.createElement("ul",null,a.createElement("li",null,"11:30 AM: Hackathon submission deadline"),a.createElement("li",null,"12 PM - 4:30 PM: Pitching sessions"),a.createElement("li",{className:"pl-4"}," ","Hacking teams will pitch in a 10 min rhythm"),a.createElement("li",{className:"pl-4"}," ","Judges will have 3 min to pre-review your submission"),a.createElement("li",{className:"pl-4 font-bold"}," You have 3 min for your pitch"),a.createElement("li",{className:"pl-4"}," 2 min Q&A after the pitch"),a.createElement("li",null,"5:30 PM - 7 PM: Closing ceremony with winner pitches"),a.createElement("li",{className:"pl-4"},"The winning teams of each track, each excellence award and the meta award will present briefly at the closing ceremony. Be prepared to come to the stage and describe what your project does (similar to your pitch for the judges).")),a.createElement("h4",{className:"text-l mt-4 font-bold"},"When and where do you present in front of the Judges?"),a.createElement("p",null,"Judging takes place on the 1st floor. There are six clearly marked judging rooms located directly next to each other. Volunteers can help you find the way! Once the hacking phase is over and the judging phase begins, you can check the Submissions Tool to find out the room and time for your team's presentation."),a.createElement("h4",{className:"text-lg mt-4 font-bold"},"Judging Criteria"),a.createElement("h5",{className:"mt-4 font-bold"},"The 4 Track Awards"),a.createElement("p",null,"You will pitch your project in front of a group of 3 judges. There will be a Technical Judge, a Product Judge, and a Concept Judge. They will each focus on different parts of your project."),a.createElement("h5",{className:"mt-4 font-bold"},"Technical Judges:"),a.createElement("ul",null,a.createElement("li",null,"Technical complexity and quality"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"What technical challenges does the project address?"),a.createElement("li",null,"Is the code and architecture well-designed and high quality?")),a.createElement("li",null,"Implementation and execution"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is the code efficient and optimized?"),a.createElement("li",null,"Is the codebase clean and maintainable?")),a.createElement("li",null,"Functionality"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project work?"),a.createElement("li",null,"Is the solution complete and functional, or does the team have a clear plan on how they would finish it?")),a.createElement("li",null,"Innovation and creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the project use new technologies?"),a.createElement("li",null,"Is there a creative approach to problem-solving?"))),a.createElement("h5",{className:"mt-4 font-bold"},"Product Judges:"),a.createElement("ul",null,a.createElement("li",null,"Innovation and creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is this something completely new or are there already existing projects working on a similar scope? What is the differentiator?"),a.createElement("li",null,"Does the project demonstrate creative problem-solving?")),a.createElement("li",null,"Practicality and feasibility"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the project have the potential for real-world impact?"),a.createElement("li",null,"Is the implementation feasible in practice?")),a.createElement("li",null,"Communication and presentation"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is the team able to clearly communicate the project and its value?"))),a.createElement("h5",{className:" mt-4 font-bold"},"Concept Judges:"),a.createElement("ul",null,a.createElement("li",null,"Idea, concept, and vision"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the concept have a strong vision?"),a.createElement("li",null,"What is the wow or fun factor of the idea?"),a.createElement("li",null,"How well does the project fit the hackathon track?")),a.createElement("li",null,"Manifesto and values"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project align with the overall theme of the hackathon and with the stated values in the ETHBerlin04 Manifesto?"),a.createElement("li",null,"What is the impact and purpose of the project?"))),a.createElement("h5",{className:"mt-4 font-bold"},"The Meta Award"),a.createElement("p",null,"This track is being judged by ETHBerlin core team members. Apart from regular technicality and usability, the Meta Award judges will look at:"),a.createElement("ul",null,a.createElement("li",null,"Improvement of the ETHBerlin experience"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How does the project improve the overall ETHBerlin experience?"),a.createElement("li",null,"Does the project address specific pain points?"),a.createElement("li",null,"How well does the project align with the values and goals of ETHBerlin?")),a.createElement("li",null,"Practicality and scalability"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project integrate with existing tools and infrastructure?"),a.createElement("li",null,"How does the project perform under typical hackathon use cases?")),a.createElement("li",null,"Creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How creative is the approach to solving ETHBerlin-specific challenges?"),a.createElement("li",null,"Is the project original or does it enhance existing tools in innovative ways?")),a.createElement("li",null,"Contributions"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the contribution address a critical issue or add a valuable feature?"),a.createElement("li",null,"How will users or developers benefit from this contribution?"),a.createElement("li",null,"Is the code well-written, clean, and maintainable?"),a.createElement("li",null,"Is the contribution well-documented?"),a.createElement("li",null,"How well does the contribution integrate with the existing codebase?"))),a.createElement("h5",{className:"mt-4 font-bold"},"The 3 Excellence Awards"),a.createElement("p",null,"You will be able to select what you are most proud of about your submission: the smart contracts, the social impact or the user experience. A group of expert judges per excellence-award will digitally review and judge the respective projects. You don’t have to pitch in front of the excellence award judges.")),a.createElement("div",{id:"voting"},a.createElement("h2",{className:"text-2xl mt-8 font-bold"},"After the Hackathon"),a.createElement("h3",{className:"text-xl mt-6 font-bold"},"Voting"),a.createElement("p",null,"In addition, all submissions will be reviewed by you, all ETHBerlin attendees, after the hackathon! Within a one week time window you will be able vote on the overall winner. The voting process will be explained soon.")),a.createElement("div",{id:"party"},a.createElement("h3",{className:"text-xl mt-6 font-bold"},"After party"),a.createElement("p",null,"It would not be ETHBerlin without an after party."," ",a.createElement("a",{href:"/experiences#party"},"Read more"),"."))),a.createElement(r.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:"Ground Floor (#0)",activeMap:o.Z,activeRoomClass:"nodeCafe"}),a.createElement("div",{className:"flex justify-center"})))}},4787:function(e,t,n){t.Z=n.p+"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png"}}]); -//# sourceMappingURL=component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js.map \ No newline at end of file +"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[813],{7336:function(e,t,n){var a=n(7294);t.Z=e=>{let{className:t}=e;return a.createElement("span",{className:"font-ocra text-sm "+t+" break-all"},"ETHBERLIN04<<<{const[e,t]=a.useState(!1);return a.createElement(l.Z,null,a.createElement("div",{className:"textbox text-base decorate-links"},a.createElement("h1",{className:"mb-4 font-ocra underline text-berlin-red"},"<t(!0)},a.createElement("span",{className:"align-middle"},a.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),a.createElement("span",{className:"underline"},"Helpdesk Location"))),a.createElement("li",null,"Helpdesk opening hours:",a.createElement("ul",{className:"leading-none"},a.createElement("li",{className:"mt-2"},"Friday from hacking start (19:00) until midnight"),a.createElement("li",null,"Saturday from 08:00 to midnight "),a.createElement("li",null," Sunday from 08:00 to submission deadline (11:30)")))),a.createElement("h4",{className:"text-l mt-4 font-bold"},"Details "),a.createElement("p",null,"As with all previous ETHBerlins we've made sure to have a team of amazing mentors ready to help you build the best possible projects throughout the weekend. No questions are too small or too big to ask. As a hacker you can find the mentors in person as per the TL;DR above. You can also contact them with any questions you might have in the Matrix room that's also listed in the TL;DR. If you ask the question in the middle of the night you might not get a reply right away, but we will make sure to address it first thing in the morning."),a.createElement("p",null,"We encourage hackers to help each other out and keep an eye on the mentoring matrix channel. There might be some hackers with very specific expert knowledge and it would be great if this could be shared."),a.createElement("p",null,"You might also see the mentors throughout the venue. They'll be wearing a button/badge on their shirt saying \"Mentor\". They're all very friendly so don't hesitate to ask them a question or get their feedback on something."),a.createElement("div",{id:"submissions"},a.createElement("h3",{className:"text-2xl mt-6 font-bold"},"Submissions"),a.createElement("p",null,"This year thanks to our amazing Kirill, we've built our own tool for submissions and judging. The tool is open source, simple to use and should make the job of judging and tallying scores simple and fast."),a.createElement("p",null,"If you run into any problems or have any feedback it would be much appreciated if you would open an issue"," ",a.createElement("a",{href:"https://github.com/ethb3rlin/Submi-ions/issues",target:"_blank",rel:"noreferrer noopener"},"in the github repo"),"."),a.createElement("b",null,"The general flow for using the tool is as follows:"),a.createElement("ul",null,a.createElement("li",null,"Go to"," ",a.createElement("a",{href:"https://projects.ethberlin.org/",target:"_blank",rel:"noreferrer noopener"},"projects.ethberlin.org")," ",'and sign in with your Zupass credentials to receive your role as "hacker".'),a.createElement("li",null,"Create or join an existing team"),a.createElement("li",null,"Now you can submit projects and join team."),a.createElement("li",null,'To submit a project click the "Submit a project" button in the top bar.'),a.createElement("li",null,"There is a simple template with information you should add, but feel free to add whatever additional information you find relevant for your submission."),a.createElement("li",null,"Make sure to submit everything before the deadline Sunday 26th at 11:30, when submissions close."),a.createElement("li",null,"Once submissions are closed keep an eye on the general matrix channel, where we will provide further instructions for when your team will have to present to the judges.")),a.createElement("b",null,"Some things to keep in mind:"),a.createElement("ul",null,a.createElement("li",null,"Put as much information into the Github, Radicle, or whatever code collaboration platform you use, about the project so that judges and other hackers only need to look in one place to learn as much as possible about the project."),a.createElement("li",null,"Dedicate some time to make a crisp and precice presentation and don't forget to submit it too."),a.createElement("li",null,"Make sure to select the track that fits best to your project."))),a.createElement("div",{id:"judging"},a.createElement("h3",{className:"text-2xl mt-6 font-bold"},"Judging"),a.createElement("h4",{className:"text-l mt-4 font-bold"},"Judging Timeline on Sunday"),a.createElement("ul",null,a.createElement("li",null,"11:30 AM: Hackathon submission deadline"),a.createElement("li",null,"12 PM - 4:30 PM: Pitching sessions"),a.createElement("li",{className:"pl-4"}," ","Hacking teams will pitch in a 10 min rhythm"),a.createElement("li",{className:"pl-4"}," ","Judges will have 3 min to pre-review your submission"),a.createElement("li",{className:"pl-4 font-bold"}," You have 3 min for your pitch"),a.createElement("li",{className:"pl-4"}," 2 min Q&A after the pitch"),a.createElement("li",null,"5:30 PM - 7 PM: Closing ceremony with winner pitches"),a.createElement("li",{className:"pl-4"},"The winning teams of each track, each excellence award and the meta award will present briefly at the closing ceremony. Be prepared to come to the stage and describe what your project does (similar to your pitch for the judges).")),a.createElement("h4",{className:"text-l mt-4 font-bold"},"When and where do you present in front of the Judges?"),a.createElement("p",null,"Judging takes place on the 1st floor. There are six clearly marked judging rooms located directly next to each other. Volunteers can help you find the way! Once the hacking phase is over and the judging phase begins, you can check the Submissions Tool to find out the room and time for your team's presentation."),a.createElement("h4",{className:"text-lg mt-4 font-bold"},"Judging Criteria"),a.createElement("h5",{className:"mt-4 font-bold"},"The 4 Track Awards"),a.createElement("p",null,"You will pitch your project in front of a group of 3 judges. There will be a Technical Judge, a Product Judge, and a Concept Judge. They will each focus on different parts of your project."),a.createElement("h5",{className:"mt-4 font-bold"},"Technical Judges:"),a.createElement("ul",null,a.createElement("li",null,"Technical complexity and quality"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"What technical challenges does the project address?"),a.createElement("li",null,"Is the code and architecture well-designed and high quality?")),a.createElement("li",null,"Implementation and execution"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is the code efficient and optimized?"),a.createElement("li",null,"Is the codebase clean and maintainable?")),a.createElement("li",null,"Functionality"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project work?"),a.createElement("li",null,"Is the solution complete and functional, or does the team have a clear plan on how they would finish it?")),a.createElement("li",null,"Innovation and creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the project use new technologies?"),a.createElement("li",null,"Is there a creative approach to problem-solving?"))),a.createElement("h5",{className:"mt-4 font-bold"},"Product Judges:"),a.createElement("ul",null,a.createElement("li",null,"Innovation and creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is this something completely new or are there already existing projects working on a similar scope? What is the differentiator?"),a.createElement("li",null,"Does the project demonstrate creative problem-solving?")),a.createElement("li",null,"Practicality and feasibility"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the project have the potential for real-world impact?"),a.createElement("li",null,"Is the implementation feasible in practice?")),a.createElement("li",null,"Communication and presentation"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Is the team able to clearly communicate the project and its value?"))),a.createElement("h5",{className:" mt-4 font-bold"},"Concept Judges:"),a.createElement("ul",null,a.createElement("li",null,"Idea, concept, and vision"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the concept have a strong vision?"),a.createElement("li",null,"What is the wow or fun factor of the idea?"),a.createElement("li",null,"How well does the project fit the hackathon track?")),a.createElement("li",null,"Manifesto and values"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project align with the overall theme of the hackathon and with the stated values in the ETHBerlin04 Manifesto?"),a.createElement("li",null,"What is the impact and purpose of the project?"))),a.createElement("h5",{className:"mt-4 font-bold"},"The Meta Award"),a.createElement("p",null,"This track is being judged by ETHBerlin core team members. Apart from regular technicality and usability, the Meta Award judges will look at:"),a.createElement("ul",null,a.createElement("li",null,"Improvement of the ETHBerlin experience"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How does the project improve the overall ETHBerlin experience?"),a.createElement("li",null,"Does the project address specific pain points?"),a.createElement("li",null,"How well does the project align with the values and goals of ETHBerlin?")),a.createElement("li",null,"Practicality and scalability"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How well does the project integrate with existing tools and infrastructure?"),a.createElement("li",null,"How does the project perform under typical hackathon use cases?")),a.createElement("li",null,"Creativity"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"How creative is the approach to solving ETHBerlin-specific challenges?"),a.createElement("li",null,"Is the project original or does it enhance existing tools in innovative ways?")),a.createElement("li",null,"Contributions"),a.createElement("ul",{className:"ml-6"},a.createElement("li",null,"Does the contribution address a critical issue or add a valuable feature?"),a.createElement("li",null,"How will users or developers benefit from this contribution?"),a.createElement("li",null,"Is the code well-written, clean, and maintainable?"),a.createElement("li",null,"Is the contribution well-documented?"),a.createElement("li",null,"How well does the contribution integrate with the existing codebase?"))),a.createElement("h5",{className:"mt-4 font-bold"},"The 3 Excellence Awards"),a.createElement("p",null,"You will be able to select what you are most proud of about your submission: the smart contracts, the social impact or the user experience. A group of expert judges per excellence-award will digitally review and judge the respective projects. You don’t have to pitch in front of the excellence award judges.")),a.createElement("div",{id:"voting"},a.createElement("h2",{className:"text-2xl mt-8 font-bold"},"After the Hackathon"),a.createElement("h3",{className:"text-xl mt-6 font-bold"},"Voting"),a.createElement("p",null,"In addition, all submissions will be reviewed by you, all ETHBerlin attendees, after the hackathon! Within a one week time window you will be able vote on the overall winner. The voting process will be explained soon.")),a.createElement("div",{id:"party"},a.createElement("h3",{className:"text-xl mt-6 font-bold"},"After party"),a.createElement("p",null,"It would not be ETHBerlin without an after party."," ",a.createElement("a",{href:"/experiences#party"},"Read more"),"."))),a.createElement(r.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:"Ground Floor (#0)",activeMap:o.Z,activeRoomClass:"nodeCafe"}),a.createElement("div",{className:"flex justify-center"})))}},4787:function(e,t,n){t.Z=n.p+"static/groundFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png"}}]); +//# sourceMappingURL=component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js.map \ No newline at end of file diff --git a/component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js.map b/component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js.map similarity index 99% rename from component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js.map rename to component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js.map index 3f26980f..0769f740 100644 --- a/component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js.map +++ b/component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js.map @@ -1 +1 @@ -{"version":3,"file":"component---src-pages-hacker-manual-jsx-a598538e06b05ad27ac8.js","mappings":"yHAQA,IANkB,QAAC,UAAEA,GAAH,SAChB,wBAAMA,UAAS,qBAAuBA,EAAvB,cAA8C,oCAD7C,C,oFC+1BlB,UA31Ba,KACX,MAAOC,EAAgBC,GAAqBC,EAAAA,UAAe,GAO3D,OACE,gBAAC,IAAD,KACE,uBAAKH,UAAU,oCACb,sBAAIA,UAAU,4CAA2C,oBAGzD,yBAAG,+DACH,uBAAKA,UAAU,QACb,sBAAIA,UAAU,0BAAyB,SACvC,0BACE,0BAAI,mCAC+B,IACjC,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,uBAIH,0BAAI,yBACqB,IACvB,qBACEF,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,qCAIH,0BAAI,0EAEO,IACT,qBACEF,KAAK,qBACLC,OAAO,SACPC,IAAI,uBACL,eAIH,0BAAI,wBACoB,IACtB,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,WAEG,OAAK,IACT,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,WAEG,0CAEN,0BAAI,6FAEkB,IACpB,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,2BAIH,0BAAI,mEAKR,sBAAIN,UAAU,2BAA0B,YACxC,uBAAKA,UAAU,QACb,sBAAIA,UAAU,gBAAe,wBAC7B,0BACE,0BACE,qBAAGI,KAAK,WAAU,4BAEpB,0BACE,qBAAGA,KAAK,gBAAe,6BAEzB,0BACE,qBAAGA,KAAK,WAAU,8BAEpB,0BACE,qBAAGA,KAAK,YAAW,qBAErB,0BACE,qBAAGA,KAAK,SAAQ,qBAGpB,sBAAIJ,UAAU,gBAAe,wBAC7B,0BACE,0BACE,qBAAGI,KAAK,SAAQ,sBAElB,0BACE,qBAAGA,KAAK,YAAW,oCAErB,0BACE,qBAAGA,KAAK,kBAAiB,sBAE3B,0BACE,qBAAGA,KAAK,YAAW,8BAErB,0BACE,qBAAGA,KAAK,gBAAe,gBAEzB,0BACE,qBAAGA,KAAK,YAAW,aAGvB,sBAAIJ,UAAU,gBAAe,uBAC7B,0BACE,0BACE,qBAAGI,KAAK,WAAU,aAIxB,uBAAKJ,UAAU,wBACf,uBAAKO,GAAG,UACN,sBAAIP,UAAU,2BAA0B,wBACxC,sBAAIA,UAAU,qBAAoB,4BAClC,sBAAIA,UAAU,yBAAwB,oBACtC,yBAAG,0WAM6B,IAC9B,qBACEI,KAAK,0BACLE,IAAI,sBACJD,OAAO,UACR,iBAEI,IAAI,uBAGX,sBAAIL,UAAU,yBAAwB,mBACtC,yBAAG,mNAIS,IACV,qBACEI,KAAK,oCACLC,OAAO,SACPC,IAAI,uBACL,aAEI,IAAI,4CACiC,IAC1C,qBACEF,KAAK,sCACLC,OAAO,SACPC,IAAI,uBACL,YAEI,IAAI,uGAEwB,IACjC,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,aAEI,IAAI,oHAIX,sBAAIN,UAAU,yBAAwB,gBAEtC,yBAAG,qJAGmB,IACpB,qBACEI,KAAK,8DACLC,OAAO,SACPC,IAAI,uBACL,oBAEI,IAAI,UACD,IACR,qBACEF,KAAK,8DACLC,OAAO,SACPC,IAAI,uBACL,yBAEG,6MAMN,yBAAG,4EAEI,IACL,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,cAEI,IAAI,+HAEiD,IAC1D,qBACEF,KAAK,6CACLC,OAAO,SACPC,IAAI,uBACL,iBAEI,IAAI,uBACY,IACrB,qBACEF,KAAK,8EACLC,OAAO,SACPC,IAAI,uBACL,sBAEI,IAAI,wDAIX,yBAAG,8NAOL,uBAAKN,UAAU,wBACf,uBAAKO,GAAG,eACN,sBAAIP,UAAU,0BAAyB,2BACvC,yBAAG,+HAEwD,IACzD,qBACEI,KAAK,2CACLE,IAAI,sBACJD,OAAO,UACR,UAEI,IAAI,iFAKb,uBAAKL,UAAU,wBACf,uBAAKO,GAAG,UACN,sBAAIP,UAAU,0BAAyB,4BACvC,yBAAG,mNAMH,yBAAG,QACK,IACN,qBACEI,KAAK,qBACLC,OAAO,SACPC,IAAI,uBACL,cAEI,IAAI,iKAKX,yBAAG,yLAML,uBAAKC,GAAG,WACN,sBAAIP,UAAU,0BAAyB,oBACvC,yBAAG,sLAGqD,IACtD,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,uBAIH,yBAAG,qCAEL,uBAAKN,UAAU,wBACf,uBAAKO,GAAG,QACN,sBAAIP,UAAU,0BAAyB,mBACvC,yBAAG,iQAIoD,IACrD,0BAAI,WAAY,oLAKpB,uBAAKO,GAAG,QACN,sBAAIP,UAAU,2BAA0B,wBACxC,sBAAIA,UAAU,0BAAyB,qBACvC,yBAAG,4CACH,sBAAIA,UAAU,yBAAwB,iBACtC,0BACE,0BAAI,4CACJ,0BAAI,8FAIJ,0BAAI,oMAKJ,0BAAI,8CACJ,0BAAI,sEAGJ,0BAAI,gBACW,qBAAGI,KAAK,oBAAmB,mBAAmB,4CAI/D,sBAAIJ,UAAU,yBAAwB,mCAGtC,0BACE,0BAAI,oDACJ,0BAAI,yDACJ,0BAAI,4JAOR,uBAAKO,GAAG,WACN,sBAAIP,UAAU,0BAAyB,mCAGvC,yBAAG,0EAIH,yBAAG,6DACH,0BACE,0BAAI,WACO,IACT,qBACEI,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,0BAIH,0BAAI,WACO,IACT,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,2BAKL,yBAAG,kHAKL,uBAAKC,GAAG,iBACN,sBAAIP,UAAU,0BAAyB,qBACvC,sBAAIA,UAAU,yBAAwB,gBACtC,2BAAK,kEAC6D,IAChE,qBAAGI,KAAK,cAAa,aAAa,yGACkC,IACpE,8BAAQ,aAAkB,KAE5B,sBAAIJ,UAAU,QACZ,0BACE,yBAAG,sBAAsB,0OAKzB,2BAAM,0NAMR,0BACE,yBAAG,wBAAwB,wHAG3B,2BAAM,8TAOR,0BACE,yBAAG,wBAAwB,gMAI3B,2BAAM,4UAQR,0BACE,yBAAG,mBAAmB,gNAItB,2BAAM,kHAKV,sBAAIA,UAAU,yBAAwB,qBACtC,2BAAK,kGAE0B,8BAAQ,aAAkB,8CAGzD,sBAAIA,UAAU,QACZ,0BACE,yBAAG,yBAAyB,8FAG9B,0BACE,yBAAG,uBAAuB,mFAG5B,0BACE,yBAAG,yBAAyB,+FAIhC,sBAAIA,UAAU,yBAAwB,OAChC,yBAAG,QAAQ,UAEjB,uBAAKA,UAAU,QAAO,yTAK6B,IACjD,qBACEI,KAAK,mGACLC,OAAO,SACPC,IAAI,uBACL,YAEI,IAAI,2KAG6B,8BAAQ,aAAkB,OAAK,IACrE,qBACEF,KAAK,sBACLC,OAAO,SACPC,IAAI,uBACL,mBAEG,KAGN,sBAAIN,UAAU,yBAAwB,6BACtC,uBAAKA,UAAU,QAAO,kRAIiD,IACrE,8BAAQ,aAAkB,MAG9B,uBAAKA,UAAU,wBACf,uBAAKO,GAAG,WACN,sBAAIP,UAAU,0BAAyB,qBACvC,yBAAG,SACH,0BACE,0BAAI,uDACmD,IACrD,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,yBAIH,0BAAI,6EAGF,0BACEN,UAAW,qCACXQ,QAAS,IAAMN,GAAkB,IAEjC,wBAAMF,UAAU,gBACd,wBAAMS,MAAM,iDAAgD,gBAI9D,wBAAMT,UAAU,aAAY,uBAGhC,0BAAI,0BAEF,sBAAIA,UAAU,gBACZ,sBAAIA,UAAU,QAAO,oDAGrB,0BAAI,oCACJ,0BAAI,wDAIV,sBAAIA,UAAU,yBAAwB,YACtC,yBAAG,8hBAWH,yBAAG,+MAMH,yBAAG,mOAMH,uBAAKO,GAAG,eACN,sBAAIP,UAAU,2BAA0B,eACxC,yBAAG,gNAMH,yBAAG,4GAEsC,IACvC,qBACEI,KAAK,iDACLC,OAAO,SACPC,IAAI,uBACL,sBAEG,KAGN,yBAAG,sDACH,0BACE,0BAAI,QACI,IACN,qBACEF,KAAK,kCACLC,OAAO,SACPC,IAAI,uBACL,0BAEI,IAAI,8EAIX,0BAAI,mCACJ,0BAAI,8CACJ,0BAAI,2EAIJ,0BAAI,2JAKJ,0BAAI,oGAIJ,0BAAI,6KAMN,yBAAG,gCACH,0BACE,0BAAI,wOAMJ,0BAAI,kGAIJ,0BAAI,mEAKR,uBAAKC,GAAG,WACN,sBAAIP,UAAU,2BAA0B,WACxC,sBAAIA,UAAU,yBAAwB,8BAGtC,0BACE,0BAAI,2CACJ,0BAAI,sCACJ,sBAAIA,UAAU,QACX,IAAI,+CAGP,sBAAIA,UAAU,QACX,IAAI,wDAGP,sBAAIA,UAAU,kBAAiB,kCAC/B,sBAAIA,UAAU,QAAO,8BACrB,0BAAI,wDACJ,sBAAIA,UAAU,QAAO,yOAOvB,sBAAIA,UAAU,yBAAwB,yDAGtC,yBAAG,2TAOH,sBAAIA,UAAU,0BAAyB,oBACvC,sBAAIA,UAAU,kBAAiB,sBAC/B,yBAAG,gMAKH,sBAAIA,UAAU,kBAAiB,qBAC/B,0BACE,0BAAI,oCACJ,sBAAIA,UAAU,QACZ,0BAAI,uDACJ,0BAAI,iEAIN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,wCACJ,0BAAI,4CAEN,0BAAI,iBACJ,sBAAIA,UAAU,QACZ,0BAAI,mCACJ,0BAAI,6GAKN,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,0CACJ,0BAAI,sDAGR,sBAAIA,UAAU,kBAAiB,mBAC/B,0BACE,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,mIAKJ,0BAAI,2DAEN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,8DAGJ,0BAAI,gDAEN,0BAAI,kCACJ,sBAAIA,UAAU,QACZ,0BAAI,wEAMR,sBAAIA,UAAU,mBAAkB,mBAChC,0BACE,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,0CACJ,0BAAI,8CACJ,0BAAI,uDAEN,0BAAI,wBACJ,sBAAIA,UAAU,QACZ,0BAAI,oIAKJ,0BAAI,oDAGR,sBAAIA,UAAU,kBAAiB,kBAC/B,yBAAG,iJAKH,0BACE,0BAAI,2CACJ,sBAAIA,UAAU,QACZ,0BAAI,kEAGJ,0BAAI,kDACJ,0BAAI,4EAKN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,+EAIJ,0BAAI,oEAKN,0BAAI,cACJ,sBAAIA,UAAU,QACZ,0BAAI,0EAIJ,0BAAI,kFAKN,0BAAI,iBACJ,sBAAIA,UAAU,QACZ,0BAAI,6EAIJ,0BAAI,gEAGJ,0BAAI,sDACJ,0BAAI,wCACJ,0BAAI,0EAMR,sBAAIA,UAAU,kBAAiB,2BAC/B,yBAAG,wTAQL,uBAAKO,GAAG,UACN,sBAAIP,UAAU,2BAA0B,uBACxC,sBAAIA,UAAU,0BAAyB,UACvC,yBAAG,8NAOL,uBAAKO,GAAG,SACN,sBAAIP,UAAU,0BAAyB,eACvC,yBAAG,oDACiD,IAClD,qBAAGI,KAAK,sBAAqB,aAAa,OAKhD,gBAAC,IAAD,CACEM,OAAQT,EACRU,iBA50BkBC,IACxBA,EAAEC,kBACFX,GAAkB,EAAlB,EA20BMY,cAAe,oBACfC,UAAWC,EAAAA,EACXC,gBAAiB,aAGnB,uBAAKjB,UAAU,yBA70BrB,C,uBCdF,IAAe,IAA0B,yD","sources":["webpack://ethberlin/./src/components/ETHBerlin.jsx","webpack://ethberlin/./src/pages/hacker-manual.jsx","webpack://ethberlin/./src/images/groundFloor.png"],"sourcesContent":["import React from \"react\";\n\nconst ETHBerlin = ({ className }) => (\n \n ETHBERLIN04<<<<IDENTITY<<CRISIS<<\n \n);\n\nexport default ETHBerlin;\n","import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport ETHBerlin from \"../components/ETHBerlin\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport groundFloor from \"../images/groundFloor.png\";\n\nconst Hack = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n return (\n \n
\n

\n <<H<ACKER MANUAL\n

\n

This section aims to help you to prepare for the hackathon.

\n
\n

TL;DR

\n
    \n
  • \n Join the conversation on Matrix:{\" \"}\n \n #ethberlin:dod.ngo\n \n
  • \n
  • \n Find a team on GitHub:{\" \"}\n \n github.com/ethb3rlin/find-a-team\n \n
  • \n
  • \n Register your attendance on Zupass with your ETHBerlin04 email\n address:{\" \"}\n \n zupass.org\n \n
  • \n
  • \n Get testnet Ether for{\" \"}\n \n Sepolia\n and{\" \"}\n \n Holesky\n using your Zupass semaphore identity.\n
  • \n
  • \n Create an account on our Submißion tool and unlock it with your Zupass\n semaphore identity:{\" \"}\n \n projects.ethberlin.org\n \n
  • \n
  • \n Visit this page frequently as we update the manual regularly.\n
  • \n
\n
\n

Overview

\n
\n

Before the Hackathon

\n \n

During the Hackathon

\n \n

After the Hackathon

\n \n
\n
\n
\n

Before the Hackathon

\n

Travel and Accommodation

\n

Travel to Berlin

\n

\n Berlin has one airport called Berlin Brandenburg Airport \"Willy\n Brandt\" (BER) and is well connected with railway. You can take a\n train from European cities such as Stockholm or Paris to travel with\n the convenience of comfortable high-speed trains with internet\n access, avoid the long security lines, missing luggage, and decrease\n your CO2 footprint. Check the{\" \"}\n \n Deutsche Bahn\n {\" \"}\n website for routes.\n

\n

Urban Transport

\n

\n Berlin is a bike friendly city. Most of the times the quickest and\n easiest way to getting from A to B is by bike. If you are staying\n longer than just a few days, you might want to consider renting a\n bike from{\" \"}\n \n Swapfiets\n {\" \"}\n or buying daily/monthly subscription from{\" \"}\n \n nextbike\n {\" \"}\n (bike sharing). You will also find many scooters and bikes that you\n can grab around the city. On the{\" \"}\n \n Jelbi App\n {\" \"}\n you can conveniently find the public transportation tickets and info\n as well as carsharing, scooters, bikes etc.\n

\n

Accomodation

\n\n

\n Finding a hotel or other affordable accommodation in Berlin can be\n quite a challenge in itself. Since this year's ETHBerlin is\n coinciding with the{\" \"}\n \n German Cup Final\n {\" \"}\n and the{\" \"}\n \n Euroleague Final Four\n \n , it can be particularly difficult to find a place. We recommend you\n to look for a suitable shelter as soon as you receive your hacker\n confirmation! If you haven't booked anything yet, best do so asap.\n

\n\n

\n Aside from hotels and Airbnbs, you can check offers on local options\n like{\" \"}\n \n WG-Gesucht\n {\" \"}\n and Facebook groups or post your own requests post there. However,\n please be wary of the risks and potential scams. Join our{\" \"}\n \n #couchsurfing\n {\" \"}\n chat and fill in the{\" \"}\n \n coordination sheet\n {\" \"}\n if you are offering or looking for a place to sleep.\n

\n\n

\n Our venue is open 24/2 and welcomes hacking through the night. There\n are many cozy corners with sofas, beanbags etc. However, we still\n would recommend to look for a place to leave your stuff, sleep, and\n take a shower.\n

\n
\n
\n
\n

Find a Team/Hacker/Idea

\n

\n Are you missing a team, a hacker, an idea? Or you have an idea that\n can be implemented during the hackathon? Find a match on{\" \"}\n \n Github\n {\" \"}\n or join the Hacker Matchmaking session on Friday after the opening\n ceremony.\n

\n
\n
\n
\n

Generate your Zupass PCD

\n

\n This year, we have a PCD (proof-carrying data) integration with\n Zupass for ETHBerlin04. You can prove your attendance to the\n hackathon by generating a zero-knowledge proof through the Zupass\n web application.\n

\n

\n Visit{\" \"}\n \n zupass.org\n {\" \"}\n and sign up (or log in) with the same email address you used to\n register for the hackathon. You will find an active ETHBerlin04\n subscription in your account.\n

\n

\n You will require this PCD for the faucets (if needed) and the final\n submission of your hackathon project as well as voting on other\n people's projects after the hackathon concluded.\n

\n
\n
\n

Connect and Chat

\n

\n The only official communication channel is the ETHBerlin Matrix\n space. Use it to connect with hackers and mentors, and to get\n updates from the organizers throughout the hackathon:{\" \"}\n \n #ethberlin:dod.ngo\n \n

\n

There is no Discord or Telegram.

\n
\n
\n
\n

Food and Drinks

\n

\n As per usual, this one is on us! ETHBerlin will cover all meals and\n drinks for the entire hackathon! This includes breakfasts, lunches,\n dinners, and midnight snacks as well as various soft drinks, mate\n (of course!), water, coffee and beer. In addition to{\" \"}\n regular food, there will be vegan and vegetarian options\n provided. Just come with an open mind, a knowledge-thirsty brain and\n enthusiasm. Meal and snack times will be on the program.\n

\n
\n
\n

During the Hackathon

\n

Hacking and Rules

\n

Read the fine manual or regret it later.

\n

Hacking Rules

\n
    \n
  • A team can not be more than five people.
  • \n
  • \n You must be present at the ETHBerlin venue for your project to be\n eligible for submission.\n
  • \n
  • \n You can plan ahead of time, but all code for your project has to\n be written during the event. Code can only be committed after\n hacking officially starts and only until the submission deadline.\n
  • \n
  • You cannot use another team's source code.
  • \n
  • \n The decision of judges is final for determining prizes and awards.\n
  • \n
  • \n Breaking our Code of Conduct leads\n to the exclusion from the event.\n
  • \n
\n

\n Minimum Submission Requirements\n

\n
    \n
  • A link to the open-source code must be provided.
  • \n
  • A short presentation file must describe your project.
  • \n
  • \n If applicable, the contract address(es) of your deployed demo must\n be provided, either on a testnet of your choice or mainnet of a\n platform of choice.\n
  • \n
\n
\n
\n

\n Faucets for Sepolia and Holesky\n

\n

\n Dedicated testnet-token faucets are available for ETHBerlin04\n hackers.\n

\n

You can receive 500 testnet Ether on Sepolia and Holesky:

\n
    \n
  • \n Sepolia:{\" \"}\n \n sepolia.ethberlin.org\n \n
  • \n
  • \n Holesky:{\" \"}\n \n holesky.ethberlin.org\n \n
  • \n
\n

\n You will have to sign in with Zupass to authorize a faucet drop to\n any of your addresses. Thank you, pk910 <3\n

\n
\n
\n

Tracks and Prizes

\n

Track Awards

\n
\n The track awards are centered around themes that align with our{\" \"}\n manifesto, and what we believe the industry\n needs to re-focus on. The winning teams of the track awards receive{\" \"}\n 7,000 DAI.\n
\n
    \n
  • \n Defensive Tooling: This track is the right choice for you\n if you want to hack on tools that enhance security and privacy.\n It's about building projects that prioritize defense,\n decentralization, and resilience to create a more secure and freer\n world.\n
    \n Think topics like encryption, counter-surveillance, identity\n protection, anonymity, anti-identity, security, local data\n handling, and anything that armors the individual against\n intrusive data collection practices.\n
  • \n
  • \n Freedom to Transact: This track is for you if you want to\n ensure that anyone, anywhere, anytime can facilitate unrestricted\n transactions.\n
    \n We're looking for projects that enable people to access and send\n money, or value, across borders without restrictions, promoting\n financial inclusion. This track is for those who want to hack on\n peer-to-peer solutions, build censorship-resistant applications,\n and ensure that transactions can be private and secure.\n
  • \n
  • \n Social Technologies: This track is all about platforms and\n tools that enable informed and collective decision-making,\n transparent governance, and collaboration and coordination among\n decentralized communities.\n
    \n If you want to build credibly neutral systems for voting,\n governance, and social interaction, and systems that counter\n disproportionate influence of centralized powers then this track\n is for you and your team. Other ideas you could hack on are\n consensus-finding algorithms, sybil resistance, and decentralized\n social reputation.\n
  • \n
  • \n Infrastructure: The backbone of the revolution. This track\n is dedicated to the architects and builders laying down the\n underlying infrastructures that robust distributed public goods\n need to run efficiently and reliably.\n
    \n Projects could include protocol specification and implementations,\n networking, developer tools, and hardware.\n
  • \n
\n

Excellence Awards

\n
\n Back by popular demand, please welcome the Excellence Awards. The\n winners of each of these get 5,000 DAI and these\n are to recognise the following:\n
\n
    \n
  • \n Best Smart Contracts: Outstanding smart contract code\n quality and documentation, security and gas-optimization.\n
  • \n
  • \n Best Social Impact: Outstanding positive impact on\n underserved communities and society as a whole.\n
  • \n
  • \n Best User Experience: Outstanding user experience that does\n not sacrifice on security, privacy or self-custody.\n
  • \n
\n

\n The Meta Award\n

\n
\n We'd like to introduce a new category this year, the Meta Award, as\n an ode to ETHBerlin being powered by many awesome open-source\n projects. So for this one we invite you to go meta by building\n contributions that improve the ETHBerlin experience itself! Projects\n eligible for this award can either pick from our{\" \"}\n \n wishlist\n {\" \"}\n of contributions, or can build an entirely new thing that they\n consider to be a positive impact for future versions of ETHBerlin.\n The winner of this track will receive 4,000 DAI and{\" \"}\n \n DEVCon7 tickets\n \n .\n
\n

The Hacker's Choice Award

\n
\n A prize to be picked by the ETHBerlin hackers. After the hackathon\n weekend, hackers will review all the projects and cast their votes\n for their favorite project. Redistribution of the prize money cannot\n be the essence of the project. The winner of this award will receive{\" \"}\n 7,000 DAI.\n
\n
\n
\n
\n

Help from Mentors

\n TL;DR\n
    \n
  • \n To get help ask questions in the Mentor Matrix room:{\" \"}\n \n #eb4-mentors:dod.ngo\n \n
  • \n
  • \n Or go to the Mentor Helpdesk located in the Node Café on the\n ground floor.\n setIsMapModalOpen(true)}\n >\n \n \n my_location\n \n \n Helpdesk Location\n \n
  • \n
  • \n Helpdesk opening hours:\n
      \n
    • \n Friday from hacking start (19:00) until midnight\n
    • \n
    • Saturday from 08:00 to midnight
    • \n
    • Sunday from 08:00 to submission deadline (11:30)
    • \n
    \n
  • \n
\n

Details

\n

\n As with all previous ETHBerlins we've made sure to have a team of\n amazing mentors ready to help you build the best possible projects\n throughout the weekend. No questions are too small or too big to\n ask. As a hacker you can find the mentors in person as per the TL;DR\n above. You can also contact them with any questions you might have\n in the Matrix room that's also listed in the TL;DR. If you ask the\n question in the middle of the night you might not get a reply right\n away, but we will make sure to address it first thing in the\n morning.\n

\n

\n We encourage hackers to help each other out and keep an eye on the\n mentoring matrix channel. There might be some hackers with very\n specific expert knowledge and it would be great if this could be\n shared.\n

\n

\n You might also see the mentors throughout the venue. They'll be\n wearing a button/badge on their shirt saying \"Mentor\". They're all\n very friendly so don't hesitate to ask them a question or get their\n feedback on something.\n

\n
\n

Submissions

\n

\n This year thanks to our amazing Kirill, we've built our own tool\n for submissions and judging. The tool is open source, simple to\n use and should make the job of judging and tallying scores simple\n and fast.\n

\n

\n If you run into any problems or have any feedback it would be much\n appreciated if you would open an issue{\" \"}\n \n in the github repo\n \n .\n

\n The general flow for using the tool is as follows:\n
    \n
  • \n Go to{\" \"}\n \n projects.ethberlin.org\n {\" \"}\n and sign in with your Zupass credentials to receive your role as\n \"hacker\".\n
  • \n
  • Create or join an existing team
  • \n
  • Now you can submit projects and join team.
  • \n
  • \n To submit a project click the \"Submit a project\" button in the\n top bar.\n
  • \n
  • \n There is a simple template with information you should add, but\n feel free to add whatever additional information you find\n relevant for your submission.\n
  • \n
  • \n Make sure to submit everything before the deadline Sunday 26th\n at 11:30, when submissions close.\n
  • \n
  • \n Once submissions are closed keep an eye on the general matrix\n channel, where we will provide further instructions for when\n your team will have to present to the judges.\n
  • \n
\n Some things to keep in mind:\n
    \n
  • \n Put as much information into the Github, Radicle, or whatever\n code collaboration platform you use, about the project so that\n judges and other hackers only need to look in one place to learn\n as much as possible about the project.\n
  • \n
  • \n Dedicate some time to make a crisp and precice presentation and\n don't forget to submit it too.\n
  • \n
  • \n Make sure to select the track that fits best to your project.\n
  • \n
\n
\n
\n

Judging

\n

\n Judging Timeline on Sunday\n

\n
    \n
  • 11:30 AM: Hackathon submission deadline
  • \n
  • 12 PM - 4:30 PM: Pitching sessions
  • \n
  • \n {\" \"}\n Hacking teams will pitch in a 10 min rhythm\n
  • \n
  • \n {\" \"}\n Judges will have 3 min to pre-review your submission\n
  • \n
  • You have 3 min for your pitch
  • \n
  • 2 min Q&A after the pitch
  • \n
  • 5:30 PM - 7 PM: Closing ceremony with winner pitches
  • \n
  • \n The winning teams of each track, each excellence award and the\n meta award will present briefly at the closing ceremony. Be\n prepared to come to the stage and describe what your project\n does (similar to your pitch for the judges).\n
  • \n
\n

\n When and where do you present in front of the Judges?\n

\n

\n Judging takes place on the 1st floor. There are six clearly marked\n judging rooms located directly next to each other. Volunteers can\n help you find the way! Once the hacking phase is over and the\n judging phase begins, you can check the Submissions Tool to find\n out the room and time for your team's presentation.\n

\n

Judging Criteria

\n
The 4 Track Awards
\n

\n You will pitch your project in front of a group of 3 judges. There\n will be a Technical Judge, a Product Judge, and a Concept Judge.\n They will each focus on different parts of your project.\n

\n
Technical Judges:
\n
    \n
  • Technical complexity and quality
  • \n
      \n
    • What technical challenges does the project address?
    • \n
    • \n Is the code and architecture well-designed and high quality?\n
    • \n
    \n
  • Implementation and execution
  • \n
      \n
    • Is the code efficient and optimized?
    • \n
    • Is the codebase clean and maintainable?
    • \n
    \n
  • Functionality
  • \n
      \n
    • How well does the project work?
    • \n
    • \n Is the solution complete and functional, or does the team have\n a clear plan on how they would finish it?\n
    • \n
    \n
  • Innovation and creativity
  • \n
      \n
    • Does the project use new technologies?
    • \n
    • Is there a creative approach to problem-solving?
    • \n
    \n
\n
Product Judges:
\n
    \n
  • Innovation and creativity
  • \n
      \n
    • \n Is this something completely new or are there already existing\n projects working on a similar scope? What is the\n differentiator?\n
    • \n
    • Does the project demonstrate creative problem-solving?
    • \n
    \n
  • Practicality and feasibility
  • \n
      \n
    • \n Does the project have the potential for real-world impact?\n
    • \n
    • Is the implementation feasible in practice?
    • \n
    \n
  • Communication and presentation
  • \n
      \n
    • \n Is the team able to clearly communicate the project and its\n value?\n
    • \n
    \n
\n
Concept Judges:
\n
    \n
  • Idea, concept, and vision
  • \n
      \n
    • Does the concept have a strong vision?
    • \n
    • What is the wow or fun factor of the idea?
    • \n
    • How well does the project fit the hackathon track?
    • \n
    \n
  • Manifesto and values
  • \n
      \n
    • \n How well does the project align with the overall theme of the\n hackathon and with the stated values in the ETHBerlin04\n Manifesto?\n
    • \n
    • What is the impact and purpose of the project?
    • \n
    \n
\n
The Meta Award
\n

\n This track is being judged by ETHBerlin core team members. Apart\n from regular technicality and usability, the Meta Award judges\n will look at:\n

\n
    \n
  • Improvement of the ETHBerlin experience
  • \n
      \n
    • \n How does the project improve the overall ETHBerlin experience?\n
    • \n
    • Does the project address specific pain points?
    • \n
    • \n How well does the project align with the values and goals of\n ETHBerlin?\n
    • \n
    \n
  • Practicality and scalability
  • \n
      \n
    • \n How well does the project integrate with existing tools and\n infrastructure?\n
    • \n
    • \n How does the project perform under typical hackathon use\n cases?\n
    • \n
    \n
  • Creativity
  • \n
      \n
    • \n How creative is the approach to solving ETHBerlin-specific\n challenges?\n
    • \n
    • \n Is the project original or does it enhance existing tools in\n innovative ways?\n
    • \n
    \n
  • Contributions
  • \n
      \n
    • \n Does the contribution address a critical issue or add a\n valuable feature?\n
    • \n
    • \n How will users or developers benefit from this contribution?\n
    • \n
    • Is the code well-written, clean, and maintainable?
    • \n
    • Is the contribution well-documented?
    • \n
    • \n How well does the contribution integrate with the existing\n codebase?\n
    • \n
    \n
\n
The 3 Excellence Awards
\n

\n You will be able to select what you are most proud of about your\n submission: the smart contracts, the social impact or the user\n experience. A group of expert judges per excellence-award will\n digitally review and judge the respective projects. You don’t have\n to pitch in front of the excellence award judges.\n

\n
\n
\n

After the Hackathon

\n

Voting

\n

\n In addition, all submissions will be reviewed by you, all\n ETHBerlin attendees, after the hackathon! Within a one week time\n window you will be able vote on the overall winner. The voting\n process will be explained soon.\n

\n
\n
\n

After party

\n

\n It would not be ETHBerlin without an after party.{\" \"}\n Read more.\n

\n
\n
\n\n \n\n
\n
\n
\n );\n};\n\nexport default Hack;\n","export default __webpack_public_path__ + \"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png\";"],"names":["className","isMapModalOpen","setIsMapModalOpen","React","href","target","rel","id","onClick","class","isOpen","handleCloseModal","e","stopPropagation","activeMapName","activeMap","groundFloor","activeRoomClass"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"component---src-pages-hacker-manual-jsx-b505d06e53fe8931a5a4.js","mappings":"yHAQA,IANkB,QAAC,UAAEA,GAAH,SAChB,wBAAMA,UAAS,qBAAuBA,EAAvB,cAA8C,oCAD7C,C,oFC+1BlB,UA31Ba,KACX,MAAOC,EAAgBC,GAAqBC,EAAAA,UAAe,GAO3D,OACE,gBAAC,IAAD,KACE,uBAAKH,UAAU,oCACb,sBAAIA,UAAU,4CAA2C,oBAGzD,yBAAG,+DACH,uBAAKA,UAAU,QACb,sBAAIA,UAAU,0BAAyB,SACvC,0BACE,0BAAI,mCAC+B,IACjC,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,uBAIH,0BAAI,yBACqB,IACvB,qBACEF,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,qCAIH,0BAAI,0EAEO,IACT,qBACEF,KAAK,qBACLC,OAAO,SACPC,IAAI,uBACL,eAIH,0BAAI,wBACoB,IACtB,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,WAEG,OAAK,IACT,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,WAEG,0CAEN,0BAAI,6FAEkB,IACpB,qBACEF,KAAK,iCACLC,OAAO,SACPC,IAAI,uBACL,2BAIH,0BAAI,mEAKR,sBAAIN,UAAU,2BAA0B,YACxC,uBAAKA,UAAU,QACb,sBAAIA,UAAU,gBAAe,wBAC7B,0BACE,0BACE,qBAAGI,KAAK,WAAU,4BAEpB,0BACE,qBAAGA,KAAK,gBAAe,6BAEzB,0BACE,qBAAGA,KAAK,WAAU,8BAEpB,0BACE,qBAAGA,KAAK,YAAW,qBAErB,0BACE,qBAAGA,KAAK,SAAQ,qBAGpB,sBAAIJ,UAAU,gBAAe,wBAC7B,0BACE,0BACE,qBAAGI,KAAK,SAAQ,sBAElB,0BACE,qBAAGA,KAAK,YAAW,oCAErB,0BACE,qBAAGA,KAAK,kBAAiB,sBAE3B,0BACE,qBAAGA,KAAK,YAAW,8BAErB,0BACE,qBAAGA,KAAK,gBAAe,gBAEzB,0BACE,qBAAGA,KAAK,YAAW,aAGvB,sBAAIJ,UAAU,gBAAe,uBAC7B,0BACE,0BACE,qBAAGI,KAAK,WAAU,aAIxB,uBAAKJ,UAAU,wBACf,uBAAKO,GAAG,UACN,sBAAIP,UAAU,2BAA0B,wBACxC,sBAAIA,UAAU,qBAAoB,4BAClC,sBAAIA,UAAU,yBAAwB,oBACtC,yBAAG,0WAM6B,IAC9B,qBACEI,KAAK,0BACLE,IAAI,sBACJD,OAAO,UACR,iBAEI,IAAI,uBAGX,sBAAIL,UAAU,yBAAwB,mBACtC,yBAAG,mNAIS,IACV,qBACEI,KAAK,oCACLC,OAAO,SACPC,IAAI,uBACL,aAEI,IAAI,4CACiC,IAC1C,qBACEF,KAAK,sCACLC,OAAO,SACPC,IAAI,uBACL,YAEI,IAAI,uGAEwB,IACjC,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,aAEI,IAAI,oHAIX,sBAAIN,UAAU,yBAAwB,gBAEtC,yBAAG,qJAGmB,IACpB,qBACEI,KAAK,8DACLC,OAAO,SACPC,IAAI,uBACL,oBAEI,IAAI,UACD,IACR,qBACEF,KAAK,8DACLC,OAAO,SACPC,IAAI,uBACL,yBAEG,6MAMN,yBAAG,4EAEI,IACL,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,cAEI,IAAI,+HAEiD,IAC1D,qBACEF,KAAK,6CACLC,OAAO,SACPC,IAAI,uBACL,iBAEI,IAAI,uBACY,IACrB,qBACEF,KAAK,8EACLC,OAAO,SACPC,IAAI,uBACL,sBAEI,IAAI,wDAIX,yBAAG,8NAOL,uBAAKN,UAAU,wBACf,uBAAKO,GAAG,eACN,sBAAIP,UAAU,0BAAyB,2BACvC,yBAAG,+HAEwD,IACzD,qBACEI,KAAK,2CACLE,IAAI,sBACJD,OAAO,UACR,UAEI,IAAI,iFAKb,uBAAKL,UAAU,wBACf,uBAAKO,GAAG,UACN,sBAAIP,UAAU,0BAAyB,4BACvC,yBAAG,mNAMH,yBAAG,QACK,IACN,qBACEI,KAAK,qBACLC,OAAO,SACPC,IAAI,uBACL,cAEI,IAAI,iKAKX,yBAAG,yLAML,uBAAKC,GAAG,WACN,sBAAIP,UAAU,0BAAyB,oBACvC,yBAAG,sLAGqD,IACtD,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,uBAIH,yBAAG,qCAEL,uBAAKN,UAAU,wBACf,uBAAKO,GAAG,QACN,sBAAIP,UAAU,0BAAyB,mBACvC,yBAAG,iQAIoD,IACrD,0BAAI,WAAY,oLAKpB,uBAAKO,GAAG,QACN,sBAAIP,UAAU,2BAA0B,wBACxC,sBAAIA,UAAU,0BAAyB,qBACvC,yBAAG,4CACH,sBAAIA,UAAU,yBAAwB,iBACtC,0BACE,0BAAI,4CACJ,0BAAI,8FAIJ,0BAAI,oMAKJ,0BAAI,8CACJ,0BAAI,sEAGJ,0BAAI,gBACW,qBAAGI,KAAK,oBAAmB,mBAAmB,4CAI/D,sBAAIJ,UAAU,yBAAwB,mCAGtC,0BACE,0BAAI,oDACJ,0BAAI,yDACJ,0BAAI,4JAOR,uBAAKO,GAAG,WACN,sBAAIP,UAAU,0BAAyB,mCAGvC,yBAAG,0EAIH,yBAAG,6DACH,0BACE,0BAAI,WACO,IACT,qBACEI,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,0BAIH,0BAAI,WACO,IACT,qBACEF,KAAK,gCACLC,OAAO,SACPC,IAAI,uBACL,2BAKL,yBAAG,kHAKL,uBAAKC,GAAG,iBACN,sBAAIP,UAAU,0BAAyB,qBACvC,sBAAIA,UAAU,yBAAwB,gBACtC,2BAAK,kEAC6D,IAChE,qBAAGI,KAAK,cAAa,aAAa,yGACkC,IACpE,8BAAQ,aAAkB,KAE5B,sBAAIJ,UAAU,QACZ,0BACE,yBAAG,sBAAsB,0OAKzB,2BAAM,0NAMR,0BACE,yBAAG,wBAAwB,wHAG3B,2BAAM,8TAOR,0BACE,yBAAG,wBAAwB,gMAI3B,2BAAM,4UAQR,0BACE,yBAAG,mBAAmB,gNAItB,2BAAM,kHAKV,sBAAIA,UAAU,yBAAwB,qBACtC,2BAAK,kGAE0B,8BAAQ,aAAkB,8CAGzD,sBAAIA,UAAU,QACZ,0BACE,yBAAG,yBAAyB,8FAG9B,0BACE,yBAAG,uBAAuB,mFAG5B,0BACE,yBAAG,yBAAyB,+FAIhC,sBAAIA,UAAU,yBAAwB,OAChC,yBAAG,QAAQ,UAEjB,uBAAKA,UAAU,QAAO,yTAK6B,IACjD,qBACEI,KAAK,mGACLC,OAAO,SACPC,IAAI,uBACL,YAEI,IAAI,2KAG6B,8BAAQ,aAAkB,OAAK,IACrE,qBACEF,KAAK,sBACLC,OAAO,SACPC,IAAI,uBACL,mBAEG,KAGN,sBAAIN,UAAU,yBAAwB,6BACtC,uBAAKA,UAAU,QAAO,kRAIiD,IACrE,8BAAQ,aAAkB,MAG9B,uBAAKA,UAAU,wBACf,uBAAKO,GAAG,WACN,sBAAIP,UAAU,0BAAyB,qBACvC,yBAAG,SACH,0BACE,0BAAI,uDACmD,IACrD,qBACEI,KAAK,2CACLC,OAAO,SACPC,IAAI,uBACL,yBAIH,0BAAI,6EAGF,0BACEN,UAAW,qCACXQ,QAAS,IAAMN,GAAkB,IAEjC,wBAAMF,UAAU,gBACd,wBAAMS,MAAM,iDAAgD,gBAI9D,wBAAMT,UAAU,aAAY,uBAGhC,0BAAI,0BAEF,sBAAIA,UAAU,gBACZ,sBAAIA,UAAU,QAAO,oDAGrB,0BAAI,oCACJ,0BAAI,wDAIV,sBAAIA,UAAU,yBAAwB,YACtC,yBAAG,8hBAWH,yBAAG,+MAMH,yBAAG,mOAMH,uBAAKO,GAAG,eACN,sBAAIP,UAAU,2BAA0B,eACxC,yBAAG,gNAMH,yBAAG,4GAEsC,IACvC,qBACEI,KAAK,iDACLC,OAAO,SACPC,IAAI,uBACL,sBAEG,KAGN,yBAAG,sDACH,0BACE,0BAAI,QACI,IACN,qBACEF,KAAK,kCACLC,OAAO,SACPC,IAAI,uBACL,0BAEI,IAAI,8EAIX,0BAAI,mCACJ,0BAAI,8CACJ,0BAAI,2EAIJ,0BAAI,2JAKJ,0BAAI,oGAIJ,0BAAI,6KAMN,yBAAG,gCACH,0BACE,0BAAI,wOAMJ,0BAAI,kGAIJ,0BAAI,mEAKR,uBAAKC,GAAG,WACN,sBAAIP,UAAU,2BAA0B,WACxC,sBAAIA,UAAU,yBAAwB,8BAGtC,0BACE,0BAAI,2CACJ,0BAAI,sCACJ,sBAAIA,UAAU,QACX,IAAI,+CAGP,sBAAIA,UAAU,QACX,IAAI,wDAGP,sBAAIA,UAAU,kBAAiB,kCAC/B,sBAAIA,UAAU,QAAO,8BACrB,0BAAI,wDACJ,sBAAIA,UAAU,QAAO,yOAOvB,sBAAIA,UAAU,yBAAwB,yDAGtC,yBAAG,2TAOH,sBAAIA,UAAU,0BAAyB,oBACvC,sBAAIA,UAAU,kBAAiB,sBAC/B,yBAAG,gMAKH,sBAAIA,UAAU,kBAAiB,qBAC/B,0BACE,0BAAI,oCACJ,sBAAIA,UAAU,QACZ,0BAAI,uDACJ,0BAAI,iEAIN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,wCACJ,0BAAI,4CAEN,0BAAI,iBACJ,sBAAIA,UAAU,QACZ,0BAAI,mCACJ,0BAAI,6GAKN,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,0CACJ,0BAAI,sDAGR,sBAAIA,UAAU,kBAAiB,mBAC/B,0BACE,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,mIAKJ,0BAAI,2DAEN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,8DAGJ,0BAAI,gDAEN,0BAAI,kCACJ,sBAAIA,UAAU,QACZ,0BAAI,wEAMR,sBAAIA,UAAU,mBAAkB,mBAChC,0BACE,0BAAI,6BACJ,sBAAIA,UAAU,QACZ,0BAAI,0CACJ,0BAAI,8CACJ,0BAAI,uDAEN,0BAAI,wBACJ,sBAAIA,UAAU,QACZ,0BAAI,oIAKJ,0BAAI,oDAGR,sBAAIA,UAAU,kBAAiB,kBAC/B,yBAAG,iJAKH,0BACE,0BAAI,2CACJ,sBAAIA,UAAU,QACZ,0BAAI,kEAGJ,0BAAI,kDACJ,0BAAI,4EAKN,0BAAI,gCACJ,sBAAIA,UAAU,QACZ,0BAAI,+EAIJ,0BAAI,oEAKN,0BAAI,cACJ,sBAAIA,UAAU,QACZ,0BAAI,0EAIJ,0BAAI,kFAKN,0BAAI,iBACJ,sBAAIA,UAAU,QACZ,0BAAI,6EAIJ,0BAAI,gEAGJ,0BAAI,sDACJ,0BAAI,wCACJ,0BAAI,0EAMR,sBAAIA,UAAU,kBAAiB,2BAC/B,yBAAG,wTAQL,uBAAKO,GAAG,UACN,sBAAIP,UAAU,2BAA0B,uBACxC,sBAAIA,UAAU,0BAAyB,UACvC,yBAAG,8NAOL,uBAAKO,GAAG,SACN,sBAAIP,UAAU,0BAAyB,eACvC,yBAAG,oDACiD,IAClD,qBAAGI,KAAK,sBAAqB,aAAa,OAKhD,gBAAC,IAAD,CACEM,OAAQT,EACRU,iBA50BkBC,IACxBA,EAAEC,kBACFX,GAAkB,EAAlB,EA20BMY,cAAe,oBACfC,UAAWC,EAAAA,EACXC,gBAAiB,aAGnB,uBAAKjB,UAAU,yBA70BrB,C,uBCdF,IAAe,IAA0B,yD","sources":["webpack://ethberlin/./src/components/ETHBerlin.jsx","webpack://ethberlin/./src/pages/hacker-manual.jsx","webpack://ethberlin/./src/images/groundFloor.png"],"sourcesContent":["import React from \"react\";\n\nconst ETHBerlin = ({ className }) => (\n \n ETHBERLIN04<<<<IDENTITY<<CRISIS<<\n \n);\n\nexport default ETHBerlin;\n","import React from \"react\";\nimport Layout from \"../components/Layout\";\nimport ETHBerlin from \"../components/ETHBerlin\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport groundFloor from \"../images/groundFloor.png\";\n\nconst Hack = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n return (\n \n
\n

\n <<H<ACKER MANUAL\n

\n

This section aims to help you to prepare for the hackathon.

\n
\n

TL;DR

\n
    \n
  • \n Join the conversation on Matrix:{\" \"}\n \n #ethberlin:dod.ngo\n \n
  • \n
  • \n Find a team on GitHub:{\" \"}\n \n github.com/ethb3rlin/find-a-team\n \n
  • \n
  • \n Register your attendance on Zupass with your ETHBerlin04 email\n address:{\" \"}\n \n zupass.org\n \n
  • \n
  • \n Get testnet Ether for{\" \"}\n \n Sepolia\n and{\" \"}\n \n Holesky\n using your Zupass semaphore identity.\n
  • \n
  • \n Create an account on our Submißion tool and unlock it with your Zupass\n semaphore identity:{\" \"}\n \n projects.ethberlin.org\n \n
  • \n
  • \n Visit this page frequently as we update the manual regularly.\n
  • \n
\n
\n

Overview

\n
\n

Before the Hackathon

\n \n

During the Hackathon

\n \n

After the Hackathon

\n \n
\n
\n
\n

Before the Hackathon

\n

Travel and Accommodation

\n

Travel to Berlin

\n

\n Berlin has one airport called Berlin Brandenburg Airport \"Willy\n Brandt\" (BER) and is well connected with railway. You can take a\n train from European cities such as Stockholm or Paris to travel with\n the convenience of comfortable high-speed trains with internet\n access, avoid the long security lines, missing luggage, and decrease\n your CO2 footprint. Check the{\" \"}\n \n Deutsche Bahn\n {\" \"}\n website for routes.\n

\n

Urban Transport

\n

\n Berlin is a bike friendly city. Most of the times the quickest and\n easiest way to getting from A to B is by bike. If you are staying\n longer than just a few days, you might want to consider renting a\n bike from{\" \"}\n \n Swapfiets\n {\" \"}\n or buying daily/monthly subscription from{\" \"}\n \n nextbike\n {\" \"}\n (bike sharing). You will also find many scooters and bikes that you\n can grab around the city. On the{\" \"}\n \n Jelbi App\n {\" \"}\n you can conveniently find the public transportation tickets and info\n as well as carsharing, scooters, bikes etc.\n

\n

Accomodation

\n\n

\n Finding a hotel or other affordable accommodation in Berlin can be\n quite a challenge in itself. Since this year's ETHBerlin is\n coinciding with the{\" \"}\n \n German Cup Final\n {\" \"}\n and the{\" \"}\n \n Euroleague Final Four\n \n , it can be particularly difficult to find a place. We recommend you\n to look for a suitable shelter as soon as you receive your hacker\n confirmation! If you haven't booked anything yet, best do so asap.\n

\n\n

\n Aside from hotels and Airbnbs, you can check offers on local options\n like{\" \"}\n \n WG-Gesucht\n {\" \"}\n and Facebook groups or post your own requests post there. However,\n please be wary of the risks and potential scams. Join our{\" \"}\n \n #couchsurfing\n {\" \"}\n chat and fill in the{\" \"}\n \n coordination sheet\n {\" \"}\n if you are offering or looking for a place to sleep.\n

\n\n

\n Our venue is open 24/2 and welcomes hacking through the night. There\n are many cozy corners with sofas, beanbags etc. However, we still\n would recommend to look for a place to leave your stuff, sleep, and\n take a shower.\n

\n
\n
\n
\n

Find a Team/Hacker/Idea

\n

\n Are you missing a team, a hacker, an idea? Or you have an idea that\n can be implemented during the hackathon? Find a match on{\" \"}\n \n Github\n {\" \"}\n or join the Hacker Matchmaking session on Friday after the opening\n ceremony.\n

\n
\n
\n
\n

Generate your Zupass PCD

\n

\n This year, we have a PCD (proof-carrying data) integration with\n Zupass for ETHBerlin04. You can prove your attendance to the\n hackathon by generating a zero-knowledge proof through the Zupass\n web application.\n

\n

\n Visit{\" \"}\n \n zupass.org\n {\" \"}\n and sign up (or log in) with the same email address you used to\n register for the hackathon. You will find an active ETHBerlin04\n subscription in your account.\n

\n

\n You will require this PCD for the faucets (if needed) and the final\n submission of your hackathon project as well as voting on other\n people's projects after the hackathon concluded.\n

\n
\n
\n

Connect and Chat

\n

\n The only official communication channel is the ETHBerlin Matrix\n space. Use it to connect with hackers and mentors, and to get\n updates from the organizers throughout the hackathon:{\" \"}\n \n #ethberlin:dod.ngo\n \n

\n

There is no Discord or Telegram.

\n
\n
\n
\n

Food and Drinks

\n

\n As per usual, this one is on us! ETHBerlin will cover all meals and\n drinks for the entire hackathon! This includes breakfasts, lunches,\n dinners, and midnight snacks as well as various soft drinks, mate\n (of course!), water, coffee and beer. In addition to{\" \"}\n regular food, there will be vegan and vegetarian options\n provided. Just come with an open mind, a knowledge-thirsty brain and\n enthusiasm. Meal and snack times will be on the program.\n

\n
\n
\n

During the Hackathon

\n

Hacking and Rules

\n

Read the fine manual or regret it later.

\n

Hacking Rules

\n
    \n
  • A team can not be more than five people.
  • \n
  • \n You must be present at the ETHBerlin venue for your project to be\n eligible for submission.\n
  • \n
  • \n You can plan ahead of time, but all code for your project has to\n be written during the event. Code can only be committed after\n hacking officially starts and only until the submission deadline.\n
  • \n
  • You cannot use another team's source code.
  • \n
  • \n The decision of judges is final for determining prizes and awards.\n
  • \n
  • \n Breaking our Code of Conduct leads\n to the exclusion from the event.\n
  • \n
\n

\n Minimum Submission Requirements\n

\n
    \n
  • A link to the open-source code must be provided.
  • \n
  • A short presentation file must describe your project.
  • \n
  • \n If applicable, the contract address(es) of your deployed demo must\n be provided, either on a testnet of your choice or mainnet of a\n platform of choice.\n
  • \n
\n
\n
\n

\n Faucets for Sepolia and Holesky\n

\n

\n Dedicated testnet-token faucets are available for ETHBerlin04\n hackers.\n

\n

You can receive 500 testnet Ether on Sepolia and Holesky:

\n
    \n
  • \n Sepolia:{\" \"}\n \n sepolia.ethberlin.org\n \n
  • \n
  • \n Holesky:{\" \"}\n \n holesky.ethberlin.org\n \n
  • \n
\n

\n You will have to sign in with Zupass to authorize a faucet drop to\n any of your addresses. Thank you, pk910 <3\n

\n
\n
\n

Tracks and Prizes

\n

Track Awards

\n
\n The track awards are centered around themes that align with our{\" \"}\n manifesto, and what we believe the industry\n needs to re-focus on. The winning teams of the track awards receive{\" \"}\n 7,000 DAI.\n
\n
    \n
  • \n Defensive Tooling: This track is the right choice for you\n if you want to hack on tools that enhance security and privacy.\n It's about building projects that prioritize defense,\n decentralization, and resilience to create a more secure and freer\n world.\n
    \n Think topics like encryption, counter-surveillance, identity\n protection, anonymity, anti-identity, security, local data\n handling, and anything that armors the individual against\n intrusive data collection practices.\n
  • \n
  • \n Freedom to Transact: This track is for you if you want to\n ensure that anyone, anywhere, anytime can facilitate unrestricted\n transactions.\n
    \n We're looking for projects that enable people to access and send\n money, or value, across borders without restrictions, promoting\n financial inclusion. This track is for those who want to hack on\n peer-to-peer solutions, build censorship-resistant applications,\n and ensure that transactions can be private and secure.\n
  • \n
  • \n Social Technologies: This track is all about platforms and\n tools that enable informed and collective decision-making,\n transparent governance, and collaboration and coordination among\n decentralized communities.\n
    \n If you want to build credibly neutral systems for voting,\n governance, and social interaction, and systems that counter\n disproportionate influence of centralized powers then this track\n is for you and your team. Other ideas you could hack on are\n consensus-finding algorithms, sybil resistance, and decentralized\n social reputation.\n
  • \n
  • \n Infrastructure: The backbone of the revolution. This track\n is dedicated to the architects and builders laying down the\n underlying infrastructures that robust distributed public goods\n need to run efficiently and reliably.\n
    \n Projects could include protocol specification and implementations,\n networking, developer tools, and hardware.\n
  • \n
\n

Excellence Awards

\n
\n Back by popular demand, please welcome the Excellence Awards. The\n winners of each of these get 5,000 DAI and these\n are to recognise the following:\n
\n
    \n
  • \n Best Smart Contracts: Outstanding smart contract code\n quality and documentation, security and gas-optimization.\n
  • \n
  • \n Best Social Impact: Outstanding positive impact on\n underserved communities and society as a whole.\n
  • \n
  • \n Best User Experience: Outstanding user experience that does\n not sacrifice on security, privacy or self-custody.\n
  • \n
\n

\n The Meta Award\n

\n
\n We'd like to introduce a new category this year, the Meta Award, as\n an ode to ETHBerlin being powered by many awesome open-source\n projects. So for this one we invite you to go meta by building\n contributions that improve the ETHBerlin experience itself! Projects\n eligible for this award can either pick from our{\" \"}\n \n wishlist\n {\" \"}\n of contributions, or can build an entirely new thing that they\n consider to be a positive impact for future versions of ETHBerlin.\n The winner of this track will receive 4,000 DAI and{\" \"}\n \n DEVCon7 tickets\n \n .\n
\n

The Hacker's Choice Award

\n
\n A prize to be picked by the ETHBerlin hackers. After the hackathon\n weekend, hackers will review all the projects and cast their votes\n for their favorite project. Redistribution of the prize money cannot\n be the essence of the project. The winner of this award will receive{\" \"}\n 7,000 DAI.\n
\n
\n
\n
\n

Help from Mentors

\n TL;DR\n
    \n
  • \n To get help ask questions in the Mentor Matrix room:{\" \"}\n \n #eb4-mentors:dod.ngo\n \n
  • \n
  • \n Or go to the Mentor Helpdesk located in the Node Café on the\n ground floor.\n setIsMapModalOpen(true)}\n >\n \n \n my_location\n \n \n Helpdesk Location\n \n
  • \n
  • \n Helpdesk opening hours:\n
      \n
    • \n Friday from hacking start (19:00) until midnight\n
    • \n
    • Saturday from 08:00 to midnight
    • \n
    • Sunday from 08:00 to submission deadline (11:30)
    • \n
    \n
  • \n
\n

Details

\n

\n As with all previous ETHBerlins we've made sure to have a team of\n amazing mentors ready to help you build the best possible projects\n throughout the weekend. No questions are too small or too big to\n ask. As a hacker you can find the mentors in person as per the TL;DR\n above. You can also contact them with any questions you might have\n in the Matrix room that's also listed in the TL;DR. If you ask the\n question in the middle of the night you might not get a reply right\n away, but we will make sure to address it first thing in the\n morning.\n

\n

\n We encourage hackers to help each other out and keep an eye on the\n mentoring matrix channel. There might be some hackers with very\n specific expert knowledge and it would be great if this could be\n shared.\n

\n

\n You might also see the mentors throughout the venue. They'll be\n wearing a button/badge on their shirt saying \"Mentor\". They're all\n very friendly so don't hesitate to ask them a question or get their\n feedback on something.\n

\n
\n

Submissions

\n

\n This year thanks to our amazing Kirill, we've built our own tool\n for submissions and judging. The tool is open source, simple to\n use and should make the job of judging and tallying scores simple\n and fast.\n

\n

\n If you run into any problems or have any feedback it would be much\n appreciated if you would open an issue{\" \"}\n \n in the github repo\n \n .\n

\n The general flow for using the tool is as follows:\n
    \n
  • \n Go to{\" \"}\n \n projects.ethberlin.org\n {\" \"}\n and sign in with your Zupass credentials to receive your role as\n \"hacker\".\n
  • \n
  • Create or join an existing team
  • \n
  • Now you can submit projects and join team.
  • \n
  • \n To submit a project click the \"Submit a project\" button in the\n top bar.\n
  • \n
  • \n There is a simple template with information you should add, but\n feel free to add whatever additional information you find\n relevant for your submission.\n
  • \n
  • \n Make sure to submit everything before the deadline Sunday 26th\n at 11:30, when submissions close.\n
  • \n
  • \n Once submissions are closed keep an eye on the general matrix\n channel, where we will provide further instructions for when\n your team will have to present to the judges.\n
  • \n
\n Some things to keep in mind:\n
    \n
  • \n Put as much information into the Github, Radicle, or whatever\n code collaboration platform you use, about the project so that\n judges and other hackers only need to look in one place to learn\n as much as possible about the project.\n
  • \n
  • \n Dedicate some time to make a crisp and precice presentation and\n don't forget to submit it too.\n
  • \n
  • \n Make sure to select the track that fits best to your project.\n
  • \n
\n
\n
\n

Judging

\n

\n Judging Timeline on Sunday\n

\n
    \n
  • 11:30 AM: Hackathon submission deadline
  • \n
  • 12 PM - 4:30 PM: Pitching sessions
  • \n
  • \n {\" \"}\n Hacking teams will pitch in a 10 min rhythm\n
  • \n
  • \n {\" \"}\n Judges will have 3 min to pre-review your submission\n
  • \n
  • You have 3 min for your pitch
  • \n
  • 2 min Q&A after the pitch
  • \n
  • 5:30 PM - 7 PM: Closing ceremony with winner pitches
  • \n
  • \n The winning teams of each track, each excellence award and the\n meta award will present briefly at the closing ceremony. Be\n prepared to come to the stage and describe what your project\n does (similar to your pitch for the judges).\n
  • \n
\n

\n When and where do you present in front of the Judges?\n

\n

\n Judging takes place on the 1st floor. There are six clearly marked\n judging rooms located directly next to each other. Volunteers can\n help you find the way! Once the hacking phase is over and the\n judging phase begins, you can check the Submissions Tool to find\n out the room and time for your team's presentation.\n

\n

Judging Criteria

\n
The 4 Track Awards
\n

\n You will pitch your project in front of a group of 3 judges. There\n will be a Technical Judge, a Product Judge, and a Concept Judge.\n They will each focus on different parts of your project.\n

\n
Technical Judges:
\n
    \n
  • Technical complexity and quality
  • \n
      \n
    • What technical challenges does the project address?
    • \n
    • \n Is the code and architecture well-designed and high quality?\n
    • \n
    \n
  • Implementation and execution
  • \n
      \n
    • Is the code efficient and optimized?
    • \n
    • Is the codebase clean and maintainable?
    • \n
    \n
  • Functionality
  • \n
      \n
    • How well does the project work?
    • \n
    • \n Is the solution complete and functional, or does the team have\n a clear plan on how they would finish it?\n
    • \n
    \n
  • Innovation and creativity
  • \n
      \n
    • Does the project use new technologies?
    • \n
    • Is there a creative approach to problem-solving?
    • \n
    \n
\n
Product Judges:
\n
    \n
  • Innovation and creativity
  • \n
      \n
    • \n Is this something completely new or are there already existing\n projects working on a similar scope? What is the\n differentiator?\n
    • \n
    • Does the project demonstrate creative problem-solving?
    • \n
    \n
  • Practicality and feasibility
  • \n
      \n
    • \n Does the project have the potential for real-world impact?\n
    • \n
    • Is the implementation feasible in practice?
    • \n
    \n
  • Communication and presentation
  • \n
      \n
    • \n Is the team able to clearly communicate the project and its\n value?\n
    • \n
    \n
\n
Concept Judges:
\n
    \n
  • Idea, concept, and vision
  • \n
      \n
    • Does the concept have a strong vision?
    • \n
    • What is the wow or fun factor of the idea?
    • \n
    • How well does the project fit the hackathon track?
    • \n
    \n
  • Manifesto and values
  • \n
      \n
    • \n How well does the project align with the overall theme of the\n hackathon and with the stated values in the ETHBerlin04\n Manifesto?\n
    • \n
    • What is the impact and purpose of the project?
    • \n
    \n
\n
The Meta Award
\n

\n This track is being judged by ETHBerlin core team members. Apart\n from regular technicality and usability, the Meta Award judges\n will look at:\n

\n
    \n
  • Improvement of the ETHBerlin experience
  • \n
      \n
    • \n How does the project improve the overall ETHBerlin experience?\n
    • \n
    • Does the project address specific pain points?
    • \n
    • \n How well does the project align with the values and goals of\n ETHBerlin?\n
    • \n
    \n
  • Practicality and scalability
  • \n
      \n
    • \n How well does the project integrate with existing tools and\n infrastructure?\n
    • \n
    • \n How does the project perform under typical hackathon use\n cases?\n
    • \n
    \n
  • Creativity
  • \n
      \n
    • \n How creative is the approach to solving ETHBerlin-specific\n challenges?\n
    • \n
    • \n Is the project original or does it enhance existing tools in\n innovative ways?\n
    • \n
    \n
  • Contributions
  • \n
      \n
    • \n Does the contribution address a critical issue or add a\n valuable feature?\n
    • \n
    • \n How will users or developers benefit from this contribution?\n
    • \n
    • Is the code well-written, clean, and maintainable?
    • \n
    • Is the contribution well-documented?
    • \n
    • \n How well does the contribution integrate with the existing\n codebase?\n
    • \n
    \n
\n
The 3 Excellence Awards
\n

\n You will be able to select what you are most proud of about your\n submission: the smart contracts, the social impact or the user\n experience. A group of expert judges per excellence-award will\n digitally review and judge the respective projects. You don’t have\n to pitch in front of the excellence award judges.\n

\n
\n
\n

After the Hackathon

\n

Voting

\n

\n In addition, all submissions will be reviewed by you, all\n ETHBerlin attendees, after the hackathon! Within a one week time\n window you will be able vote on the overall winner. The voting\n process will be explained soon.\n

\n
\n
\n

After party

\n

\n It would not be ETHBerlin without an after party.{\" \"}\n Read more.\n

\n
\n
\n\n \n\n
\n
\n
\n );\n};\n\nexport default Hack;\n","export default __webpack_public_path__ + \"static/groundFloor-cf91271cc8e51801a1f51ee78f2a6fb4.png\";"],"names":["className","isMapModalOpen","setIsMapModalOpen","React","href","target","rel","id","onClick","class","isOpen","handleCloseModal","e","stopPropagation","activeMapName","activeMap","groundFloor","activeRoomClass"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js.map b/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js.map deleted file mode 100644 index d2ab6df0..00000000 --- a/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js","mappings":"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","sources":["webpack://ethberlin/./src/pages/schedule.jsx","webpack://ethberlin/./src/images/fifthFloor.png","webpack://ethberlin/./src/images/firstFloor.png","webpack://ethberlin/./src/images/fourthFloor.png","webpack://ethberlin/./src/images/groundFloor.png","webpack://ethberlin/./src/images/secondFloor.png","webpack://ethberlin/./src/images/thirdFloor.png"],"sourcesContent":["import Layout from \"../components/Layout\";\nimport React from \"react\";\nimport ReactModal from \"react-modal\";\nimport \"../styles/modal.css\";\nimport \"../styles/rooms/groundFloor.css\";\nimport \"../styles/rooms/firstFloor.css\";\nimport \"../styles/rooms/secondFloor.css\";\nimport \"../styles/rooms/fifthFloor.css\";\nimport groundFloor from \"../images/groundFloor.png\";\nimport firstFloor from \"../images/firstFloor.png\";\nimport secondFloor from \"../images/secondFloor.png\";\nimport thirdFloor from \"../images/thirdFloor.png\";\nimport fourthFloor from \"../images/fourthFloor.png\";\nimport fifthFloor from \"../images/fifthFloor.png\";\nimport ETHBerlin from \"../components/ETHBerlin\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport austin from \"../assets/people/workshops/austin.jpeg\";\nimport sergei from \"../assets/people/workshops/sergei.jpeg\";\nimport tino from \"../assets/people/workshops/tino.jpeg\";\nimport odysseas from \"../assets/people/workshops/odysseas.jpeg\";\nimport greg from \"../assets/people/workshops/greg.jpeg\";\nimport pedro from \"../assets/people/workshops/pedro.jpeg\";\nimport richard from \"../assets/people/workshops/richard.jpeg\";\nimport ivan from \"../assets/people/workshops/ivan.jpeg\";\nimport ameen from \"../assets/people/speakers/ameen.jpeg\";\nimport edmundedgar from \"../assets/people/speakers/edmundedgar.jpeg\";\nimport fat from \"../assets/people/speakers/fat.jpeg\";\nimport josh from \"../assets/people/speakers/josh.jpeg\";\nimport kat from \"../assets/people/speakers/kat.jpeg\";\nimport matthew from \"../assets/people/speakers/matthew.jpeg\";\nimport mikhail from \"../assets/people/speakers/mikhail.jpeg\";\nimport nick from \"../assets/people/speakers/nick.jpeg\";\nimport peter from \"../assets/people/speakers/peter.jpeg\";\nimport puja from \"../assets/people/speakers/puja.jpeg\";\n\nimport { FaTwitter } from \"react-icons/fa\";\nimport { ImSoundcloud } from \"react-icons/im\";\n\nconst currentDate = new Date();\n// const currentDate = new Date(\"2024-05-25T00:20:00+02:00\");\n\nconst ProgramItem = ({\n title,\n eventLocations,\n dayStr,\n endDayStr,\n startTime,\n endTime,\n className,\n}) => {\n // ISO Format: 2024-05-24T00:09:00+02:00\n const startDate = new Date(dayStr + \"T\" + startTime + \":00+02:00\");\n const endDate = endTime\n ? new Date(endDayStr || dayStr + \"T\" + endTime + \":00+02:00\")\n : startDate;\n\n return (\n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : className\n } list-none text-lg`}\n >\n \n {\"> \"}\n {startTime + (endTime ? \"-\" + endTime : \"\") + \" -\"}\n {\" \"}\n {title}{\" \"}\n {eventLocations.map((loc) => (\n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : \"text-berlin-red\"\n } text-sm`}\n onClick={() => {\n loc.handler();\n }}\n >\n \n \n my_location\n \n \n {loc.name}\n \n ))}\n \n );\n};\n\nconst SpeechItem = ({\n className,\n title,\n eventLocations,\n dayStr,\n endDayStr,\n startTime,\n endTime,\n description,\n speakerName,\n photo,\n photo2,\n photo3,\n}) => {\n const [isModalOpen, setIsModalOpen] = React.useState(false);\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsModalOpen(false);\n };\n // ISO Format: 2024-05-24T00:09:00+02:00\n const startDate = new Date(dayStr + \"T\" + startTime + \":00+02:00\");\n const endDate = endTime\n ? new Date(endDayStr || dayStr + \"T\" + endTime + \":00+02:00\")\n : startDate;\n\n return (\n
\n \n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : \"\"\n } ${className}`}\n >\n \n \n {\"> \"}\n \n {speakerName}\n \n setIsModalOpen(true)}\n className={`underline ${\n currentDate > endDate ? \"text-gray-700\" : \"text-gray-500\"\n } mx-2`}\n >\n More Info\n \n
\n \n
\n
\n setIsModalOpen(false)}\n >\n X\n \n
\n
\n {photo && (\n \n )}\n {photo2 && (\n \n )}\n {photo3 && (\n \n )}\n
\n
{title}
\n
{speakerName}
\n
{description}
\n
\n \n \n );\n};\n\nconst Program = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n const [activeMap, setActiveMap] = React.useState(groundFloor);\n const [activeRoomClass, setActiveRoomClass] = React.useState(\"lexis\");\n const [activeMapName, setActiveMapName] = React.useState(\"Ground Floor (#0)\");\n const [isExtravaganza, setIsExtravaganza] = React.useState(false);\n const [isSticky, setIsSticky] = React.useState(false);\n\n let toggleRef = React.useRef(null);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n const handleGroundFloor = () => {\n setActiveMap(groundFloor);\n setActiveMapName(\"Ground Floor (#0)\");\n };\n\n const handleFirstFloor = () => {\n setActiveMap(firstFloor);\n setActiveMapName(\"First Floor (#1)\");\n };\n\n const handleSecondFloor = () => {\n setActiveMap(secondFloor);\n setActiveMapName(\"Second Floor (#2)\");\n };\n\n const handleThirdFloor = () => {\n setActiveMap(thirdFloor);\n setActiveMapName(\"Third Floor (#3)\");\n };\n\n const handleFourthFloor = () => {\n setActiveMap(fourthFloor);\n setActiveMapName(\"Fourth Floor (#4)\");\n };\n\n const handleFifthFloor = () => {\n setActiveMap(fifthFloor);\n setActiveMapName(\"Fifth Floor (#5)\");\n };\n\n const locations = {\n lexis: {\n name: \"Lexis\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"lexis\");\n setIsMapModalOpen(true);\n },\n },\n giftShop: {\n name: \"Gift Shop\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"giftShop\");\n setIsMapModalOpen(true);\n },\n },\n nodeCafe: {\n name: \"Node Cafe\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"nodeCafe\");\n setIsMapModalOpen(true);\n },\n },\n yard0: {\n name: \"Yard 0\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard0\");\n setIsMapModalOpen(true);\n },\n },\n yard1: {\n name: \"Yard 1\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard1\");\n setIsMapModalOpen(true);\n },\n },\n yard2: {\n name: \"Yard 2\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard2\");\n setIsMapModalOpen(true);\n },\n },\n mainEnterence: {\n name: \"Main Enterance\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"main-enterence\");\n setIsMapModalOpen(true);\n },\n },\n registration: {\n name: \"Registration\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"registration\");\n setIsMapModalOpen(true);\n },\n },\n restaurant: {\n name: \"Restaurant\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"restaurant\");\n setIsMapModalOpen(true);\n },\n },\n mckinsey: {\n name: \"McKinsey\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"mckinsey\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace1: {\n name: \"First Floor Community Space\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"community-space-first-floor\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace2: {\n name: \"Second Floor Community Space\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"community-space-second-floor\");\n setIsMapModalOpen(true);\n },\n },\n artExhibition: {\n name: \"Art Exhibition\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"artExhibition\");\n setIsMapModalOpen(true);\n },\n },\n library: {\n name: \"Library\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"library\");\n setIsMapModalOpen(true);\n },\n },\n alice: {\n name: \"Alice\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"alice\");\n setIsMapModalOpen(true);\n },\n },\n wellnessRoom: {\n name: \"Wellness & Planeterium\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"wellnessRoom\");\n setIsMapModalOpen(true);\n },\n },\n cinema: {\n name: \"Cinema\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinema\");\n setIsMapModalOpen(true);\n },\n },\n cinebar: {\n name: \"Cinebar\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinebar\");\n setIsMapModalOpen(true);\n },\n },\n };\n\n React.useEffect(() => {\n const observer = new IntersectionObserver(\n ([e]) =>\n e.intersectionRatio < 1 ? setIsSticky(true) : setIsSticky(false),\n { threshold: [1] }\n );\n if (toggleRef.current) observer.observe(toggleRef.current);\n return () => {\n if (toggleRef.current) observer.unobserve(toggleRef.current);\n };\n }, [toggleRef]);\n\n return (\n \n
\n

\n <<S<CHEDULE\n

\n
\n

\n Welcome to ! If you have the chance, please claim your\n badge early during preregistration at the venue to avoid long queues in\n the evening.\n

\n {/* Use top: -1px to detect stickyness https://davidwalsh.name/detect-sticky */}\n\n {/* Hacker Essentials vs Extravaganza */}\n\n \n
\n
\n
Hacker Extravaganza
\n \n \n

Friday, May 24

\n

\n

    \n \n \n \n \n \n {\" \"}\n \n \n \n \n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n \n
    \n We will learn how powerful SIWE can be used as a tool for\n building different use-cases such as identity,\n attestations, permissions and messaging. For example\n WalletConnect built this app called Web3Inbox to aggregate\n notifications for multiple dapps and it's based on SIWE.\n Additionally there are other systems where you can use\n attestations to build roots of trust with SIWE that\n generate CACAOs (CAIP-74) to build dapps offchain. Finally\n we are working on Session Keys which also uses SIWE to\n empower key delegation for transaction signing for Smart\n Accounts\n
    \n \n }\n photo={pedro}\n eventLocations={[locations.lexis]}\n />\n \n \n \n
    \n This session delves into Trusted Execution Environments\n (TEEs) and Zero-Knowledge (ZK) for Ethereum product\n builders with limited technical depth in these areas. We\n will examine key considerations such as performance, trust\n assumptions, cost efficiency, and the complexity of\n integration to determine their suitability for privacy and\n verifiable computation in applications.\n
    {\" \"}\n
    \n
    \n Participants will learn about the security\n vulnerabilities, scalability potential, and regulatory\n compliance aspects of each technology. The talk will also\n highlight the support available through developer\n ecosystems and the maturity of existing libraries and\n tools. By the end, attendees will be equipped to make\n informed decisions on which technology best meets their\n project's needs and understand the resources available for\n implementation.\n
    \n \n }\n // photo={shumoChu}\n eventLocations={[locations.lexis]}\n />\n \n
    \n No prior circom or ZK experience needed for this workshop,\n where we'll run through a simple example of a\n sybil-resistant app that requests a \"proof of ETHBerlin\n hacker visa\". Hackers may receive a *cryptographic\n surprise* during this workshop.\n
    \n \n }\n // photo={shumoChu}\n eventLocations={[locations.lexis]}\n />\n \n
\n

\n
\n
\n
\n

Saturday, May 25th

\n

Happy hacking, no distractions!

\n

\n \n \n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n

\n Panel - Decentralized Art Organisation: With Vincent\n Trasov and Benny Giang; Moderated by Stina Gustafsson.\n
\n \n }\n // photo={shumoChu}\n eventLocations={[locations.artExhibition]}\n />\n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n
\n Panel - Art after NFTs: With Joan Heemskerk and Billy\n Rennekamp; Moderated by María Paula Fernández.\n
\n \n }\n // photo={shumoChu}\n eventLocations={[locations.artExhibition]}\n />\n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n
\n \n \n Jommi{\" \"}\n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Anna{\" \"}\n \n \n \n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Manu +{\" \"}\n \n @blockravers \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Manuel{\" \"}\n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n
\n )}\n \n \n

\n
\n
\n
\n

Sunday, May 26th

\n

\n Don't forget to submit your projects by 11:30 am Berlin time!\n

\n

\n

    \n \n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n \n \n \n \n \n \n \n

    \n Experiments in Proof of Personhood—where each person has a\n single, unique identity—have increasingly been touted as a\n mechanism for tracing information provenance, distributing\n Universal Basic Income, and facilitating democratic\n governance over systems of artificial intelligence.\n

    \n

    \n {\" \"}\n This talk chronicles Idena's experiment in Proof of\n Personhood from launch in August 2019 to a crisis in May\n 2022. We show how despite verifying humans, hidden pools\n rapidly emerged—some cooperative, but most controlled by\n “puppeteers” who, at best, remunerated participants for\n periodically proving their uniqueness in exchange for\n access to their secret keys and controlling their\n accounts. Instead of fostering an egalitarian network of\n unique identities, the protocol fractured into hidden\n subnetworks vying for control over an economic pie with\n economies of scale trending towards oligopoly, undermining\n the protocol's security and ambitions for democratic\n governance (one-person, one-vote) and UBI rewards\n (one-person, one reward). By giving humans economic\n incentives to periodically differentiate themselves from\n bots, the protocol gave more informed, resourceful humans\n financial incentives to puppeteer less informed humans\n like bots.\n

    \n \n }\n speakerName={\n \"Puja Ohlhaver (Lawyer & Researcher), Mikhail Nikulin (Idena)\"\n }\n photo={puja}\n photo2={mikhail}\n eventLocations={[locations.lexis]}\n />\n \n \n \n

    \n Decentralised communication tools are at least 10x harder\n to build than their mainstream centralised equivalents,\n and in a world where Discord, Slack, Telegram and WhatsApp\n have billions of dollars of funding and have created\n incredibly polished products, it can be hard for\n decentralised alternatives to compete. However:\n centralisation lasts until the next Elon, whereas\n decentralisation can last forever.\n

    \n

    \n In this talk, I'll explain the challenges we've hit in\n building Matrix to compete with the mainstream\n alternatives, how we're solving them, why it's taken so\n long, and why it's more important than ever to keep the\n ideal of decentralised communication alive.\n

    \n \n }\n speakerName={\"Matthew Hodgson (Matrix)\"}\n photo={matthew}\n eventLocations={[locations.lexis]}\n />\n \n \n \n YaNKeY{\" \"}\n \n \n \n \n }\n className=\"ml-12\"\n eventLocations={[locations.yard0]}\n />\n\n \n
\n

\n \n \n\n \n
\n );\n};\nexport default Program;\n","export default __webpack_public_path__ + \"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png\";","export default __webpack_public_path__ + \"static/firstFloor-40005b3ded32f04558d7184cf1b4db48.png\";","export default __webpack_public_path__ + \"static/fourthFloor-a546bb8ae3bd92f2d3cf397a628592e5.png\";","export default __webpack_public_path__ + \"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png\";","export default __webpack_public_path__ + \"static/secondFloor-b5962086a073150c890aa04414996fe3.png\";","export default __webpack_public_path__ + \"static/thirdFloor-55d040ac1a61dbe808e42bcdad639ea9.png\";"],"names":["currentDate","Date","ProgramItem","title","eventLocations","dayStr","endDayStr","startTime","endTime","className","startDate","endDate","map","loc","onClick","handler","class","name","SpeechItem","description","speakerName","photo","photo2","photo3","isModalOpen","setIsModalOpen","React","isOpen","style","overlay","position","top","left","right","bottom","backgroundColor","content","zIndex","margin","overlayClassName","shouldCloseOnEsc","shouldCloseOnOverlayClick","onRequestClose","e","stopPropagation","closeTimeoutMS","src","isMapModalOpen","setIsMapModalOpen","activeMap","setActiveMap","groundFloor","activeRoomClass","setActiveRoomClass","activeMapName","setActiveMapName","isExtravaganza","setIsExtravaganza","isSticky","setIsSticky","toggleRef","handleGroundFloor","handleFirstFloor","firstFloor","handleSecondFloor","secondFloor","handleFifthFloor","fifthFloor","locations","lexis","giftShop","nodeCafe","yard0","yard1","yard2","mainEnterence","registration","restaurant","mckinsey","communitySpace1","communitySpace2","artExhibition","library","alice","wellnessRoom","cinema","cinebar","observer","IntersectionObserver","intersectionRatio","threshold","current","observe","unobserve","ref","for","id","type","onChange","prev","fat","nick","peter","austin","pedro","tino","sergei","odysseas","greg","richard","ivan","href","target","rel","kat","josh","edmundedgar","puja","mikhail","ameen","matthew","handleCloseModal"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js b/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js similarity index 86% rename from component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js rename to component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js index ccb974ab..cf5cac9b 100644 --- a/component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js +++ b/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[96],{1002:function(e,t,a){a.r(t);var n=a(3911),r=a(7294),i=a(3253),o=a.n(i),l=a(4787),s=a(228),c=a(9515),m=(a(6048),a(8595),a(9184)),d=a(7336),h=a(2722),u=a(7650),p=a(3762),y=a(1784),f=a(1606),b=a(1689),E=a(4636),v=a(8009),g=a(9765),T=a(1104),x=a(7222),S=a(7557),k=a(4449),w=a(7361),N=a(5593),L=a(8085),C=a(756),F=a(2488),P=a(4931),A=a(2091),W=a(8908);const D=new Date,R=e=>{let{title:t,eventLocations:a,dayStr:n,endDayStr:i,startTime:o,endTime:l,className:s}=e;const c=new Date(n+"T"+o+":00+02:00"),m=l?new Date(i||n+"T"+l+":00+02:00"):c;return r.createElement("li",{className:(D>m?"text-gray-700":D>c?"font-bold animate-pulse-faster":s)+" list-none text-lg"},r.createElement("span",{className:"fake-bold"},r.createElement("span",{className:"text-berlin-red opacity-50"},"> "),o+(l?"-"+l:"")+" -")," ",t," ",a.map((e=>r.createElement("button",{className:(D>m?"text-gray-700":D>c?"font-bold animate-pulse-faster":"text-berlin-red")+" text-sm",onClick:()=>{e.handler()}},r.createElement("span",{className:"align-middle"},r.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),r.createElement("span",{className:"underline"},e.name)))))},M=e=>{let{className:t,title:a,eventLocations:n,dayStr:i,endDayStr:l,startTime:s,endTime:c,description:m,speakerName:d,photo:h,photo2:u,photo3:p}=e;const[y,f]=r.useState(!1),b=new Date(i+"T"+s+":00+02:00"),E=c?new Date(l||i+"T"+c+":00+02:00"):b;return r.createElement("div",null,r.createElement(R,{title:a,eventLocations:n,dayStr:i,endDayStr:l,startTime:s,endTime:c,className:t}),r.createElement("div",{className:"ml-8 -mt-2 mb-4 text-sm "+(D>E?"text-gray-700":D>b?"font-bold animate-pulse-faster":"")+" "+t},r.createElement("span",null,r.createElement("span",{className:"text-xs text-berlin-red opacity-50 mr-0.5"},"> "),d),r.createElement("button",{onClick:()=>f(!0),className:"underline "+(D>E?"text-gray-700":"text-gray-500")+" mx-2"},"More Info")),r.createElement(o(),{isOpen:y,style:{overlay:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(255, 255, 255, 0.5)"},content:{zIndex:40,backgroundColor:"rgba(0, 0, 0, 0.9)",margin:"auto"}},overlayClassName:"flex items-center z-40 px-4 md:px-16 lg:px-32 xl:px-48 transition-all duration-200 ease-in-out py-8 max-h-screen",className:"flex flex-col items-center justify-center max-h-full",shouldCloseOnEsc:!0,shouldCloseOnOverlayClick:!0,onRequestClose:e=>{e.stopPropagation(),f(!1)},closeTimeoutMS:500},r.createElement("div",{className:"p-8 font-w95 text-center overflow-y-auto max-w-4xl"},r.createElement("div",{className:"flex justify-end"},r.createElement("button",{className:"text-4xl text-berlin-red",onClick:()=>f(!1)},"X")),r.createElement("div",{className:"flex flex-row justify-center p-4 flex-wrap"},h&&r.createElement("img",{src:h,className:"h-32 md:h-64 self-center mx-4 my-4"}),u&&r.createElement("img",{src:u,className:"h-32 md:h-64 self-center mx-4 my-4"}),p&&r.createElement("img",{src:p,className:"h-32 md:h-64 self-center mx-4 my-4"})),r.createElement("div",{className:"text-xl md:text-3xl font-bold my-4"},a),r.createElement("div",{className:"text-lg md:text-2xl"},d),r.createElement("div",{className:"mt-8"},m))))};t.default=()=>{const[e,t]=r.useState(!1),[a,i]=r.useState(l.Z),[o,D]=r.useState("lexis"),[I,B]=r.useState("Ground Floor (#0)"),[O,Z]=r.useState(!1),[H,j]=r.useState(!1);let G=r.useRef(null);const K=()=>{i(l.Z),B("Ground Floor (#0)")},J=()=>{i(s.Z),B("First Floor (#1)")},q=()=>{i(c.Z),B("Second Floor (#2)")},z=()=>{i(m.Z),B("Fifth Floor (#5)")},U={lexis:{name:"Lexis",handler:()=>{K(),D("lexis"),t(!0)}},giftShop:{name:"Gift Shop",handler:()=>{K(),D("giftShop"),t(!0)}},nodeCafe:{name:"Node Cafe",handler:()=>{K(),D("nodeCafe"),t(!0)}},yard0:{name:"Yard 0",handler:()=>{K(),D("yard0"),t(!0)}},yard1:{name:"Yard 1",handler:()=>{K(),D("yard1"),t(!0)}},yard2:{name:"Yard 2",handler:()=>{K(),D("yard2"),t(!0)}},mainEnterence:{name:"Main Enterance",handler:()=>{K(),D("main-enterence"),t(!0)}},registration:{name:"Registration",handler:()=>{K(),D("registration"),t(!0)}},restaurant:{name:"Restaurant",handler:()=>{K(),D("restaurant"),t(!0)}},mckinsey:{name:"McKinsey",handler:()=>{J(),D("mckinsey"),t(!0)}},communitySpace1:{name:"First Floor Community Space",handler:()=>{J(),D("community-space-first-floor"),t(!0)}},communitySpace2:{name:"Second Floor Community Space",handler:()=>{q(),D("community-space-second-floor"),t(!0)}},artExhibition:{name:"Art Exhibition",handler:()=>{z(),D("artExhibition"),t(!0)}},library:{name:"Library",handler:()=>{J(),D("library"),t(!0)}},alice:{name:"Alice",handler:()=>{q(),D("alice"),t(!0)}},wellnessRoom:{name:"Wellness & Planeterium",handler:()=>{z(),D("wellnessRoom"),t(!0)}},cinema:{name:"Cinema",handler:()=>{z(),D("cinema"),t(!0)}},cinebar:{name:"Cinebar",handler:()=>{z(),D("cinebar"),t(!0)}}};return r.useEffect((()=>{const e=new IntersectionObserver((e=>{let[t]=e;return t.intersectionRatio<1?j(!0):j(!1)}),{threshold:[1]});return G.current&&e.observe(G.current),()=>{G.current&&e.unobserve(G.current)}}),[G]),r.createElement(n.Z,null,r.createElement("div",{className:"textbox"},r.createElement("h1",{className:"my-4 underline text-secondary font-ocra"},"<Z((e=>!e))}),r.createElement("div",{className:"w-10 h-4 "+(O?"bg-red-500":"bg-gray-400")+" rounded-full shadow-inner"}),r.createElement("div",{className:"absolute w-6 h-6 rounded-full shadow -left-1 -top-1 transition "+(O?"translate-x-full bg-red-300":"bg-gray-200")})),r.createElement("div",{className:"ml-3 text-red-300"},"Hacker Extravaganza"))),r.createElement("h2",{className:"text-xl font-bold font-ocra mt-4"},"Friday, May 24"),r.createElement("p",{className:"mt-4"},r.createElement("ul",null,r.createElement(R,{dayStr:"2024-05-24",startTime:"12:00",endTime:"16:00",title:"Pre-registration",eventLocations:[U.giftShop]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"16:00",title:"Registration",eventLocations:[U.giftShop]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"16:00",title:"Doors open",eventLocations:[U.yard0]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"16:30",endTime:"17:00",title:"Talk: We need Censorships",speakerName:"Fatemeh Fannizadeh (Swarm)",photo:S.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"17:00",endTime:"17:30",title:"Talk: Building for Big V Value",speakerName:"Nick Almond (FactoryDAO)",description:"Crypto was meant to be different. This was the technological frontier for a new world, away from the banks, centralised rent seeking and maximally extractive business models. So what happened? This talk lays out some home truths, discusses where we've gone wrong and what we can do to steer the industry into a better direction.",photo:C.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"17:30",endTime:"18:00",title:"Talk: Are there limits to the reach of US Sanctions laws?",description:"The US Treasury's decision to sanction Tornado Cash, including the immutable pool contracts, has set off a wave of criminal and civil litigation. Do these sanctions go too far, can similar sanctions be used to effectively outlaw crypto all together, and how can we fight back?",speakerName:"Peter van Valkenburg (Coin Center)",photo:F.default,eventLocations:[U.lexis]})," ",r.createElement(M,{dayStr:"2024-05-24",startTime:"18:00",endTime:"19:00",title:"Opening Ceremony",speakerName:"TBA",eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"23:59",title:"Hacking begins",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"19:30",title:"Hacker Team Finding Session",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"21:00",title:"Dinner",eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-24",className:"text-berlin-red",startTime:"19:00",endTime:"23:59",title:"Art Exhibition: co-create",eventLocations:[U.artExhibition]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"19:30",endTime:"20:15",title:"Technical Workshop: Build an Ethereum dApp in 40 mins",speakerName:"Austin Griffith (Ethereum Foundation)",photo:u.default,eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-24",startTime:"20:00",endTime:"21:00",title:"Privacy Corner: Project Ideation Session",className:"text-berlin-red",eventLocations:[U.library]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"20:15",endTime:"21:00",title:"Technical Workshop: Re-inventing login with Sign-in-with-Ethereum",speakerName:"Pedro Gomes (WalletConnect)",description:r.createElement(r.Fragment,null,r.createElement("div",null,"We will learn how powerful SIWE can be used as a tool for building different use-cases such as identity, attestations, permissions and messaging. For example WalletConnect built this app called Web3Inbox to aggregate notifications for multiple dapps and it's based on SIWE. Additionally there are other systems where you can use attestations to build roots of trust with SIWE that generate CACAOs (CAIP-74) to build dapps offchain. Finally we are working on Session Keys which also uses SIWE to empower key delegation for transaction signing for Smart Accounts")),photo:E.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"21:00",endTime:"21:45",title:"Technical Workshop: Integrating RPCh in your Dapp to privately connect to RPC endpoints\n",speakerName:"Tino Breddin (HOPR)",description:"TBA",photo:y.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"21:45",endTime:"22:30",title:"Technical Workshop: Secure communications with Waku",speakerName:"Sergei Tikhomirov (Waku)",description:"TBA",photo:p.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"22:30",endTime:"23:15",title:"Technical Workshop: ZK vs TEE: Wat do (as a product builder)?",speakerName:"Odysseas (Phylax Systems), GregTheGreek (ChainSafe)",photo:f.default,photo2:b.default,description:r.createElement(r.Fragment,null,r.createElement("div",null,"This session delves into Trusted Execution Environments (TEEs) and Zero-Knowledge (ZK) for Ethereum product builders with limited technical depth in these areas. We will examine key considerations such as performance, trust assumptions, cost efficiency, and the complexity of integration to determine their suitability for privacy and verifiable computation in applications.")," ",r.createElement("br",null),r.createElement("div",null,"Participants will learn about the security vulnerabilities, scalability potential, and regulatory compliance aspects of each technology. The talk will also highlight the support available through developer ecosystems and the maturity of existing libraries and tools. By the end, attendees will be equipped to make informed decisions on which technology best meets their project's needs and understand the resources available for implementation.")),eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"23:15",endTime:"23:59",title:"Technical Workshop: How to add ZKPs to your app (with Zupass)?",speakerName:"Richard Liu (0xPARC), Ivan Chub (0xPARC)",photo:v.default,photo2:g.default,description:r.createElement(r.Fragment,null,r.createElement("div",null,'No prior circom or ZK experience needed for this workshop, where we\'ll run through a simple example of a sybil-resistant app that requests a "proof of ETHBerlin hacker visa". Hackers may receive a *cryptographic surprise* during this workshop.')),eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"23:59",endDayStr:"2024-05-25",endTime:"01:00",title:"Midnight Snack",eventLocations:[U.restaurant]}))),r.createElement("div",{className:"flex justify-center"},r.createElement("div",{className:"border-b-[1px] mb-8 mt-4 border-berlin-red opacity-40 w-full"})),r.createElement("h2",{className:"text-xl font-bold font-ocra"},"Saturday, May 25th"),r.createElement("p",{className:"mt-4"},"Happy hacking, no distractions!"),r.createElement("p",{className:"mt-4"},r.createElement(R,{dayStr:"2024-05-25",startTime:"00:00",endTime:"23:59",title:"Hacking",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"09:00",endTime:"11:00",title:"Breakfast",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"10:00",endTime:"11:30",title:"Kundalini yoga",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(M,{dayStr:"2024-05-25",startTime:"11:00",endTime:"13:00",title:"Project Pitches / Feedback Sessions",description:"Are you stuck, looking for another team member or want feedback on your idea? Join this session to pitch your project on stage or learn more about the projects others are working on!",eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"11:00",endTime:"23:59",className:"text-berlin-red",title:"Art Exhibition: co-create",eventLocations:[U.artExhibition]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"12:00",endTime:"18:00",className:"text-berlin-red",title:"Screenprinting and Matcha",eventLocations:[U.library]}),O&&r.createElement(M,{dayStr:"2024-05-25",startTime:"12:00",endTime:"13:20",className:"text-berlin-red",title:"Panel - Decentralized Art Organisation",speakerName:"Vincent Trasov, Benny Giang",description:r.createElement(r.Fragment,null,r.createElement("div",null,"Panel - Decentralized Art Organisation: With Vincent Trasov and Benny Giang; Moderated by Stina Gustafsson.")),eventLocations:[U.artExhibition]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"13:00",endTime:"15:00",title:"Lunch",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"13:00",endTime:"15:00",title:"Reiki practitioner available",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(M,{dayStr:"2024-05-25",startTime:"13:30",endTime:"14:50",className:"text-berlin-red",title:"Panel - Art after NFTs",speakerName:"Joan Heemskerk, Billy Rennekamp",description:r.createElement(r.Fragment,null,r.createElement("div",null,"Panel - Art after NFTs: With Joan Heemskerk and Billy Rennekamp; Moderated by María Paula Fernández.")),eventLocations:[U.artExhibition]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"14:00",endTime:"17:00",title:"Mentoring Expert Office Hours",description:"Check mentor area for detailed schedule!",eventLocations:[U.nodeCafe]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"15:00",endTime:"16:30",title:"Sound healing practice",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"16:00",endTime:"17:00",title:"Privacy Corner: Project Pitches and Feedback Session",className:"text-berlin-red",eventLocations:[U.library]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endTime:"19:00",title:"Yoga flow + Sound Bath",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement("div",{className:"text-berlin-red"},r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endDayStr:"2024-05-26",endTime:"01:00",title:"DJs in Courtyard 1",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endTime:"19:00",title:r.createElement("span",{className:"inline-flex items-center"},"Jommi"," ",r.createElement("a",{href:"https://twitter.com/joakimhi",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(A.fWC,null))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",startTime:"19:00",endTime:"21:00",title:r.createElement("span",{className:"inline-flex items-center"},"Anna"," ",r.createElement("a",{href:"https://soundcloud.com/innermost3000",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(W.OSW,null)),r.createElement("a",{href:"https://twitter.com/annmehr",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(A.fWC,null))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",startTime:"21:00",endTime:"23:00",title:r.createElement("span",{className:"inline-flex items-center"},"Manu +"," ",r.createElement("a",{href:"https://twitter.com/blockravers",className:"ml-2 inline-flex items-center opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},"@blockravers ",r.createElement(A.fWC,{className:"ml-2"}))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",endDayStr:"2024-05-26",startTime:"23:00",endTime:"01:00",title:r.createElement("span",{className:"inline-flex items-center"},"Manuel"," ",r.createElement("a",{href:"https://soundcloud.com/umcharra",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(W.OSW,null))),eventLocations:[U.yard0],className:"ml-12"})),r.createElement(R,{dayStr:"2024-05-25",startTime:"19:00",endTime:"21:00",title:"Dinner",eventLocations:[U.restaurant]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"23:59",endDayStr:"2024-05-26",endTime:"01:00",title:"Midnight Snack",eventLocations:[U.restaurant]})),r.createElement("div",{className:"flex justify-center"},r.createElement("div",{className:"border-b-[1px] mb-8 mt-4 border-berlin-red opacity-40 w-full"})),r.createElement("h2",{className:"text-xl font-bold font-ocra"},"Sunday, May 26th"),r.createElement("p",{className:"mt-4"},"Don't forget to submit your projects by 11:30 am Berlin time!"),r.createElement("p",{className:"mt-4"},r.createElement("ul",null,r.createElement(R,{dayStr:"2024-05-26",startTime:"00:00",endTime:"11:00",title:"Hacking (Submission deadline at 11:30 am)",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"09:00",endTime:"11:00",title:"Breakfast",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"10:00",endTime:"10:45",title:"Active/dance meditation",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"10:45",endTime:"11:30",title:"Vibro Acoustic massage 1:1 first slot",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"11:30",title:"PROJECT SUBMISSION DEADLINE",className:"font-bold italic",eventLocations:[]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"11:45",endTime:"12:30",title:"Vibro acoustic massage 1:1 2nd slot",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"12:00",endTime:"16:30",title:"Hackathon Project Judging",eventLocations:[U.mckinsey]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"13:00",endTime:"15:00",title:"Lunch",eventLocations:[U.restaurant]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"14:00",title:"Stage opening",eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"14:05",endTime:"14:35",title:"Talk: Ethevacuations: Crypto in a humanitarian crisis",speakerName:"Kat (EthEvacuations), Joshua Dávila (The Blockchain Socialist)",description:"Kat recently left her crypto job to start Ethevacuations when the ongoing conflict in Gaza began as she learned that crypto was a useful tool to help those suffering under the bombardment. Kat will be interviewed by Joshua Dávila to talk about her experience and the reality of using crypto to help those evacuate from Gaza during one of the most difficult humanitarian crises imaginable. Crypto was made for this and there are important lessons to be had.",photo:w.default,photo2:k.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"14:40",endTime:"15:10",title:"Talk: Information flow control a.k.a. privacy is not the concept your are looking for",speakerName:"Christopher Goes (Anoma)",eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"15:15",endTime:"15:45",title:"Talk: Anarchy, Truth and Justice",description:"We are building systems that resist coercion and promote freedom. We are not the first people in history to try that, so what happened before?\nThis talk will look at some historical attempts to create systems and societies that do not depend on government or institutional power, from the Diggers to the Free Software movement.\nThen we will look at tools and techniques we can use to govern and sustain crypto-economic systems and talk about how to increase their impact and protect them against bribery, cooption and destruction.",speakerName:"Edmund Edgar (RealityETH)",photo:x.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"15:50",endTime:"16:20",title:"Talk: The Silent Strings of Proof of Personhood",description:r.createElement(r.Fragment,null,r.createElement("p",null,"Experiments in Proof of Personhood—where each person has a single, unique identity—have increasingly been touted as a mechanism for tracing information provenance, distributing Universal Basic Income, and facilitating democratic governance over systems of artificial intelligence."),r.createElement("p",null," ","This talk chronicles Idena's experiment in Proof of Personhood from launch in August 2019 to a crisis in May 2022. We show how despite verifying humans, hidden pools rapidly emerged—some cooperative, but most controlled by “puppeteers” who, at best, remunerated participants for periodically proving their uniqueness in exchange for access to their secret keys and controlling their accounts. Instead of fostering an egalitarian network of unique identities, the protocol fractured into hidden subnetworks vying for control over an economic pie with economies of scale trending towards oligopoly, undermining the protocol's security and ambitions for democratic governance (one-person, one-vote) and UBI rewards (one-person, one reward). By giving humans economic incentives to periodically differentiate themselves from bots, the protocol gave more informed, resourceful humans financial incentives to puppeteer less informed humans like bots.")),speakerName:"Puja Ohlhaver (Lawyer & Researcher), Mikhail Nikulin (Idena)",photo:P.default,photo2:L.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"16:25",endTime:"16:55",title:"Talk: The Fight for Privacy",speakerName:"Ameen Soleimani (0xbow)",photo:T.default,eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"16:30",title:"Upper floors close",eventLocations:[]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"17:00",endTime:"17:30",title:"Talk: The Challenge of Decentralised Communication",description:r.createElement(r.Fragment,null,r.createElement("p",null,"Decentralised communication tools are at least 10x harder to build than their mainstream centralised equivalents, and in a world where Discord, Slack, Telegram and WhatsApp have billions of dollars of funding and have created incredibly polished products, it can be hard for decentralised alternatives to compete. However: centralisation lasts until the next Elon, whereas decentralisation can last forever."),r.createElement("p",null,"In this talk, I'll explain the challenges we've hit in building Matrix to compete with the mainstream alternatives, how we're solving them, why it's taken so long, and why it's more important than ever to keep the ideal of decentralised communication alive.")),speakerName:"Matthew Hodgson (Matrix)",photo:N.default,eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"17:30",endTime:"19:00",title:"Closing Ceremony",eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"19:00",endTime:"20:00",title:"Closing aperitif, snacks & mingle with DJ",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"19:00",endTime:"20:00",title:r.createElement("span",{className:"inline-flex items-center"},"YaNKeY"," ",r.createElement("a",{href:"https://on.soundcloud.com/cEYw4",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(W.OSW,null))),className:"ml-12",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"20:00",title:"End of hackathon, doors close",eventLocations:[]}))))),r.createElement(h.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:I,activeMap:a,activeRoomClass:o}))}},9184:function(e,t,a){t.Z=a.p+"static/fifthFloor-6dc147d73bcb5502b4843f6ef45c1a81.png"},228:function(e,t,a){t.Z=a.p+"static/firstFloor-40005b3ded32f04558d7184cf1b4db48.png"},8595:function(e,t,a){t.Z=a.p+"static/fourthFloor-a546bb8ae3bd92f2d3cf397a628592e5.png"},4787:function(e,t,a){t.Z=a.p+"static/groundFloor-aa5688aa3d7359340764a0a66270ac8c.png"},9515:function(e,t,a){t.Z=a.p+"static/secondFloor-b5962086a073150c890aa04414996fe3.png"},6048:function(e,t,a){t.Z=a.p+"static/thirdFloor-55d040ac1a61dbe808e42bcdad639ea9.png"}}]); -//# sourceMappingURL=component---src-pages-schedule-jsx-6f0aea47755bd651b4d2.js.map \ No newline at end of file +"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[96],{1002:function(e,t,a){a.r(t);var n=a(3911),r=a(7294),i=a(3253),o=a.n(i),l=a(4787),s=a(228),c=a(9515),m=(a(6048),a(8595),a(9184)),d=a(7336),h=a(2722),u=a(7650),p=a(3762),y=a(1784),f=a(1606),E=a(1689),v=a(4636),b=a(8009),g=a(9765),T=a(1104),x=a(7222),S=a(7557),k=a(4449),w=a(7361),N=a(5593),L=a(8085),C=a(756),P=a(2488),A=a(4931),W=a(2091),D=a(8908);const F=new Date,R=e=>{let{title:t,eventLocations:a,dayStr:n,endDayStr:i,startTime:o,endTime:l,className:s}=e;const c=new Date(n+"T"+o+":00+02:00"),m=l?new Date(i||n+"T"+l+":00+02:00"):c;return r.createElement("li",{className:(F>m?"text-gray-700":F>c?"font-bold animate-pulse-faster":s)+" list-none text-lg"},r.createElement("span",{className:"fake-bold"},r.createElement("span",{className:"text-berlin-red opacity-50"},"> "),o+(l?"-"+l:"")+" -")," ",t," ",a.map((e=>r.createElement("button",{className:(F>m?"text-gray-700":F>c?"font-bold animate-pulse-faster":"text-berlin-red")+" text-sm",onClick:()=>{e.handler()}},r.createElement("span",{className:"align-middle"},r.createElement("span",{class:"material-symbols-outlined text-sm mr-0.5 ml-1"},"my_location")),r.createElement("span",{className:"underline"},e.name)))))},M=e=>{let{className:t,title:a,eventLocations:n,dayStr:i,endDayStr:l,startTime:s,endTime:c,description:m,speakerName:d,photo:h,photo2:u,photo3:p}=e;const[y,f]=r.useState(!1),E=new Date(i+"T"+s+":00+02:00"),v=c?new Date(l||i+"T"+c+":00+02:00"):E;return r.createElement("div",null,r.createElement(R,{title:a,eventLocations:n,dayStr:i,endDayStr:l,startTime:s,endTime:c,className:t}),r.createElement("div",{className:"ml-8 -mt-2 mb-4 text-sm "+(F>v?"text-gray-700":F>E?"font-bold animate-pulse-faster":"")+" "+t},r.createElement("span",null,r.createElement("span",{className:"text-xs text-berlin-red opacity-50 mr-0.5"},"> "),d),r.createElement("button",{onClick:()=>f(!0),className:"underline "+(F>v?"text-gray-700":"text-gray-500")+" mx-2"},"More Info")),r.createElement(o(),{isOpen:y,style:{overlay:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(255, 255, 255, 0.5)"},content:{zIndex:40,backgroundColor:"rgba(0, 0, 0, 0.9)",margin:"auto"}},overlayClassName:"flex items-center z-40 px-4 md:px-16 lg:px-32 xl:px-48 transition-all duration-200 ease-in-out py-8 max-h-screen",className:"flex flex-col items-center justify-center max-h-full",shouldCloseOnEsc:!0,shouldCloseOnOverlayClick:!0,onRequestClose:e=>{e.stopPropagation(),f(!1)},closeTimeoutMS:500},r.createElement("div",{className:"p-8 font-w95 text-center overflow-y-auto max-w-4xl"},r.createElement("div",{className:"flex justify-end"},r.createElement("button",{className:"text-4xl text-berlin-red",onClick:()=>f(!1)},"X")),r.createElement("div",{className:"flex flex-row justify-center p-4 flex-wrap"},h&&r.createElement("img",{src:h,className:"h-32 md:h-64 self-center mx-4 my-4"}),u&&r.createElement("img",{src:u,className:"h-32 md:h-64 self-center mx-4 my-4"}),p&&r.createElement("img",{src:p,className:"h-32 md:h-64 self-center mx-4 my-4"})),r.createElement("div",{className:"text-xl md:text-3xl font-bold my-4"},a),r.createElement("div",{className:"text-lg md:text-2xl"},d),r.createElement("div",{className:"mt-8"},m))))};t.default=()=>{const[e,t]=r.useState(!1),[a,i]=r.useState(l.Z),[o,F]=r.useState("lexis"),[I,B]=r.useState("Ground Floor (#0)"),[O,H]=r.useState(!1),[j,Z]=r.useState(!1);let G=r.useRef(null);const K=()=>{i(l.Z),B("Ground Floor (#0)")},J=()=>{i(s.Z),B("First Floor (#1)")},q=()=>{i(c.Z),B("Second Floor (#2)")},z=()=>{i(m.Z),B("Fifth Floor (#5)")},U={lexis:{name:"Lexis",handler:()=>{K(),F("lexis"),t(!0)}},giftShop:{name:"Gift Shop",handler:()=>{K(),F("giftShop"),t(!0)}},nodeCafe:{name:"Node Cafe",handler:()=>{K(),F("nodeCafe"),t(!0)}},yard0:{name:"Yard 0",handler:()=>{K(),F("yard0"),t(!0)}},yard1:{name:"Yard 1",handler:()=>{K(),F("yard1"),t(!0)}},yard2:{name:"Yard 2",handler:()=>{K(),F("yard2"),t(!0)}},mainEnterence:{name:"Main Enterance",handler:()=>{K(),F("main-enterence"),t(!0)}},registration:{name:"Registration",handler:()=>{K(),F("registration"),t(!0)}},restaurant:{name:"Restaurant",handler:()=>{K(),F("restaurant"),t(!0)}},mckinsey:{name:"McKinsey",handler:()=>{J(),F("mckinsey"),t(!0)}},communitySpace1:{name:"First Floor Community Space",handler:()=>{J(),F("community-space-first-floor"),t(!0)}},communitySpace2:{name:"Second Floor Community Space",handler:()=>{q(),F("community-space-second-floor"),t(!0)}},artExhibition:{name:"Art Exhibition",handler:()=>{z(),F("artExhibition"),t(!0)}},library:{name:"Library",handler:()=>{J(),F("library"),t(!0)}},alice:{name:"Alice",handler:()=>{q(),F("alice"),t(!0)}},wellnessRoom:{name:"Wellness & Planeterium",handler:()=>{z(),F("wellnessRoom"),t(!0)}},cinema:{name:"Cinema",handler:()=>{z(),F("cinema"),t(!0)}},cinebar:{name:"Cinebar",handler:()=>{z(),F("cinebar"),t(!0)}}};return r.useEffect((()=>{const e=new IntersectionObserver((e=>{let[t]=e;return t.intersectionRatio<1?Z(!0):Z(!1)}),{threshold:[1]});return G.current&&e.observe(G.current),()=>{G.current&&e.unobserve(G.current)}}),[G]),r.createElement(n.Z,null,r.createElement("div",{className:"textbox"},r.createElement("h1",{className:"my-4 underline text-secondary font-ocra"},"<H((e=>!e))}),r.createElement("div",{className:"w-10 h-4 "+(O?"bg-red-500":"bg-gray-400")+" rounded-full shadow-inner"}),r.createElement("div",{className:"absolute w-6 h-6 rounded-full shadow -left-1 -top-1 transition "+(O?"translate-x-full bg-red-300":"bg-gray-200")})),r.createElement("div",{className:"ml-3 text-red-300"},"Hacker Extravaganza"))),r.createElement("h2",{className:"text-xl font-bold font-ocra mt-4"},"Friday, May 24"),r.createElement("p",{className:"mt-4"},r.createElement("ul",null,r.createElement(R,{dayStr:"2024-05-24",startTime:"12:00",endTime:"16:00",title:"Pre-registration",eventLocations:[U.giftShop]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"16:00",title:"Registration",eventLocations:[U.giftShop]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"16:00",title:"Doors open",eventLocations:[U.yard0]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"16:30",endTime:"17:00",title:"Talk: We need Censorships",speakerName:"Fatemeh Fannizadeh (Swarm)",photo:S.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"17:00",endTime:"17:30",title:"Talk: Building for Big V Value",speakerName:"Nick Almond (FactoryDAO)",description:"Crypto was meant to be different. This was the technological frontier for a new world, away from the banks, centralised rent seeking and maximally extractive business models. So what happened? This talk lays out some home truths, discusses where we've gone wrong and what we can do to steer the industry into a better direction.",photo:C.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"17:30",endTime:"18:00",title:"Talk: Are there limits to the reach of US Sanctions laws?",description:"The US Treasury's decision to sanction Tornado Cash, including the immutable pool contracts, has set off a wave of criminal and civil litigation. Do these sanctions go too far, can similar sanctions be used to effectively outlaw crypto all together, and how can we fight back?",speakerName:"Peter van Valkenburg (Coin Center)",photo:P.default,eventLocations:[U.lexis]})," ",r.createElement(M,{dayStr:"2024-05-24",startTime:"18:00",endTime:"19:00",title:"Opening Ceremony",speakerName:"TBA",eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"23:59",title:"Hacking begins",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"19:30",title:"Hacker Team Finding Session",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"19:00",endTime:"21:00",title:"Dinner",eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-24",className:"text-berlin-red",startTime:"19:00",endTime:"23:59",title:"Art Exhibition: co-create",eventLocations:[U.artExhibition]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"19:30",endTime:"20:15",title:"Technical Workshop: Build an Ethereum dApp in 40 mins",speakerName:"Austin Griffith (Ethereum Foundation)",photo:u.default,eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-24",startTime:"20:00",endTime:"21:00",title:"Privacy Corner: Project Ideation Session",className:"text-berlin-red",eventLocations:[U.library]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"20:15",endTime:"21:00",title:"Technical Workshop: Re-inventing login with Sign-in-with-Ethereum",speakerName:"Pedro Gomes (WalletConnect)",description:r.createElement(r.Fragment,null,r.createElement("div",null,"We will learn how powerful SIWE can be used as a tool for building different use-cases such as identity, attestations, permissions and messaging. For example WalletConnect built this app called Web3Inbox to aggregate notifications for multiple dapps and it's based on SIWE. Additionally there are other systems where you can use attestations to build roots of trust with SIWE that generate CACAOs (CAIP-74) to build dapps offchain. Finally we are working on Session Keys which also uses SIWE to empower key delegation for transaction signing for Smart Accounts")),photo:v.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"21:00",endTime:"21:45",title:"Technical Workshop: Integrating RPCh in your Dapp to privately connect to RPC endpoints\n",speakerName:"Tino Breddin (HOPR)",description:"TBA",photo:y.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"21:45",endTime:"22:30",title:"Technical Workshop: Secure communications with Waku",speakerName:"Sergei Tikhomirov (Waku)",description:"TBA",photo:p.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"22:30",endTime:"23:15",title:"Technical Workshop: ZK vs TEE: Wat do (as a product builder)?",speakerName:"Odysseas (Phylax Systems), GregTheGreek (ChainSafe)",photo:f.default,photo2:E.default,description:r.createElement(r.Fragment,null,r.createElement("div",null,"This session delves into Trusted Execution Environments (TEEs) and Zero-Knowledge (ZK) for Ethereum product builders with limited technical depth in these areas. We will examine key considerations such as performance, trust assumptions, cost efficiency, and the complexity of integration to determine their suitability for privacy and verifiable computation in applications.")," ",r.createElement("br",null),r.createElement("div",null,"Participants will learn about the security vulnerabilities, scalability potential, and regulatory compliance aspects of each technology. The talk will also highlight the support available through developer ecosystems and the maturity of existing libraries and tools. By the end, attendees will be equipped to make informed decisions on which technology best meets their project's needs and understand the resources available for implementation.")),eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-24",startTime:"23:15",endTime:"23:59",title:"Technical Workshop: How to add ZKPs to your app (with Zupass)?",speakerName:"Richard Liu (0xPARC), Ivan Chub (0xPARC)",photo:b.default,photo2:g.default,description:r.createElement(r.Fragment,null,r.createElement("div",null,'No prior circom or ZK experience needed for this workshop, where we\'ll run through a simple example of a sybil-resistant app that requests a "proof of ETHBerlin hacker visa". Hackers may receive a *cryptographic surprise* during this workshop.')),eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-24",startTime:"23:59",endDayStr:"2024-05-25",endTime:"01:00",title:"Midnight Snack",eventLocations:[U.restaurant]}))),r.createElement("div",{className:"flex justify-center"},r.createElement("div",{className:"border-b-[1px] mb-8 mt-4 border-berlin-red opacity-40 w-full"})),r.createElement("h2",{className:"text-xl font-bold font-ocra"},"Saturday, May 25th"),r.createElement("p",{className:"mt-4"},"Happy hacking, no distractions!"),r.createElement("p",{className:"mt-4"},r.createElement(R,{dayStr:"2024-05-25",startTime:"00:00",endTime:"23:59",title:"Hacking",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"09:00",endTime:"11:00",title:"Breakfast",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"10:00",endTime:"11:30",title:"Kundalini yoga",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(M,{dayStr:"2024-05-25",startTime:"11:00",endTime:"13:00",title:"Project Pitches / Feedback Sessions",description:"Are you stuck, looking for another team member or want feedback on your idea? Join this session to pitch your project on stage or learn more about the projects others are working on!",eventLocations:[U.lexis]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"11:00",endTime:"23:59",className:"text-berlin-red",title:"Art Exhibition: co-create",eventLocations:[U.artExhibition]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"12:00",endTime:"18:00",className:"text-berlin-red",title:"Screenprinting and Matcha",eventLocations:[U.library]}),O&&r.createElement(M,{dayStr:"2024-05-25",startTime:"12:00",endTime:"13:20",className:"text-berlin-red",title:"Panel - Decentralized Art Organisation",speakerName:"Vincent Trasov, Benny Giang",description:r.createElement(r.Fragment,null,r.createElement("div",null,"Panel - Decentralized Art Organisation: With Vincent Trasov and Benny Giang; Moderated by Stina Gustafsson.")),eventLocations:[U.artExhibition]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"13:00",endTime:"15:00",title:"Lunch",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"13:00",endTime:"15:00",title:"Reiki practitioner available",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(M,{dayStr:"2024-05-25",startTime:"13:30",endTime:"14:50",className:"text-berlin-red",title:"Panel - Art after NFTs",speakerName:"Joan Heemskerk, Billy Rennekamp",description:r.createElement(r.Fragment,null,r.createElement("div",null,"Panel - Art after NFTs: With Joan Heemskerk and Billy Rennekamp; Moderated by María Paula Fernández.")),eventLocations:[U.artExhibition]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"14:00",endTime:"17:00",title:"Mentoring Expert Office Hours",description:"Check mentor area for detailed schedule!",eventLocations:[U.nodeCafe]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"15:00",endTime:"16:30",title:"Sound healing practice",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"16:00",endTime:"17:00",title:"Privacy Corner: Project Pitches and Feedback Session",className:"text-berlin-red",eventLocations:[U.library]}),O&&r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endTime:"19:00",title:"Yoga flow + Sound Bath",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement("div",{className:"text-berlin-red"},r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endDayStr:"2024-05-26",endTime:"01:00",title:"DJs in Courtyard 1",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"17:00",endTime:"19:00",title:r.createElement("span",{className:"inline-flex items-center"},"Jommi"," ",r.createElement("a",{href:"https://twitter.com/joakimhi",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(W.fWC,null))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",startTime:"19:00",endTime:"21:00",title:r.createElement("span",{className:"inline-flex items-center"},"Anna"," ",r.createElement("a",{href:"https://soundcloud.com/innermost3000",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(D.OSW,null)),r.createElement("a",{href:"https://twitter.com/annmehr",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(W.fWC,null))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",startTime:"21:00",endTime:"23:00",title:r.createElement("span",{className:"inline-flex items-center"},"Manu +"," ",r.createElement("a",{href:"https://twitter.com/blockravers",className:"ml-2 inline-flex items-center opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},"@blockravers ",r.createElement(W.fWC,{className:"ml-2"}))),eventLocations:[U.yard0],className:"ml-12"}),r.createElement(R,{dayStr:"2024-05-25",endDayStr:"2024-05-26",startTime:"23:00",endTime:"01:00",title:r.createElement("span",{className:"inline-flex items-center"},"Manuel"," ",r.createElement("a",{href:"https://soundcloud.com/umcharra",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(D.OSW,null))),eventLocations:[U.yard0],className:"ml-12"})),r.createElement(R,{dayStr:"2024-05-25",startTime:"19:00",endTime:"21:00",title:"Dinner",eventLocations:[U.restaurant]}),r.createElement(R,{dayStr:"2024-05-25",startTime:"23:59",endDayStr:"2024-05-26",endTime:"01:00",title:"Midnight Snack",eventLocations:[U.restaurant]})),r.createElement("div",{className:"flex justify-center"},r.createElement("div",{className:"border-b-[1px] mb-8 mt-4 border-berlin-red opacity-40 w-full"})),r.createElement("h2",{className:"text-xl font-bold font-ocra"},"Sunday, May 26th"),r.createElement("p",{className:"mt-4"},"Don't forget to submit your projects by 11:30 am Berlin time!"),r.createElement("p",{className:"mt-4"},r.createElement("ul",null,r.createElement(R,{dayStr:"2024-05-26",startTime:"00:00",endTime:"11:00",title:"Hacking (Submission deadline at 11:30 am)",className:"font-bold italic",eventLocations:[]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"09:00",endTime:"11:00",title:"Breakfast",eventLocations:[U.restaurant]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"10:00",endTime:"10:45",title:"Active/dance meditation",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"10:45",endTime:"11:30",title:"Vibro Acoustic massage 1:1 first slot",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"11:30",title:"PROJECT SUBMISSION DEADLINE",className:"font-bold italic",eventLocations:[]}),O&&r.createElement(R,{dayStr:"2024-05-26",startTime:"11:45",endTime:"12:30",title:"Vibro acoustic massage 1:1 2nd slot",className:"text-berlin-red",eventLocations:[U.wellnessRoom]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"12:00",endTime:"16:30",title:"Hackathon Project Judging",eventLocations:[U.mckinsey]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"13:00",endTime:"15:00",title:"Lunch",eventLocations:[U.restaurant]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"14:00",title:"Stage opening",eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"14:05",endTime:"14:35",title:"Talk: Ethevacuations: Crypto in a humanitarian crisis",speakerName:"Kat (EthEvacuations), Joshua Dávila (The Blockchain Socialist)",description:"Kat recently left her crypto job to start Ethevacuations when the ongoing conflict in Gaza began as she learned that crypto was a useful tool to help those suffering under the bombardment. Kat will be interviewed by Joshua Dávila to talk about her experience and the reality of using crypto to help those evacuate from Gaza during one of the most difficult humanitarian crises imaginable. Crypto was made for this and there are important lessons to be had.",photo:w.default,photo2:k.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"14:40",endTime:"15:10",title:"Talk: Information flow control a.k.a. privacy is not the concept your are looking for",speakerName:"Christopher Goes (Anoma)",eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"15:15",endTime:"15:45",title:"Talk: Anarchy, Truth and Justice",description:"We are building systems that resist coercion and promote freedom. We are not the first people in history to try that, so what happened before?\nThis talk will look at some historical attempts to create systems and societies that do not depend on government or institutional power, from the Diggers to the Free Software movement.\nThen we will look at tools and techniques we can use to govern and sustain crypto-economic systems and talk about how to increase their impact and protect them against bribery, cooption and destruction.",speakerName:"Edmund Edgar (RealityETH)",photo:x.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"15:50",endTime:"16:20",title:"Talk: The Silent Strings of Proof of Personhood",description:r.createElement(r.Fragment,null,r.createElement("p",null,"Experiments in Proof of Personhood—where each person has a single, unique identity—have increasingly been touted as a mechanism for tracing information provenance, distributing Universal Basic Income, and facilitating democratic governance over systems of artificial intelligence."),r.createElement("p",null," ","This talk chronicles Idena's experiment in Proof of Personhood from launch in August 2019 to a crisis in May 2022. We show how despite verifying humans, hidden pools rapidly emerged—some cooperative, but most controlled by “puppeteers” who, at best, remunerated participants for periodically proving their uniqueness in exchange for access to their secret keys and controlling their accounts. Instead of fostering an egalitarian network of unique identities, the protocol fractured into hidden subnetworks vying for control over an economic pie with economies of scale trending towards oligopoly, undermining the protocol's security and ambitions for democratic governance (one-person, one-vote) and UBI rewards (one-person, one reward). By giving humans economic incentives to periodically differentiate themselves from bots, the protocol gave more informed, resourceful humans financial incentives to puppeteer less informed humans like bots.")),speakerName:"Puja Ohlhaver (Lawyer & Researcher), Mikhail Nikulin (Idena)",photo:A.default,photo2:L.default,eventLocations:[U.lexis]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"16:25",endTime:"16:55",title:"Talk: The Fight for Privacy",speakerName:"Ameen Soleimani (0xbow)",photo:T.default,eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"16:30",title:"Upper floors close",eventLocations:[]}),r.createElement(M,{dayStr:"2024-05-26",startTime:"17:00",endTime:"17:30",title:"Talk: The Challenge of Decentralised Communication",description:r.createElement(r.Fragment,null,r.createElement("p",null,"Decentralised communication tools are at least 10x harder to build than their mainstream centralised equivalents, and in a world where Discord, Slack, Telegram and WhatsApp have billions of dollars of funding and have created incredibly polished products, it can be hard for decentralised alternatives to compete. However: centralisation lasts until the next Elon, whereas decentralisation can last forever."),r.createElement("p",null,"In this talk, I'll explain the challenges we've hit in building Matrix to compete with the mainstream alternatives, how we're solving them, why it's taken so long, and why it's more important than ever to keep the ideal of decentralised communication alive.")),speakerName:"Matthew Hodgson (Matrix)",photo:N.default,eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"17:30",endTime:"19:00",title:"Closing Ceremony",eventLocations:[U.lexis]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"19:00",endTime:"20:00",title:"Closing aperitif, snacks & mingle with DJ",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"19:00",endTime:"20:00",title:r.createElement("span",{className:"inline-flex items-center"},"YaNKeY"," ",r.createElement("a",{href:"https://on.soundcloud.com/cEYw4",className:"ml-2 inline-block opacity-70 hover:opacity-100 text-berlin-red hover:text-berlin-red",target:"_blank",rel:"noopener noreferrer"},r.createElement(D.OSW,null))),className:"ml-12",eventLocations:[U.yard0]}),r.createElement(R,{dayStr:"2024-05-26",startTime:"20:00",title:"End of hackathon, doors close",eventLocations:[]}))))),r.createElement(h.Z,{isOpen:e,handleCloseModal:e=>{e.stopPropagation(),t(!1)},activeMapName:I,activeMap:a,activeRoomClass:o}))}}}]); +//# sourceMappingURL=component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js.map \ No newline at end of file diff --git a/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js.map b/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js.map new file mode 100644 index 00000000..e95b9860 --- /dev/null +++ b/component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js.map @@ -0,0 +1 @@ +{"version":3,"file":"component---src-pages-schedule-jsx-a31ed06e5235d6421aa6.js","mappings":"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","sources":["webpack://ethberlin/./src/pages/schedule.jsx"],"sourcesContent":["import Layout from \"../components/Layout\";\nimport React from \"react\";\nimport ReactModal from \"react-modal\";\nimport \"../styles/modal.css\";\nimport \"../styles/rooms/groundFloor.css\";\nimport \"../styles/rooms/firstFloor.css\";\nimport \"../styles/rooms/secondFloor.css\";\nimport \"../styles/rooms/fifthFloor.css\";\nimport groundFloor from \"../images/groundFloor.png\";\nimport firstFloor from \"../images/firstFloor.png\";\nimport secondFloor from \"../images/secondFloor.png\";\nimport thirdFloor from \"../images/thirdFloor.png\";\nimport fourthFloor from \"../images/fourthFloor.png\";\nimport fifthFloor from \"../images/fifthFloor.png\";\nimport ETHBerlin from \"../components/ETHBerlin\";\nimport VenueMapModal from \"../components/VenueMapModal\";\nimport austin from \"../assets/people/workshops/austin.jpeg\";\nimport sergei from \"../assets/people/workshops/sergei.jpeg\";\nimport tino from \"../assets/people/workshops/tino.jpeg\";\nimport odysseas from \"../assets/people/workshops/odysseas.jpeg\";\nimport greg from \"../assets/people/workshops/greg.jpeg\";\nimport pedro from \"../assets/people/workshops/pedro.jpeg\";\nimport richard from \"../assets/people/workshops/richard.jpeg\";\nimport ivan from \"../assets/people/workshops/ivan.jpeg\";\nimport ameen from \"../assets/people/speakers/ameen.jpeg\";\nimport edmundedgar from \"../assets/people/speakers/edmundedgar.jpeg\";\nimport fat from \"../assets/people/speakers/fat.jpeg\";\nimport josh from \"../assets/people/speakers/josh.jpeg\";\nimport kat from \"../assets/people/speakers/kat.jpeg\";\nimport matthew from \"../assets/people/speakers/matthew.jpeg\";\nimport mikhail from \"../assets/people/speakers/mikhail.jpeg\";\nimport nick from \"../assets/people/speakers/nick.jpeg\";\nimport peter from \"../assets/people/speakers/peter.jpeg\";\nimport puja from \"../assets/people/speakers/puja.jpeg\";\n\nimport { FaTwitter } from \"react-icons/fa\";\nimport { ImSoundcloud } from \"react-icons/im\";\n\nconst currentDate = new Date();\n// const currentDate = new Date(\"2024-05-25T00:20:00+02:00\");\n\nconst ProgramItem = ({\n title,\n eventLocations,\n dayStr,\n endDayStr,\n startTime,\n endTime,\n className,\n}) => {\n // ISO Format: 2024-05-24T00:09:00+02:00\n const startDate = new Date(dayStr + \"T\" + startTime + \":00+02:00\");\n const endDate = endTime\n ? new Date(endDayStr || dayStr + \"T\" + endTime + \":00+02:00\")\n : startDate;\n\n return (\n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : className\n } list-none text-lg`}\n >\n \n {\"> \"}\n {startTime + (endTime ? \"-\" + endTime : \"\") + \" -\"}\n {\" \"}\n {title}{\" \"}\n {eventLocations.map((loc) => (\n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : \"text-berlin-red\"\n } text-sm`}\n onClick={() => {\n loc.handler();\n }}\n >\n \n \n my_location\n \n \n {loc.name}\n \n ))}\n \n );\n};\n\nconst SpeechItem = ({\n className,\n title,\n eventLocations,\n dayStr,\n endDayStr,\n startTime,\n endTime,\n description,\n speakerName,\n photo,\n photo2,\n photo3,\n}) => {\n const [isModalOpen, setIsModalOpen] = React.useState(false);\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsModalOpen(false);\n };\n // ISO Format: 2024-05-24T00:09:00+02:00\n const startDate = new Date(dayStr + \"T\" + startTime + \":00+02:00\");\n const endDate = endTime\n ? new Date(endDayStr || dayStr + \"T\" + endTime + \":00+02:00\")\n : startDate;\n\n return (\n
\n \n endDate\n ? \"text-gray-700\"\n : currentDate > startDate\n ? \"font-bold animate-pulse-faster\"\n : \"\"\n } ${className}`}\n >\n \n \n {\"> \"}\n \n {speakerName}\n \n setIsModalOpen(true)}\n className={`underline ${\n currentDate > endDate ? \"text-gray-700\" : \"text-gray-500\"\n } mx-2`}\n >\n More Info\n \n
\n \n
\n
\n setIsModalOpen(false)}\n >\n X\n \n
\n
\n {photo && (\n \n )}\n {photo2 && (\n \n )}\n {photo3 && (\n \n )}\n
\n
{title}
\n
{speakerName}
\n
{description}
\n
\n \n \n );\n};\n\nconst Program = () => {\n const [isMapModalOpen, setIsMapModalOpen] = React.useState(false);\n const [activeMap, setActiveMap] = React.useState(groundFloor);\n const [activeRoomClass, setActiveRoomClass] = React.useState(\"lexis\");\n const [activeMapName, setActiveMapName] = React.useState(\"Ground Floor (#0)\");\n const [isExtravaganza, setIsExtravaganza] = React.useState(false);\n const [isSticky, setIsSticky] = React.useState(false);\n\n let toggleRef = React.useRef(null);\n\n const handleCloseModal = (e) => {\n e.stopPropagation();\n setIsMapModalOpen(false);\n };\n\n const handleGroundFloor = () => {\n setActiveMap(groundFloor);\n setActiveMapName(\"Ground Floor (#0)\");\n };\n\n const handleFirstFloor = () => {\n setActiveMap(firstFloor);\n setActiveMapName(\"First Floor (#1)\");\n };\n\n const handleSecondFloor = () => {\n setActiveMap(secondFloor);\n setActiveMapName(\"Second Floor (#2)\");\n };\n\n const handleThirdFloor = () => {\n setActiveMap(thirdFloor);\n setActiveMapName(\"Third Floor (#3)\");\n };\n\n const handleFourthFloor = () => {\n setActiveMap(fourthFloor);\n setActiveMapName(\"Fourth Floor (#4)\");\n };\n\n const handleFifthFloor = () => {\n setActiveMap(fifthFloor);\n setActiveMapName(\"Fifth Floor (#5)\");\n };\n\n const locations = {\n lexis: {\n name: \"Lexis\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"lexis\");\n setIsMapModalOpen(true);\n },\n },\n giftShop: {\n name: \"Gift Shop\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"giftShop\");\n setIsMapModalOpen(true);\n },\n },\n nodeCafe: {\n name: \"Node Cafe\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"nodeCafe\");\n setIsMapModalOpen(true);\n },\n },\n yard0: {\n name: \"Yard 0\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard0\");\n setIsMapModalOpen(true);\n },\n },\n yard1: {\n name: \"Yard 1\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard1\");\n setIsMapModalOpen(true);\n },\n },\n yard2: {\n name: \"Yard 2\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"yard2\");\n setIsMapModalOpen(true);\n },\n },\n mainEnterence: {\n name: \"Main Enterance\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"main-enterence\");\n setIsMapModalOpen(true);\n },\n },\n registration: {\n name: \"Registration\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"registration\");\n setIsMapModalOpen(true);\n },\n },\n restaurant: {\n name: \"Restaurant\",\n handler: () => {\n handleGroundFloor();\n setActiveRoomClass(\"restaurant\");\n setIsMapModalOpen(true);\n },\n },\n mckinsey: {\n name: \"McKinsey\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"mckinsey\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace1: {\n name: \"First Floor Community Space\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"community-space-first-floor\");\n setIsMapModalOpen(true);\n },\n },\n communitySpace2: {\n name: \"Second Floor Community Space\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"community-space-second-floor\");\n setIsMapModalOpen(true);\n },\n },\n artExhibition: {\n name: \"Art Exhibition\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"artExhibition\");\n setIsMapModalOpen(true);\n },\n },\n library: {\n name: \"Library\",\n handler: () => {\n handleFirstFloor();\n setActiveRoomClass(\"library\");\n setIsMapModalOpen(true);\n },\n },\n alice: {\n name: \"Alice\",\n handler: () => {\n handleSecondFloor();\n setActiveRoomClass(\"alice\");\n setIsMapModalOpen(true);\n },\n },\n wellnessRoom: {\n name: \"Wellness & Planeterium\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"wellnessRoom\");\n setIsMapModalOpen(true);\n },\n },\n cinema: {\n name: \"Cinema\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinema\");\n setIsMapModalOpen(true);\n },\n },\n cinebar: {\n name: \"Cinebar\",\n handler: () => {\n handleFifthFloor();\n setActiveRoomClass(\"cinebar\");\n setIsMapModalOpen(true);\n },\n },\n };\n\n React.useEffect(() => {\n const observer = new IntersectionObserver(\n ([e]) =>\n e.intersectionRatio < 1 ? setIsSticky(true) : setIsSticky(false),\n { threshold: [1] }\n );\n if (toggleRef.current) observer.observe(toggleRef.current);\n return () => {\n if (toggleRef.current) observer.unobserve(toggleRef.current);\n };\n }, [toggleRef]);\n\n return (\n \n
\n

\n <<S<CHEDULE\n

\n
\n

\n Welcome to ! If you have the chance, please claim your\n badge early during preregistration at the venue to avoid long queues in\n the evening.\n

\n {/* Use top: -1px to detect stickyness https://davidwalsh.name/detect-sticky */}\n\n {/* Hacker Essentials vs Extravaganza */}\n\n \n
\n
\n
Hacker Extravaganza
\n \n \n

Friday, May 24

\n

\n

    \n \n \n \n \n \n {\" \"}\n \n \n \n \n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n \n
    \n We will learn how powerful SIWE can be used as a tool for\n building different use-cases such as identity,\n attestations, permissions and messaging. For example\n WalletConnect built this app called Web3Inbox to aggregate\n notifications for multiple dapps and it's based on SIWE.\n Additionally there are other systems where you can use\n attestations to build roots of trust with SIWE that\n generate CACAOs (CAIP-74) to build dapps offchain. Finally\n we are working on Session Keys which also uses SIWE to\n empower key delegation for transaction signing for Smart\n Accounts\n
    \n \n }\n photo={pedro}\n eventLocations={[locations.lexis]}\n />\n \n \n \n
    \n This session delves into Trusted Execution Environments\n (TEEs) and Zero-Knowledge (ZK) for Ethereum product\n builders with limited technical depth in these areas. We\n will examine key considerations such as performance, trust\n assumptions, cost efficiency, and the complexity of\n integration to determine their suitability for privacy and\n verifiable computation in applications.\n
    {\" \"}\n
    \n
    \n Participants will learn about the security\n vulnerabilities, scalability potential, and regulatory\n compliance aspects of each technology. The talk will also\n highlight the support available through developer\n ecosystems and the maturity of existing libraries and\n tools. By the end, attendees will be equipped to make\n informed decisions on which technology best meets their\n project's needs and understand the resources available for\n implementation.\n
    \n \n }\n // photo={shumoChu}\n eventLocations={[locations.lexis]}\n />\n \n
    \n No prior circom or ZK experience needed for this workshop,\n where we'll run through a simple example of a\n sybil-resistant app that requests a \"proof of ETHBerlin\n hacker visa\". Hackers may receive a *cryptographic\n surprise* during this workshop.\n
    \n \n }\n // photo={shumoChu}\n eventLocations={[locations.lexis]}\n />\n \n
\n

\n
\n
\n
\n

Saturday, May 25th

\n

Happy hacking, no distractions!

\n

\n \n \n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n

\n Panel - Decentralized Art Organisation: With Vincent\n Trasov and Benny Giang; Moderated by Stina Gustafsson.\n
\n \n }\n // photo={shumoChu}\n eventLocations={[locations.artExhibition]}\n />\n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n
\n Panel - Art after NFTs: With Joan Heemskerk and Billy\n Rennekamp; Moderated by María Paula Fernández.\n
\n \n }\n // photo={shumoChu}\n eventLocations={[locations.artExhibition]}\n />\n )}\n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n
\n \n \n Jommi{\" \"}\n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Anna{\" \"}\n \n \n \n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Manu +{\" \"}\n \n @blockravers \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n \n Manuel{\" \"}\n \n \n \n \n }\n eventLocations={[locations.yard0]}\n className=\"ml-12\"\n />\n
\n )}\n \n \n

\n
\n
\n
\n

Sunday, May 26th

\n

\n Don't forget to submit your projects by 11:30 am Berlin time!\n

\n

\n

    \n \n \n {isExtravaganza && (\n \n )}\n {isExtravaganza && (\n \n )}\n \n {isExtravaganza && (\n \n )}\n \n \n \n \n \n \n \n

    \n Experiments in Proof of Personhood—where each person has a\n single, unique identity—have increasingly been touted as a\n mechanism for tracing information provenance, distributing\n Universal Basic Income, and facilitating democratic\n governance over systems of artificial intelligence.\n

    \n

    \n {\" \"}\n This talk chronicles Idena's experiment in Proof of\n Personhood from launch in August 2019 to a crisis in May\n 2022. We show how despite verifying humans, hidden pools\n rapidly emerged—some cooperative, but most controlled by\n “puppeteers” who, at best, remunerated participants for\n periodically proving their uniqueness in exchange for\n access to their secret keys and controlling their\n accounts. Instead of fostering an egalitarian network of\n unique identities, the protocol fractured into hidden\n subnetworks vying for control over an economic pie with\n economies of scale trending towards oligopoly, undermining\n the protocol's security and ambitions for democratic\n governance (one-person, one-vote) and UBI rewards\n (one-person, one reward). By giving humans economic\n incentives to periodically differentiate themselves from\n bots, the protocol gave more informed, resourceful humans\n financial incentives to puppeteer less informed humans\n like bots.\n

    \n \n }\n speakerName={\n \"Puja Ohlhaver (Lawyer & Researcher), Mikhail Nikulin (Idena)\"\n }\n photo={puja}\n photo2={mikhail}\n eventLocations={[locations.lexis]}\n />\n \n \n \n

    \n Decentralised communication tools are at least 10x harder\n to build than their mainstream centralised equivalents,\n and in a world where Discord, Slack, Telegram and WhatsApp\n have billions of dollars of funding and have created\n incredibly polished products, it can be hard for\n decentralised alternatives to compete. However:\n centralisation lasts until the next Elon, whereas\n decentralisation can last forever.\n

    \n

    \n In this talk, I'll explain the challenges we've hit in\n building Matrix to compete with the mainstream\n alternatives, how we're solving them, why it's taken so\n long, and why it's more important than ever to keep the\n ideal of decentralised communication alive.\n

    \n \n }\n speakerName={\"Matthew Hodgson (Matrix)\"}\n photo={matthew}\n eventLocations={[locations.lexis]}\n />\n \n \n \n YaNKeY{\" \"}\n \n \n \n \n }\n className=\"ml-12\"\n eventLocations={[locations.yard0]}\n />\n\n \n
\n

\n \n \n\n \n
\n );\n};\nexport default Program;\n"],"names":["currentDate","Date","ProgramItem","title","eventLocations","dayStr","endDayStr","startTime","endTime","className","startDate","endDate","map","loc","onClick","handler","class","name","SpeechItem","description","speakerName","photo","photo2","photo3","isModalOpen","setIsModalOpen","React","isOpen","style","overlay","position","top","left","right","bottom","backgroundColor","content","zIndex","margin","overlayClassName","shouldCloseOnEsc","shouldCloseOnOverlayClick","onRequestClose","e","stopPropagation","closeTimeoutMS","src","isMapModalOpen","setIsMapModalOpen","activeMap","setActiveMap","groundFloor","activeRoomClass","setActiveRoomClass","activeMapName","setActiveMapName","isExtravaganza","setIsExtravaganza","isSticky","setIsSticky","toggleRef","handleGroundFloor","handleFirstFloor","firstFloor","handleSecondFloor","secondFloor","handleFifthFloor","fifthFloor","locations","lexis","giftShop","nodeCafe","yard0","yard1","yard2","mainEnterence","registration","restaurant","mckinsey","communitySpace1","communitySpace2","artExhibition","library","alice","wellnessRoom","cinema","cinebar","observer","IntersectionObserver","intersectionRatio","threshold","current","observe","unobserve","ref","for","id","type","onChange","prev","fat","nick","peter","austin","pedro","tino","sergei","odysseas","greg","richard","ivan","href","target","rel","kat","josh","edmundedgar","puja","mikhail","ameen","matthew","handleCloseModal"],"sourceRoot":""} \ No newline at end of file diff --git a/component---src-pages-venue-jsx-278bea4b22ef9c09629f.js b/component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js similarity index 77% rename from component---src-pages-venue-jsx-278bea4b22ef9c09629f.js rename to component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js index c54f3690..39069edd 100644 --- a/component---src-pages-venue-jsx-278bea4b22ef9c09629f.js +++ b/component---src-pages-venue-jsx-1ceae7f5dd603d248c94.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkethberlin=self.webpackChunkethberlin||[]).push([[13],{8977:function(e,t,a){var l=a(7294),r=a(5459),n=a.n(r);const c=l.forwardRef(((e,t)=>l.createElement("a",{ref:t,className:"text-black hover:no-underline "+e.className,href:"/"},l.createElement("div",{className:"font-dotpassport text-3xl tracking-widest"},"ETHBerlin04"),l.createElement("div",{className:"font-ocra text-[.91rem] uppercase"},l.createElement(n(),{options:{cursor:null,strings:["<<<{let{className:t}=e;const{0:a,1:r}=(0,l.useState)(!1),c=e=>{let{className:t,style:a,mobile:r,setShowNav:n}=e;return l.createElement("nav",{className:"flex flex-col gap-2 text-lg font-ocra "+t,style:a},r&&l.createElement("button",{className:"p-2 absolute top-0 left-0 text-3xl ml-12 mt-12",onClick:()=>n((e=>!e))},l.createElement("div",null,"X")),l.createElement("a",{className:"my-2",href:"/manifesto"}," ","<<",l.createElement("span",{className:"text-berlin-red"},"M"),"