@startdownnotez404/ui 1.0.0 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -0
- package/dist/AutocompleteField-ZKNU2IRR.mjs +181 -0
- package/dist/AutocompleteField-ZKNU2IRR.mjs.map +1 -0
- package/dist/AvatarField-SAODT3CZ.mjs +275 -0
- package/dist/AvatarField-SAODT3CZ.mjs.map +1 -0
- package/dist/CodeEditor-JF55ZNVD.mjs +34 -0
- package/dist/CodeEditor-JF55ZNVD.mjs.map +1 -0
- package/dist/DateField-ZYMZFHL4.mjs +82 -0
- package/dist/DateField-ZYMZFHL4.mjs.map +1 -0
- package/dist/DateTimeField-TPTJ7YIZ.mjs +65 -0
- package/dist/DateTimeField-TPTJ7YIZ.mjs.map +1 -0
- package/dist/FileUploadField-NTMWBJER.mjs +78 -0
- package/dist/FileUploadField-NTMWBJER.mjs.map +1 -0
- package/dist/JSONEditorField-TMRWGXVR.mjs +64 -0
- package/dist/JSONEditorField-TMRWGXVR.mjs.map +1 -0
- package/dist/PopperMenu-LJ36RPBW.mjs +416 -0
- package/dist/PopperMenu-LJ36RPBW.mjs.map +1 -0
- package/dist/TelField-LOGRVZ4I.mjs +88 -0
- package/dist/TelField-LOGRVZ4I.mjs.map +1 -0
- package/dist/alert.d.mts +202 -0
- package/dist/alert.d.ts +202 -0
- package/dist/alert.js +784 -0
- package/dist/alert.js.map +1 -0
- package/dist/alert.mjs +47 -0
- package/dist/alert.mjs.map +1 -0
- package/dist/appBar.d.mts +21 -0
- package/dist/appBar.d.ts +21 -0
- package/dist/appBar.js +64 -0
- package/dist/appBar.js.map +1 -0
- package/dist/appBar.mjs +12 -0
- package/dist/appBar.mjs.map +1 -0
- package/dist/autocomplete.d.mts +121 -0
- package/dist/autocomplete.d.ts +121 -0
- package/dist/autocomplete.js +2052 -0
- package/dist/autocomplete.js.map +1 -0
- package/dist/autocomplete.mjs +21 -0
- package/dist/autocomplete.mjs.map +1 -0
- package/dist/avatar.d.mts +253 -0
- package/dist/avatar.d.ts +253 -0
- package/dist/avatar.js +992 -0
- package/dist/avatar.js.map +1 -0
- package/dist/avatar.mjs +41 -0
- package/dist/avatar.mjs.map +1 -0
- package/dist/badge.d.mts +123 -0
- package/dist/badge.d.ts +123 -0
- package/dist/badge.js +151 -0
- package/dist/badge.js.map +1 -0
- package/dist/badge.mjs +10 -0
- package/dist/badge.mjs.map +1 -0
- package/dist/box.d.mts +36 -0
- package/dist/box.d.ts +36 -0
- package/dist/box.js +199 -0
- package/dist/box.js.map +1 -0
- package/dist/box.mjs +14 -0
- package/dist/box.mjs.map +1 -0
- package/dist/button.d.mts +230 -52
- package/dist/button.d.ts +230 -52
- package/dist/button.js +392 -60
- package/dist/button.js.map +1 -1
- package/dist/button.mjs +14 -8
- package/dist/card.d.mts +47 -0
- package/dist/card.d.ts +47 -0
- package/dist/card.js +135 -0
- package/dist/card.js.map +1 -0
- package/dist/card.mjs +24 -0
- package/dist/card.mjs.map +1 -0
- package/dist/chart.d.mts +40 -0
- package/dist/chart.d.ts +40 -0
- package/dist/chart.js +1234 -0
- package/dist/chart.js.map +1 -0
- package/dist/chart.mjs +10 -0
- package/dist/chart.mjs.map +1 -0
- package/dist/checkbox.d.mts +62 -0
- package/dist/checkbox.d.ts +62 -0
- package/dist/checkbox.js +299 -0
- package/dist/checkbox.js.map +1 -0
- package/dist/checkbox.mjs +14 -0
- package/dist/checkbox.mjs.map +1 -0
- package/dist/chip.d.mts +96 -0
- package/dist/chip.d.ts +96 -0
- package/dist/chip.js +112 -0
- package/dist/chip.js.map +1 -0
- package/dist/chip.mjs +10 -0
- package/dist/chip.mjs.map +1 -0
- package/dist/chunk-24XDGNJ6.mjs +1450 -0
- package/dist/chunk-24XDGNJ6.mjs.map +1 -0
- package/dist/chunk-27KYFU7R.mjs +30 -0
- package/dist/chunk-27KYFU7R.mjs.map +1 -0
- package/dist/chunk-2FFLT5VP.mjs +7 -0
- package/dist/chunk-2FFLT5VP.mjs.map +1 -0
- package/dist/chunk-2ZZJTBTE.mjs +148 -0
- package/dist/chunk-2ZZJTBTE.mjs.map +1 -0
- package/dist/chunk-3DQINB57.mjs +15 -0
- package/dist/chunk-3DQINB57.mjs.map +1 -0
- package/dist/chunk-3VUAM2GY.mjs +52 -0
- package/dist/chunk-3VUAM2GY.mjs.map +1 -0
- package/dist/chunk-4Q54P737.mjs +19 -0
- package/dist/chunk-4Q54P737.mjs.map +1 -0
- package/dist/chunk-4RPFRNXG.mjs +62 -0
- package/dist/chunk-4RPFRNXG.mjs.map +1 -0
- package/dist/chunk-56TI2ZBT.mjs +114 -0
- package/dist/chunk-56TI2ZBT.mjs.map +1 -0
- package/dist/chunk-6REEQBJI.mjs +62 -0
- package/dist/chunk-6REEQBJI.mjs.map +1 -0
- package/dist/chunk-AAH2O24U.mjs +325 -0
- package/dist/chunk-AAH2O24U.mjs.map +1 -0
- package/dist/chunk-B7DAB22K.mjs +16 -0
- package/dist/chunk-B7DAB22K.mjs.map +1 -0
- package/dist/chunk-BGB7JHIU.mjs +222 -0
- package/dist/chunk-BGB7JHIU.mjs.map +1 -0
- package/dist/chunk-CRYIEYZZ.mjs +756 -0
- package/dist/chunk-CRYIEYZZ.mjs.map +1 -0
- package/dist/chunk-CWFWRZWU.mjs +23 -0
- package/dist/chunk-CWFWRZWU.mjs.map +1 -0
- package/dist/chunk-DELCADNF.mjs +1926 -0
- package/dist/chunk-DELCADNF.mjs.map +1 -0
- package/dist/chunk-E3I2VDHZ.mjs +292 -0
- package/dist/chunk-E3I2VDHZ.mjs.map +1 -0
- package/dist/chunk-EEH7HACG.mjs +249 -0
- package/dist/chunk-EEH7HACG.mjs.map +1 -0
- package/dist/chunk-EKPULYPU.mjs +497 -0
- package/dist/chunk-EKPULYPU.mjs.map +1 -0
- package/dist/chunk-EW4DTFH3.mjs +69 -0
- package/dist/chunk-EW4DTFH3.mjs.map +1 -0
- package/dist/chunk-FJ6ZGZIA.mjs +43 -0
- package/dist/chunk-FJ6ZGZIA.mjs.map +1 -0
- package/dist/chunk-HE7MY3RT.mjs +23 -0
- package/dist/chunk-HE7MY3RT.mjs.map +1 -0
- package/dist/chunk-HR3A4H4E.mjs +1289 -0
- package/dist/chunk-HR3A4H4E.mjs.map +1 -0
- package/dist/chunk-I5JWS4Z7.mjs +91 -0
- package/dist/chunk-I5JWS4Z7.mjs.map +1 -0
- package/dist/chunk-IN3O4R7Q.mjs +932 -0
- package/dist/chunk-IN3O4R7Q.mjs.map +1 -0
- package/dist/chunk-JIU5GVM7.mjs +414 -0
- package/dist/chunk-JIU5GVM7.mjs.map +1 -0
- package/dist/chunk-JWANK42G.mjs +170 -0
- package/dist/chunk-JWANK42G.mjs.map +1 -0
- package/dist/chunk-MDAUF7IL.mjs +9 -0
- package/dist/chunk-MDAUF7IL.mjs.map +1 -0
- package/dist/chunk-MI64T62E.mjs +26 -0
- package/dist/chunk-MI64T62E.mjs.map +1 -0
- package/dist/chunk-NJYNJLT7.mjs +172 -0
- package/dist/chunk-NJYNJLT7.mjs.map +1 -0
- package/dist/chunk-NLBDBJ3R.mjs +97 -0
- package/dist/chunk-NLBDBJ3R.mjs.map +1 -0
- package/dist/chunk-OGNGPI3M.mjs +333 -0
- package/dist/chunk-OGNGPI3M.mjs.map +1 -0
- package/dist/chunk-OJV6V7YZ.mjs +552 -0
- package/dist/chunk-OJV6V7YZ.mjs.map +1 -0
- package/dist/chunk-ONQMRE2G.mjs +26 -0
- package/dist/chunk-ONQMRE2G.mjs.map +1 -0
- package/dist/chunk-OP6LKXPA.mjs +75 -0
- package/dist/chunk-OP6LKXPA.mjs.map +1 -0
- package/dist/chunk-QFF3HTHL.mjs +14 -0
- package/dist/chunk-QFF3HTHL.mjs.map +1 -0
- package/dist/chunk-QKGCW37O.mjs +1175 -0
- package/dist/chunk-QKGCW37O.mjs.map +1 -0
- package/dist/chunk-R5MKQN6D.mjs +227 -0
- package/dist/chunk-R5MKQN6D.mjs.map +1 -0
- package/dist/chunk-RXBQ7KXF.mjs +652 -0
- package/dist/chunk-RXBQ7KXF.mjs.map +1 -0
- package/dist/chunk-S6EZVRZC.mjs +161 -0
- package/dist/chunk-S6EZVRZC.mjs.map +1 -0
- package/dist/chunk-SGCUDWO3.mjs +396 -0
- package/dist/chunk-SGCUDWO3.mjs.map +1 -0
- package/dist/chunk-SRWPHN2N.mjs +188 -0
- package/dist/chunk-SRWPHN2N.mjs.map +1 -0
- package/dist/chunk-T34IULP5.mjs +242 -0
- package/dist/chunk-T34IULP5.mjs.map +1 -0
- package/dist/chunk-T4X375IG.mjs +100 -0
- package/dist/chunk-T4X375IG.mjs.map +1 -0
- package/dist/chunk-T6AMRENK.mjs +376 -0
- package/dist/chunk-T6AMRENK.mjs.map +1 -0
- package/dist/chunk-TDRA5EZI.mjs +325 -0
- package/dist/chunk-TDRA5EZI.mjs.map +1 -0
- package/dist/chunk-UDREPVEY.mjs +356 -0
- package/dist/chunk-UDREPVEY.mjs.map +1 -0
- package/dist/chunk-UGMRJMFZ.mjs +172 -0
- package/dist/chunk-UGMRJMFZ.mjs.map +1 -0
- package/dist/chunk-UMJ5SCIQ.mjs +438 -0
- package/dist/chunk-UMJ5SCIQ.mjs.map +1 -0
- package/dist/chunk-UTVSYS6S.mjs +270 -0
- package/dist/chunk-UTVSYS6S.mjs.map +1 -0
- package/dist/chunk-V26V2S3W.mjs +197 -0
- package/dist/chunk-V26V2S3W.mjs.map +1 -0
- package/dist/chunk-VYD3PDBB.mjs +38 -0
- package/dist/chunk-VYD3PDBB.mjs.map +1 -0
- package/dist/chunk-WYYP3Y34.mjs +55 -0
- package/dist/chunk-WYYP3Y34.mjs.map +1 -0
- package/dist/chunk-XIMFP6RB.mjs +161 -0
- package/dist/chunk-XIMFP6RB.mjs.map +1 -0
- package/dist/chunk-XJ2SXC2Q.mjs +558 -0
- package/dist/chunk-XJ2SXC2Q.mjs.map +1 -0
- package/dist/chunk-Y74ALKBL.mjs +565 -0
- package/dist/chunk-Y74ALKBL.mjs.map +1 -0
- package/dist/chunk-ZG3NQI77.mjs +353 -0
- package/dist/chunk-ZG3NQI77.mjs.map +1 -0
- package/dist/chunk-ZVFYOXDE.mjs +297 -0
- package/dist/chunk-ZVFYOXDE.mjs.map +1 -0
- package/dist/collapse.d.mts +10 -0
- package/dist/collapse.d.ts +10 -0
- package/dist/collapse.js +53 -0
- package/dist/collapse.js.map +1 -0
- package/dist/collapse.mjs +10 -0
- package/dist/collapse.mjs.map +1 -0
- package/dist/datePicker.d.mts +133 -0
- package/dist/datePicker.d.ts +133 -0
- package/dist/datePicker.js +482 -0
- package/dist/datePicker.js.map +1 -0
- package/dist/datePicker.mjs +29 -0
- package/dist/datePicker.mjs.map +1 -0
- package/dist/displayFile.d.mts +95 -0
- package/dist/displayFile.d.ts +95 -0
- package/dist/displayFile.js +357 -0
- package/dist/displayFile.js.map +1 -0
- package/dist/displayFile.mjs +19 -0
- package/dist/displayFile.mjs.map +1 -0
- package/dist/divider.d.mts +9 -0
- package/dist/divider.d.ts +9 -0
- package/dist/divider.js +52 -0
- package/dist/divider.js.map +1 -0
- package/dist/divider.mjs +10 -0
- package/dist/divider.mjs.map +1 -0
- package/dist/fileUploader.d.mts +86 -0
- package/dist/fileUploader.d.ts +86 -0
- package/dist/fileUploader.js +722 -0
- package/dist/fileUploader.js.map +1 -0
- package/dist/fileUploader.mjs +16 -0
- package/dist/fileUploader.mjs.map +1 -0
- package/dist/flowMap.d.mts +353 -0
- package/dist/flowMap.d.ts +353 -0
- package/dist/flowMap.js +94806 -0
- package/dist/flowMap.js.map +1 -0
- package/dist/flowMap.mjs +94585 -0
- package/dist/flowMap.mjs.map +1 -0
- package/dist/form.d.mts +84 -0
- package/dist/form.d.ts +84 -0
- package/dist/form.js +144 -0
- package/dist/form.js.map +1 -0
- package/dist/form.mjs +24 -0
- package/dist/form.mjs.map +1 -0
- package/dist/icons.d.mts +160 -0
- package/dist/icons.d.ts +160 -0
- package/dist/icons.js +540 -0
- package/dist/icons.js.map +1 -0
- package/dist/icons.mjs +306 -0
- package/dist/icons.mjs.map +1 -0
- package/dist/image.d.mts +49 -0
- package/dist/image.d.ts +49 -0
- package/dist/image.js +1348 -0
- package/dist/image.js.map +1 -0
- package/dist/image.mjs +19 -0
- package/dist/image.mjs.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.js +20198 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +912 -0
- package/dist/index.mjs.map +1 -0
- package/dist/input.d.mts +195 -0
- package/dist/input.d.ts +195 -0
- package/dist/input.js +1101 -0
- package/dist/input.js.map +1 -0
- package/dist/input.mjs +32 -0
- package/dist/input.mjs.map +1 -0
- package/dist/jsonEditor.d.mts +13 -0
- package/dist/jsonEditor.d.ts +13 -0
- package/dist/jsonEditor.js +247 -0
- package/dist/jsonEditor.js.map +1 -0
- package/dist/jsonEditor.mjs +9 -0
- package/dist/jsonEditor.mjs.map +1 -0
- package/dist/list.d.mts +83 -0
- package/dist/list.d.ts +83 -0
- package/dist/list.js +564 -0
- package/dist/list.js.map +1 -0
- package/dist/list.mjs +39 -0
- package/dist/list.mjs.map +1 -0
- package/dist/loading.d.mts +48 -0
- package/dist/loading.d.ts +48 -0
- package/dist/loading.js +383 -0
- package/dist/loading.js.map +1 -0
- package/dist/loading.mjs +23 -0
- package/dist/loading.mjs.map +1 -0
- package/dist/markdown.d.mts +14 -0
- package/dist/markdown.d.ts +14 -0
- package/dist/markdown.js +25927 -0
- package/dist/markdown.js.map +1 -0
- package/dist/markdown.mjs +25623 -0
- package/dist/markdown.mjs.map +1 -0
- package/dist/menu.d.mts +368 -0
- package/dist/menu.d.ts +368 -0
- package/dist/menu.js +1571 -0
- package/dist/menu.js.map +1 -0
- package/dist/menu.mjs +43 -0
- package/dist/menu.mjs.map +1 -0
- package/dist/modal.d.mts +90 -0
- package/dist/modal.d.ts +90 -0
- package/dist/modal.js +883 -0
- package/dist/modal.js.map +1 -0
- package/dist/modal.mjs +25 -0
- package/dist/modal.mjs.map +1 -0
- package/dist/overlay.d.mts +2 -0
- package/dist/overlay.d.ts +2 -0
- package/dist/overlay.js +46 -0
- package/dist/overlay.js.map +1 -0
- package/dist/overlay.mjs +10 -0
- package/dist/overlay.mjs.map +1 -0
- package/dist/paper.d.mts +38 -0
- package/dist/paper.d.ts +38 -0
- package/dist/paper.js +90 -0
- package/dist/paper.js.map +1 -0
- package/dist/paper.mjs +12 -0
- package/dist/paper.mjs.map +1 -0
- package/dist/patterns.d.mts +133 -0
- package/dist/patterns.d.ts +133 -0
- package/dist/patterns.js +483 -0
- package/dist/patterns.js.map +1 -0
- package/dist/patterns.mjs +46 -0
- package/dist/patterns.mjs.map +1 -0
- package/dist/process.d.mts +125 -0
- package/dist/process.d.ts +125 -0
- package/dist/process.js +1471 -0
- package/dist/process.js.map +1 -0
- package/dist/process.mjs +30 -0
- package/dist/process.mjs.map +1 -0
- package/dist/progress.d.mts +44 -0
- package/dist/progress.d.ts +44 -0
- package/dist/progress.js +94 -0
- package/dist/progress.js.map +1 -0
- package/dist/progress.mjs +14 -0
- package/dist/progress.mjs.map +1 -0
- package/dist/resizablePanel.d.mts +297 -0
- package/dist/resizablePanel.d.ts +297 -0
- package/dist/resizablePanel.js +122 -0
- package/dist/resizablePanel.js.map +1 -0
- package/dist/resizablePanel.mjs +22 -0
- package/dist/resizablePanel.mjs.map +1 -0
- package/dist/scrollToLoad.d.mts +41 -0
- package/dist/scrollToLoad.d.ts +41 -0
- package/dist/scrollToLoad.js +256 -0
- package/dist/scrollToLoad.js.map +1 -0
- package/dist/scrollToLoad.mjs +16 -0
- package/dist/scrollToLoad.mjs.map +1 -0
- package/dist/select.d.mts +50 -0
- package/dist/select.d.ts +50 -0
- package/dist/select.js +426 -0
- package/dist/select.js.map +1 -0
- package/dist/select.mjs +24 -0
- package/dist/select.mjs.map +1 -0
- package/dist/skeleton.d.mts +13 -0
- package/dist/skeleton.d.ts +13 -0
- package/dist/skeleton.js +68 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/skeleton.mjs +11 -0
- package/dist/skeleton.mjs.map +1 -0
- package/dist/slider.d.mts +65 -0
- package/dist/slider.d.ts +65 -0
- package/dist/slider.js +106 -0
- package/dist/slider.js.map +1 -0
- package/dist/slider.mjs +10 -0
- package/dist/slider.mjs.map +1 -0
- package/dist/stepper.d.mts +98 -0
- package/dist/stepper.d.ts +98 -0
- package/dist/stepper.js +313 -0
- package/dist/stepper.js.map +1 -0
- package/dist/stepper.mjs +38 -0
- package/dist/stepper.mjs.map +1 -0
- package/dist/switch.d.mts +151 -0
- package/dist/switch.d.ts +151 -0
- package/dist/switch.js +289 -0
- package/dist/switch.js.map +1 -0
- package/dist/switch.mjs +17 -0
- package/dist/switch.mjs.map +1 -0
- package/dist/tab.d.mts +182 -0
- package/dist/tab.d.ts +182 -0
- package/dist/tab.js +1418 -0
- package/dist/tab.js.map +1 -0
- package/dist/tab.mjs +34 -0
- package/dist/tab.mjs.map +1 -0
- package/dist/table.d.mts +720 -0
- package/dist/table.d.ts +720 -0
- package/dist/table.js +10882 -0
- package/dist/table.js.map +1 -0
- package/dist/table.mjs +63 -0
- package/dist/table.mjs.map +1 -0
- package/dist/theme.d.mts +30 -4
- package/dist/theme.d.ts +30 -4
- package/dist/theme.js +3210 -170
- package/dist/theme.js.map +1 -1
- package/dist/theme.mjs +52 -230
- package/dist/theme.mjs.map +1 -1
- package/dist/timeline.d.mts +30 -0
- package/dist/timeline.d.ts +30 -0
- package/dist/timeline.js +273 -0
- package/dist/timeline.js.map +1 -0
- package/dist/timeline.mjs +14 -0
- package/dist/timeline.mjs.map +1 -0
- package/dist/toggleButtonGroup.d.mts +125 -0
- package/dist/toggleButtonGroup.d.ts +125 -0
- package/dist/toggleButtonGroup.js +190 -0
- package/dist/toggleButtonGroup.js.map +1 -0
- package/dist/toggleButtonGroup.mjs +15 -0
- package/dist/toggleButtonGroup.mjs.map +1 -0
- package/dist/tooltip.d.mts +13 -0
- package/dist/tooltip.d.ts +13 -0
- package/dist/tooltip.js +56 -0
- package/dist/tooltip.js.map +1 -0
- package/dist/tooltip.mjs +10 -0
- package/dist/tooltip.mjs.map +1 -0
- package/dist/typography.d.mts +21 -23
- package/dist/typography.d.ts +21 -23
- package/dist/typography.js +37 -63
- package/dist/typography.js.map +1 -1
- package/dist/typography.mjs +2 -1
- package/dist/useForm.d.mts +588 -0
- package/dist/useForm.d.ts +588 -0
- package/dist/useForm.js +8743 -0
- package/dist/useForm.js.map +1 -0
- package/dist/useForm.mjs +45 -0
- package/dist/useForm.mjs.map +1 -0
- package/dist/useSearch.d.mts +126 -0
- package/dist/useSearch.d.ts +126 -0
- package/dist/useSearch.js +1125 -0
- package/dist/useSearch.js.map +1 -0
- package/dist/useSearch.mjs +42 -0
- package/dist/useSearch.mjs.map +1 -0
- package/dist/variablesRenderer.d.mts +45 -0
- package/dist/variablesRenderer.d.ts +45 -0
- package/dist/variablesRenderer.js +511 -0
- package/dist/variablesRenderer.js.map +1 -0
- package/dist/variablesRenderer.mjs +21 -0
- package/dist/variablesRenderer.mjs.map +1 -0
- package/package.json +109 -15
- package/dist/chunk-PKADXEAD.mjs +0 -116
- package/dist/chunk-PKADXEAD.mjs.map +0 -1
- package/dist/chunk-YGBJCPUS.mjs +0 -88
- package/dist/chunk-YGBJCPUS.mjs.map +0 -1
- package/dist/theme.css +0 -44
- package/dist/theme.css.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../node_modules/classnames/index.js","../src/components/compound/Process/index.ts","../src/components/compound/Process/src/ProcessModal.tsx","../src/_utils/_func/random.ts","../src/_utils/_func/sx.ts","../src/components/elemental/Box/src/index.ts","../src/components/elemental/Typography/src/Typography.ts","../src/components/elemental/Typography/src/Variants.tsx","../src/components/elemental/Button/src/Button/Button.tsx","../src/components/elemental/Button/src/IconButton/IconButton.tsx","../src/components/elemental/Tooltip/src/Tooltip/index.ts","../src/components/Icons/MuiIcon/index.ts","../src/components/elemental/Modal/src/MuiModal/MuiModal.tsx","../src/_utils/_const/classNames.ts","../src/_utils/_const/index.ts","../src/components/elemental/Paper/src/Paper/ShinyPaper.tsx","../src/patterns/doodlePattern.ts","../src/patterns/generated/doodlePatternMask.ts","../src/patterns/doodlePatternStyles.ts","../src/components/elemental/Modal/src/MuiModal/theme.ts","../src/components/elemental/Progress/src/LinearProgress.tsx","../src/components/elemental/Progress/src/CircularProgress.tsx","../src/_utils/_const/file.ts","../src/components/compound/DisplayFile/src/DisplayFile.tsx","../src/components/compound/Process/src/ProcessItem.tsx","../src/components/compound/Process/src/hooks/useProgressTracking.ts","../src/components/compound/Process/src/hooks/useProcessAlert.ts","../src/components/compound/Alert/src/_utils/utils.ts","../src/components/compound/Alert/src/_utils/const.ts","../src/components/compound/Process/src/ProcessAlert.tsx","../src/components/compound/Process/src/_utils/ProgressObserver.ts","../src/components/compound/Process/src/theme.ts"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export * from './src';\n","import React, { useState, useEffect, useCallback } from 'react';\nimport { Box } from '@/ele/Box';\nimport { Typography } from '@/ele/Typography';\nimport { Button } from '@/ele/Button';\nimport { PauseIcon, PlayIcon, StopIcon, RemoveIcon as MinimizeIcon, CheckCircleIcon } from '@/icons/MuiIcon';\nimport { MuiModal } from '@/ele/Modal';\nimport { ProcessItem } from './ProcessItem';\nimport { ProcessModalProps, ProgressHook } from './types';\nimport PreviewableFile from '@/_utils/classes/PreviewableFile';\nimport { useProgressTracking, useProcessAlert } from './hooks';\nimport { processModalRootSx } from './theme';\nimport { mergeSx } from '@/_utils/_func';\n\n// Default hook returns 0 if not provided\nconst useDefaultProgress: ProgressHook = () => 0;\n\nconst ProcessLogicRunner = ({\n file,\n useProgress,\n onProgress,\n paused\n}: {\n file: PreviewableFile;\n useProgress: ProgressHook;\n onProgress: (file: PreviewableFile, progress: number) => void;\n paused: boolean;\n}) => {\n const progress = useProgress(file, paused);\n useEffect(() => {\n onProgress(file, progress);\n }, [file, progress, onProgress]);\n return null;\n};\n\nexport const ProcessModal: React.FC<ProcessModalProps> = ({ \n openProps, \n files, \n title = \"Uploading Documents\",\n description = \"Please wait while we upload your files.\",\n useProgress = useDefaultProgress,\n onPause,\n onStop,\n minimizable = false,\n minimizePlacement = 'bottom-right',\n autoClose = false\n}) => {\n const [open, setOpen] = openProps;\n const [minimized, setMinimized] = useState(false);\n const [paused, setPaused] = useState(false);\n\n const handleMaximize = useCallback(() => setMinimized(false), []);\n\n const { observerRef } = useProcessAlert({\n open,\n minimized,\n minimizePlacement,\n onMaximize: handleMaximize,\n });\n\n const { progressMap, handleProgress, allComplete } = useProgressTracking(files, observerRef);\n\n useEffect(() => {\n if (autoClose && allComplete && open) {\n const timer = setTimeout(() => {\n setOpen(false);\n }, 1000);\n return () => clearTimeout(timer);\n }\n }, [autoClose, allComplete, open, setOpen]);\n\n const handlePauseToggle = () => {\n setPaused(!paused);\n if (onPause) onPause();\n };\n\n const handleStop = () => {\n if (onStop) onStop();\n setOpen(false);\n };\n\n if (!open) return null;\n\n return (\n <>\n {/* Logic Layer: Always mounted when open */}\n {files.map((file) => (\n <ProcessLogicRunner\n key={file.filename}\n file={file}\n useProgress={useProgress}\n onProgress={handleProgress}\n paused={paused}\n />\n ))}\n\n {minimized ? null : (\n <MuiModal \n openProps={openProps}\n title={title}\n size={{ w: 500 }}\n slots={{\n closeIcon: minimizable?MinimizeIcon:undefined,\n }}\n slotProps={{\n closeButton: minimizable?{\n onClick: () => setMinimized(true),\n title: \"Minimize\",\n }:undefined,\n }}\n\n >\n <Box sx={mergeSx({ py: 2 }, processModalRootSx)}>\n {description && (\n <Typography variant=\"body2\" sx={{ mb: 3, color: 'var(--process-description-color)' }}>\n {description}\n </Typography>\n )}\n \n <Box sx={{ display: 'flex', flexDirection: 'column', gap: 1, maxHeight: '60vh', overflowY: 'auto' }}>\n {files.map((file) => (\n <ProcessItem \n key={file.filename} \n file={file} \n progress={progressMap.get(file.filename) || 0}\n />\n ))}\n </Box>\n\n <Box sx={{ mt: 3, display: 'flex', justifyContent: 'flex-end', gap: 2 }}>\n {!allComplete && (\n <>\n {onStop && (\n <Button \n variant=\"outlined\" \n color=\"error\" \n startIcon={<StopIcon />} \n onClick={handleStop}\n >\n Stop\n </Button>\n )}\n {onPause && (\n <Button \n variant=\"outlined\" \n color=\"warning\" \n startIcon={paused ? <PlayIcon /> : <PauseIcon />} \n onClick={handlePauseToggle}\n >\n {paused ? \"Resume\" : \"Pause\"}\n </Button>\n )}\n </>\n )}\n \n {allComplete && <Button \n variant=\"contained\"\n onClick={() => setOpen(false)}\n disabled={!allComplete && !onStop}\n startIcon={<CheckCircleIcon />}\n color=\"success\"\n >\n Done\n </Button>}\n </Box>\n </Box>\n </MuiModal>\n )}\n </>\n );\n};\n","export function randomStrGenerator(length=20):string{\n let result = ''\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'\n\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * characters.length))\n }\n\n return result\n}\n\nexport function getRandomInt(max: number) {\n return Math.floor(Math.random() * max)\n}\nexport function getRandomBetween(min: number, max: number, isFloat = false) {\n const randomVal = Math.random() * (max - min) + min\n if (isFloat) {\n return randomVal\n }\n return Math.floor(randomVal)\n}","import type { SxProps, Theme } from '@mui/material/styles'\n\n/** Values accepted by {@link mergeSx}: objects, callbacks, arrays (nested ok), or omitted. */\nexport type SxMergePart =\n | SxProps<Theme>\n | Record<string, unknown>\n | ReadonlyArray<SxMergePart>\n | false\n | null\n | undefined\n\nfunction flattenSx(part: unknown): unknown[] {\n if (part == null || typeof part === 'boolean') {\n return []\n }\n if (Array.isArray(part)) {\n return part.flatMap(flattenSx)\n }\n if (typeof part === 'function' || typeof part === 'object') {\n return [part]\n }\n return []\n}\n\n/**\n * Combine MUI `sx` values into one prop.\n *\n * Nested arrays are flattened (`[base, [a, b]]` → `[base, a, b]`).\n * `null` / `undefined` / `false` entries are dropped. Later parts win,\n * same as MUI's `sx` array merge.\n */\nexport function mergeSx(...parts: SxMergePart[]): SxProps<Theme> | undefined {\n const list = parts.flatMap(flattenSx)\n if (list.length === 0) {\n return undefined\n }\n if (list.length === 1) {\n return list[0] as SxProps<Theme>\n }\n return list as SxProps<Theme>\n}\n","export * from './BorderBox'\nexport {default as Box} from '@mui/material/Box'\nexport {default as Stack} from '@mui/material/Stack'\nexport {default as Grid} from '@mui/material/Grid'\n","export { default } from '@mui/material/Typography'","import React from 'react'\nimport Typography, {type TypographyProps} from '@mui/material/Typography'\n\n/**\n * Mui Typography with variant h5\n * \n * [Doc](https://material-ui.com/api/typography/)\n */\nexport function Header(props: { children?: React.ReactNode } & TypographyProps) {\n\treturn <Typography variant=\"h5\" {...props} />\n}\n\n\n/**\n * Mui Typography with variant h6\n * \n * [Doc](https://material-ui.com/api/typography/)\n */\nexport function SubHeader(props: TypographyProps) {\n\treturn <Typography variant=\"h6\" {...props} />\n}\n\n/**\n * Mui Typography with variant subtitle1\n * \n * [Doc](https://material-ui.com/api/typography/)\n */\nexport function SubTitle(props: TypographyProps) {\n\treturn <Typography variant=\"subtitle1\" {...props} />\n}\n\n/**\n * Mui Typography with variant caption\n * \n * [Doc](https://material-ui.com/api/typography/)\n */\nexport function Subscript(props: TypographyProps) {\n\treturn (\n\t\t<Typography\n\t\t\tvariant=\"caption\"\n\t\t\t{...props}\n\t\t\tsx={{\n\t\t\t\t...props.sx,\n\t\t\t\tcolor: props.color ?? 'var(--mui-palette-text-subscript)',\n\t\t\t}}\n\t\t/>\n\t)\n}\n\n/**\n * Mui Typography with variant body\n * \n * [Doc](https://material-ui.com/api/typography/)\n */\nexport function Body(props: TypographyProps) {\n\treturn <Typography variant=\"body1\" {...props} />\n}","import React from 'react';\n\nimport MuiButton from '@mui/material/Button';\nimport { Box } from '@/ele/Box';\nimport { mergeSx } from '@/_utils/_func';\n\n/**\n * A modified MUI Button that truncates long text with ellipsis.\n * \n * [Doc](https://mui.com/material-ui/react-button/)\n * [API](https://mui.com/material-ui/api/button/)\n */\nexport default function Button(p:\n React.ComponentProps<typeof MuiButton> & {\n slotProps?: {\n innerBox?: React.ComponentProps<typeof Box>\n }\n }) {\n const {children, slotProps, ...rest} = p\n const {sx, ...boxRest} = slotProps?.innerBox ?? {}\n return <MuiButton {...rest}>\n <Box \n {...boxRest}\n sx={mergeSx(\n {\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'pre',\n },\n sx,\n )}>\n {children}\n </Box>\n </MuiButton>\n}","'use client'\nimport {forwardRef} from 'react'\nimport MuiIconButton from '@mui/material/IconButton'\nimport { Tooltip } from '@/ele/Tooltip'\nimport { type TooltipProps } from '@mui/material/Tooltip'\nimport { Box } from '@/ele/Box'\n\ntype IconButtonProps = React.ComponentProps<typeof MuiIconButton>\ntype Props = {\n /** The Icon to render */\n children: React.ReactNode;\n /** The title of the tooltip */\n title?: string;\n /** \n * The color theme of the entire component.\n * @default 'secondary' (from theme)\n */\n color?: IconButtonProps['color'];\n /**\n * The size of the component.\n * @default 'small' (from theme)\n */\n size?: IconButtonProps['size'];\n \n selected?: boolean;\n \n slotProps?: {\n tooltip?: Omit<TooltipProps, \"children\">\n };\n} & Omit<IconButtonProps, \"color\" | \"size\">;\n\n/**\n * A MuiIconButton wrapped in a MuiTooltip.\n * Default props like `size` and `color` are handled by the theme.\n */\nconst IconButton = forwardRef<HTMLButtonElement, Props>(({\n title = \"\",\n children,\n color,\n size,\n slotProps,\n selected,\n className,\n ...props\n}, ref) => {\n return (\n <Tooltip \n title={title} \n slotProps={{\n popper: {\n sx: {\n textTransform: \"capitalize\",\n }\n },\n ...slotProps?.tooltip\n }}\n >\n <Box component=\"span\" sx={{width: \"fit-content\"}}>\n <MuiIconButton\n ref={ref}\n color={color}\n size={size}\n className={[className, selected ? 'Mui-selected' : ''].filter(Boolean).join(' ')}\n {...props}\n >\n {children}\n </MuiIconButton>\n </Box>\n </Tooltip>\n )\n})\n\nexport default IconButton","export {default as Tooltip} from '@mui/material/Tooltip'\nexport * from './theme'\n","// display\nexport {default as ArrowIcon} from '@mui/icons-material/ArrowRightAlt'\nexport {default as FileIcon} from '@mui/icons-material/DescriptionOutlined'\nexport {default as DescriptionIcon} from '@mui/icons-material/Description'\nexport {default as PictureAsPdfIcon} from '@mui/icons-material/PictureAsPdf'\nexport {default as AudioFileIcon} from '@mui/icons-material/AudioFile'\nexport {default as VideoFileIcon} from '@mui/icons-material/VideoFile'\nexport {default as TableChartIcon} from '@mui/icons-material/TableChart'\nexport {default as FolderZipIcon} from '@mui/icons-material/FolderZip'\nexport {default as InsertDriveFileIcon} from '@mui/icons-material/InsertDriveFile'\nexport {default as ImageIcon} from '@mui/icons-material/ImageOutlined'\nexport {default as LayersIcon} from '@mui/icons-material/LayersOutlined'\nexport {default as TextIcon} from '@mui/icons-material/TextFormat'\nexport {default as RemoveIcon} from '@mui/icons-material/Remove'\nexport {default as AddFileIcon} from '@mui/icons-material/PostAdd'\nexport {default as ErrorIcon} from '@mui/icons-material/ErrorOutline'\nexport {default as QuestionIcon} from '@mui/icons-material/QuestionMarkOutlined'\nexport {default as RoomIcon} from '@mui/icons-material/MeetingRoomOutlined'\nexport {default as BlacklistIcon} from '@mui/icons-material/PlaylistRemove'\nexport {default as WhitelistIcon} from '@mui/icons-material/ChecklistRtl'\nexport {default as NoImageIcon} from '@mui/icons-material/HideImageOutlined'\nexport {default as EyeIcon} from '@mui/icons-material/RemoveRedEyeTwoTone'\nexport {default as CropSizeIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as AdminIcon} from '@mui/icons-material/LockPersonOutlined'\nexport {default as UserIcon} from '@mui/icons-material/Person'\nexport {default as EmoticonIcon} from '@mui/icons-material/InsertEmoticon'\nexport {default as DisabledSelectionIcon} from '@mui/icons-material/RemoveDoneOutlined'\nexport {default as TagIcon} from '@mui/icons-material/Tag'\nexport {default as AudioIcon} from '@mui/icons-material/Audiotrack'\nexport {default as VideoIcon} from '@mui/icons-material/Videocam'\nexport {default as CodeIcon} from '@mui/icons-material/Code'\nexport {default as ChartIcon} from '@mui/icons-material/Equalizer'\nexport {default as TableIcon} from '@mui/icons-material/PivotTableChart'\nexport {default as SearchIcon} from '@mui/icons-material/Search'\nexport {default as DataObjectIcon} from '@mui/icons-material/DataObject'\nexport {default as A2ZIcon} from '@mui/icons-material/SortByAlpha'\nexport {default as ThumbUpIcon} from '@mui/icons-material/ThumbUp'\nexport {default as MoneyIcon} from '@mui/icons-material/AttachMoneyOutlined'\nexport {default as ServerIcon} from '@mui/icons-material/Storage'\nexport {default as CerticateIcon} from '@mui/icons-material/WorkspacePremium'\nexport {default as NumberIcon} from '@mui/icons-material/Numbers'\nexport {default as SumIcon} from '@mui/icons-material/Functions'\nexport {default as LightBulbIcon} from '@mui/icons-material/Lightbulb'\nexport {default as RotateIcon} from '@mui/icons-material/CropRotate'\nexport {default as ImageSzieScaleIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as CollectionIcon} from '@mui/icons-material/CollectionsBookmark'\nexport {default as HistoryIcon} from '@mui/icons-material/Schedule'\nexport {default as StyleIcon} from '@mui/icons-material/Style'\nexport {default as ARHorizontalIcon} from '@mui/icons-material/Crop169'\nexport {default as ARSquareIcon} from '@mui/icons-material/CropSquare'\nexport {default as VoiceIcon} from '@mui/icons-material/GraphicEqRounded'\nexport {default as MemoryIcon} from '@mui/icons-material/MemoryRounded'\n\n// button\nexport {default as AddCircleIcon} from '@mui/icons-material/AddCircleOutlineRounded'\nexport {default as AddIcon} from '@mui/icons-material/Add'\nexport {default as CloseIcon} from '@mui/icons-material/Close'\nexport {default as ExpandMoreIcon} from '@mui/icons-material/ExpandMore'\nexport {default as AutorenewIcon} from '@mui/icons-material/Autorenew'\nexport {default as CheckCircleIcon} from '@mui/icons-material/CheckCircle'\nexport {default as MenuIcon} from '@mui/icons-material/Menu'\nexport {default as MoreIcon} from '@mui/icons-material/MoreVert'\nexport {default as MoreHorizIcon} from '@mui/icons-material/MoreHoriz'\nexport {default as CopyIcon} from '@mui/icons-material/ContentCopy'\nexport {default as PasteIcon} from '@mui/icons-material/ContentPaste'\nexport {default as CloudIcon} from '@mui/icons-material/Cloud'\nexport {default as DownloadIcon} from '@mui/icons-material/DownloadOutlined'\nexport {default as DownloadDoneIcon} from '@mui/icons-material/DownloadDoneOutlined'\nexport {default as StartIcon} from '@mui/icons-material/StarBorderOutlined'\nexport {default as DeleteIcon} from '@mui/icons-material/DeleteForever'\nexport {default as LayerClearIcon } from '@mui/icons-material/LayersClear'\nexport {default as CheckIcon } from '@mui/icons-material/Check'\nexport {default as CheckAllIcon } from '@mui/icons-material/DoneAll'\nexport {default as PowerIcon } from '@mui/icons-material/PowerSettingsNew'\nexport {default as SendIcon } from '@mui/icons-material/Send'\nexport {default as ZoomInIcon } from '@mui/icons-material/ZoomInMap'\nexport {default as ZoomOutIcon } from '@mui/icons-material/ZoomOutMap'\nexport {default as ToolIcon } from '@mui/icons-material/HomeRepairService'\nexport {default as ConstructionIcon } from '@mui/icons-material/Construction'\nexport {default as HelpIcon } from '@mui/icons-material/Help'\nexport {default as ReportIcon } from '@mui/icons-material/EmojiFlags'\nexport {default as EditIcon } from '@mui/icons-material/Edit'\nexport {default as ForkIcon } from '@mui/icons-material/ForkRight'\nexport {default as SettingIcon } from '@mui/icons-material/Settings'\nexport {default as RestoreIcon } from '@mui/icons-material/Restore'\nexport {default as EditListIcon } from '@mui/icons-material/EditNote'\nexport {default as HomeIcon } from '@mui/icons-material/HomeOutlined'\nexport {default as EnterRoomIcon } from '@mui/icons-material/ExitToAppOutlined'\nexport {default as SunIcon} from '@mui/icons-material/WbSunnyOutlined'\nexport {default as MoonIcon} from '@mui/icons-material/DarkModeOutlined'\nexport {default as AttachFileIcon} from '@mui/icons-material/AttachFileOutlined'\nexport {default as NoteAddIcon} from '@mui/icons-material/NoteAdd'\nexport {default as CloudUploadIcon} from '@mui/icons-material/CloudUpload'\nexport {default as DoubleRightArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRight'\nexport {default as DoubleLeftArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowLeft'\nexport {default as DoubleArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRightRounded'\nexport {default as FitScreenIcon} from '@mui/icons-material/FitScreen'\nexport {default as FullscreenIcon} from '@mui/icons-material/Fullscreen'\nexport {default as TestIcon} from '@mui/icons-material/Biotech'\nexport {default as ShareIcon} from '@mui/icons-material/Share'\nexport {default as FilterIcon} from '@mui/icons-material/FilterAlt'\nexport {default as SyncIcon} from '@mui/icons-material/Sync'\nexport {default as PlayIcon} from '@mui/icons-material/PlayArrow'\nexport {default as PauseIcon} from '@mui/icons-material/PauseOutlined'\nexport {default as RandomIcon} from '@mui/icons-material/Casino'\nexport {default as CoinIcon} from '@mui/icons-material/Paid'\nexport {default as SaveChangesIcon} from '@mui/icons-material/Save'\nexport {default as StopIcon} from '@mui/icons-material/StopRounded'\nexport {default as ReplayIcon} from '@mui/icons-material/Replay'\nexport {default as TreeIcon} from '@mui/icons-material/AccountTree'\nexport {default as ClearIcon} from '@mui/icons-material/Close'\nexport {default as KeyboardArrowDownIcon} from '@mui/icons-material/KeyboardArrowDown'\nexport {default as KeyboardArrowRightIcon} from '@mui/icons-material/KeyboardArrowRight'\nexport {default as SearchRoundedIcon} from '@mui/icons-material/SearchRounded'\nexport {default as CloseRoundedIcon} from '@mui/icons-material/CloseRounded'\nexport {default as SortByAlphaRoundedIcon} from '@mui/icons-material/SortByAlphaRounded'\nexport {default as FilterAltOutlinedIcon} from '@mui/icons-material/FilterAltOutlined'\nexport {default as InboxOutlinedIcon} from '@mui/icons-material/InboxOutlined'\nexport {default as SearchOffIcon} from '@mui/icons-material/SearchOff'\nexport {default as ClearRoundedIcon} from '@mui/icons-material/ClearRounded'\nexport {default as ArrowDropDownRoundedIcon} from '@mui/icons-material/ArrowDropDownRounded'\n\n// login\nexport {default as AccountIcon} from '@mui/icons-material/AccountBox'\nexport {default as LogoutIcon} from '@mui/icons-material/Logout'\nexport {default as LoginIcon} from '@mui/icons-material/Login'\nexport {default as DashboardIcon} from '@mui/icons-material/Dashboard'\n\n//logo\nexport {default as WorkFlowIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as HelpOutlineIcon} from '@mui/icons-material/HelpOutline'\nexport {default as NavigateBeforeIcon} from '@mui/icons-material/NavigateBefore'\nexport {default as NavigateNextIcon} from '@mui/icons-material/NavigateNext'\nexport {default as PersonIcon} from '@mui/icons-material/Person'\nexport {default as CalendarTodayIcon} from '@mui/icons-material/CalendarToday'\nexport {default as ChatIcon} from '@mui/icons-material/QuestionAnswerOutlined'\nexport {default as TodayIcon} from '@mui/icons-material/Today'\nexport {default as DeleteForeverIcon} from '@mui/icons-material/DeleteForever'\n\nexport {default as AdsClickIcon} from '@mui/icons-material/AdsClick'\nexport {default as FingerprintIcon} from '@mui/icons-material/Fingerprint'\nexport {default as SportsEsportsOutlinedIcon} from '@mui/icons-material/SportsEsportsOutlined'\nexport {default as HelpOutlineRoundedIcon} from '@mui/icons-material/HelpOutlineRounded'\nexport {default as AccountTreeOutlinedIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as SmartToyOutlinedIcon} from '@mui/icons-material/SmartToyOutlined'\nexport {default as AcUnitIcon} from '@mui/icons-material/AcUnit'\nexport {default as LoopIcon} from '@mui/icons-material/Loop'\nexport {default as PendingIcon} from '@mui/icons-material/Pending'\nexport {default as AllInclusiveIcon} from '@mui/icons-material/AllInclusive'\nexport {default as WarningOutlinedIcon} from '@mui/icons-material/WarningOutlined'\nexport {default as InfoOutlinedIcon} from '@mui/icons-material/InfoOutlined'\nexport {default as AutoAwesomeRoundedIcon} from '@mui/icons-material/AutoAwesomeRounded'\nexport {default as ErrorOutlineOutlinedIcon} from '@mui/icons-material/ErrorOutlineOutlined'\nexport {default as DownloadFilledIcon} from '@mui/icons-material/Download'","'use client'\nimport React, { useCallback, useMemo } from 'react'\nimport Modal, { type ModalProps } from '@mui/material/Modal'\nimport type { SxProps } from '@mui/material';\nimport type { Theme } from '@mui/material/styles';\nimport { useTheme, useMediaQuery } from '@mui/material';\nimport classnames from 'classnames';\nimport { CLASSNAMEs } from '@/_utils/_const/classNames';\nimport Tooltip from '@mui/material/Tooltip'\nimport { CloseIcon } from '@/icons/MuiIcon'\n\nimport { COMPONENTs } from '@/_utils/_const'\nimport { mergeSx } from '@/_utils/_func'\nimport { Box as Box } from '@/ele/Box'\nimport { Header as MuiHeader } from '@/ele/Typography'\nimport { ShinyPaper as MuiPaper } from '@/ele/Paper'\nimport { IconButton } from '@/ele/Button'\nimport { getDoodlePatternModalBackgroundSx } from '@/patterns'\nimport { MUI_MODAL_PAPER_RADIUS, muiModalPaperSx, muiModalRootSx } from './theme'\n\n/**\n * extended from Mui Modal\n * \n * [Doc](https://mui.com/material-ui/api/modal/)\n * \n * @param openProps - [open, setOpen]\n */\nexport default function MuiModal({\n children,\n openProps,\n size = {\n w: 'auto',\n h: 'auto',\n },\n maxHeight = '95vh', maxWidth = '95vw',\n\n onClose = () => { },\n title = \"\",\n titleIcon = null,\n closeButton = null,\n slots,\n slotProps,\n ...rest\n}: {\n children?: React.ReactNode;\n openProps: [\n boolean, // open\n (React.Dispatch<React.SetStateAction<boolean>> | React.Dispatch<boolean>) // setOpen\n ];\n size?: {\n w?: string | number;\n h?: string | number;\n },\n maxHeight?: string | number;\n maxWidth?: string | number;\n onClose?: () => void;\n title?: string;\n titleIcon?: React.ReactNode;\n closeButton?: React.ReactNode;\n\n slots?: {\n closeButton?: React.ElementType;\n closeIcon?: React.ElementType;\n };\n slotProps?: {\n container?: {\n style?: {\n bgColor?: string;\n shadow?: string;\n },\n sx?: SxProps<Theme>;\n },\n header?: {\n style?: {\n headerImg: string;\n }\n },\n closeButton?: Partial<React.ComponentProps<typeof IconButton>> & {\n closeIcon?: Partial<React.ComponentProps<typeof CloseIcon>>;\n };\n };\n} & Omit<ModalProps, \"open\" | \"title\">) {\n const [open, setOpen] = openProps\n\n // responsive behavior: on small screens modal should occupy nearly full\n // viewport automatically so users are not staring at a tiny dialog.\n const theme = useTheme();\n const isSmDown = useMediaQuery(theme.breakpoints.down('sm'));\n const effectiveSize = useMemo(() => {\n if (isSmDown) {\n return { width: 'calc(100vw - 2%)', height: 'calc(100vh - 2%)' };\n }\n return {\n width: size.w || 'auto',\n height: size.h || 'auto',\n };\n }, [isSmDown, size.w, size.h]);\n\n const { \n closeButton: CloseButtonSlot = IconButton,\n closeIcon: CloseIconSlot = CloseIcon,\n } = slots || {};\n\n const {\n closeButton: closeButtonAllProps,\n } = slotProps || {};\n\n const { closeIcon: closeIconProps, ...closeButtonProps } = closeButtonAllProps || {sx:{}};\n\n /**\n * Internal close handler that ensures modal state is updated\n */\n const handleClose = useCallback(() => {\n // If setOpen is available (it should be from openProps), use it\n if (typeof setOpen === 'function') {\n setOpen(false);\n }\n // Also call generic onClose if provided\n onClose?.();\n }, [setOpen, onClose]);\n\n /**\n * Determine the close button to render\n * If closeButton is provided, use it\n * Otherwise generate a default IconButton that triggers handleClose\n */\n const renderCloseButton = useMemo(() => {\n if (closeButton) return closeButton;\n \n return (\n <CloseButtonSlot onClick={handleClose} size=\"small\" aria-label=\"close\" {...closeButtonProps} sx={{\n padding: 0,\n ...closeButtonProps?.sx,\n }}>\n <CloseIconSlot\n {...closeIconProps}\n fontSize=\"1rem\"\n sx={{\n color: 'var(--closeIconColor)',\n ...closeIconProps?.sx,\n }}\n />\n </CloseButtonSlot>\n );\n }, [closeButton, handleClose, CloseButtonSlot, CloseIconSlot, closeButtonProps, closeIconProps]);\n\n // ensure the elemental modal classname is always present so tests can target it\n const modalClass = classnames(CLASSNAMEs.elemental.modal, rest.className);\n\n return (\n <Modal\n open={open}\n onClose={onClose}\n className={modalClass}\n {...rest}\n sx={{\n zIndex: COMPONENTs.modal.zIndex,\n padding: \"1%\",\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'transparent',\n\n // backdropFilter: 'blur(5px)', // causing performance issues when blurring large areas\n }}\n\n >\n <Box\n style={{\n \"--w\": effectiveSize.width,\n \"--h\": effectiveSize.height,\n \"--max-h\": maxHeight,\n \"--max-w\": maxWidth,\n ...(slotProps?.header?.style?.headerImg\n ? { '--headerImg': slotProps.header.style.headerImg }\n : {}),\n ...(slotProps?.container?.style?.bgColor\n ? { '--bgC': slotProps.container.style.bgColor }\n : {}),\n ...(slotProps?.container?.style?.shadow\n ? { '--shadow': slotProps.container.style.shadow }\n : {}),\n } as React.CSSProperties}\n sx={mergeSx(muiModalRootSx, {\n display: \"flex\",\n justifyContent: \"center\",\n height: {xs: 'calc(100vh - 2%)', md: 'var(--h)'},\n width: {xs: 'calc(100vw - 2%)', md: 'var(--w)'},\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n })}>\n <MuiPaper sx={mergeSx(muiModalPaperSx, slotProps?.container?.sx)}>\n <BackgroundContainer overridePatternUrl={slotProps?.header?.style?.headerImg}>\n <MuiModalHeader\n title={title}\n titleIcon={titleIcon}\n closeButton={renderCloseButton}\n />\n\n <Box sx={{\n padding: \"16px\",\n paddingTop: \"8px\",\n flexGrow: 1,\n height: '-webkit-fill-available',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n }}>\n {children}\n </Box>\n </BackgroundContainer>\n </MuiPaper>\n </Box>\n </Modal>\n )\n}\n\n/**\n * Background container for the modal\n * it places a background image and a gradient overlay\n */\nfunction BackgroundContainer({ children, overridePatternUrl }: {\n children?: React.ReactNode;\n overridePatternUrl?: string;\n}) {\n const isDefaultPattern = !overridePatternUrl;\n\n return (\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n flexGrow: 1,\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n position: 'relative',\n }}>\n <Box \n sx={{\n position: 'absolute',\n inset: 0,\n pointerEvents: 'none',\n \n ...(isDefaultPattern\n ? getDoodlePatternModalBackgroundSx()\n : {\n backgroundImage: 'var(--headerImg)',\n backgroundSize: '27px',\n }),\n opacity: 0.2,\n }} \n />\n <Box sx={{\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n flexGrow: 1,\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n position: 'relative',\n zIndex: 1,\n\n // Circular gradient overlay\n background: 'var(--modalOverlayBg)',\n }}>\n {children}\n </Box>\n </Box>\n )\n}\n\nfunction MuiModalHeader({\n title = '',\n titleIcon = null,\n closeButton = null,\n}: {\n title?: string;\n titleIcon?: React.ReactNode;\n closeButton?: React.ReactNode;\n}) {\n return (\n <Box sx={{\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n }}>\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n paddingTop: 1,\n gap: 1,\n maxWidth: '50%',\n }}\n >\n <MuiHeader\n sx={{\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'pre',\n }}\n >\n {title}\n </MuiHeader>\n {titleIcon && (\n <MuiHeader sx={{ display: 'flex', flexShrink: 0, }}>\n <Tooltip title=\"Icon\" arrow>\n <span>{titleIcon}</span>\n </Tooltip>\n </MuiHeader>\n )}\n </Box>\n\n {closeButton && (\n <Box sx={{ position: 'absolute', right: '8px', top: '4px' }}>{closeButton}</Box>\n )}\n </Box>\n\n );\n};\n\n","// central registry for CSS class names used throughout the codebase\n//\n// Storing them in one object makes it easy to search for components in tests\n// and debugging tools, and prevents accidental mismatches when strings are\n// copied by hand. Add additional entries here as new components need them.\n\nexport const CLASSNAMEs = {\n elemental: {\n avatar: {\n // root wrapper for the Avatar component\n root: 'Elemental-Avatar',\n // button variant used by AvatarButton and related controls\n button: 'Elemental-AvatarButton',\n },\n modal: 'Elemental-Modal',\n },\n compound: {\n useForm: {\n // class applied to the wrapper around the avatar field inside UseForm\n avatarField: 'UseForm-AvatarField',\n },\n },\n} as const;\n","export const COMPONENTs = {\n modal:{\n zIndex: 1300,\n }\n}\n","'use client'\nimport Paper from '@mui/material/Paper'\nimport { styled } from '@mui/material/styles'\n\n/**\n * Mui Paper boxshadow with a shiny effect\n * \n * [Doc](https://mui.com/material-ui/api/paper/)\n */\nconst ShinyPaper = styled(Paper)({\n '--shiny-paper-shadow-color': 'var(--mui-palette-blink-secondary)',\n '--shiny-paper-grey-mix': 'color-mix(in lab, var(--mui-palette-grey-A700), transparent 50%)',\n '--shiny-paper-shadow-color-secondary': 'color-mix(in lab, var(--shiny-paper-shadow-color), var(--shiny-paper-grey-mix) 50%)',\n\n '--bs-1': 'var(--shiny-paper-shadow-color)',\n '--bs-2': 'var(--shiny-paper-shadow-color-secondary)',\n '--bs-3': 'var(--shiny-paper-shadow-color)',\n '--bs': `\n 0px 2px 1px -1px var(--bs-1),\n 0px 1px 1px 0px var(--bs-2),\n 0px 1px 3px 0px var(--bs-3)\n `,\n\n \"&.MuiPaper-root\":{\n transition:\"background-color 0s\",\n boxShadow: \"var(--bs)\",\n },\n})\nexport default ShinyPaper","export interface DoodlePatternPalette {\n primary: string;\n primaryOpacity: number;\n primaryWidth: number;\n accent: string;\n accentOpacity: number;\n accentWidth: number;\n}\n\nexport const DOODLE_PATTERN_PALETTE_LIGHT: DoodlePatternPalette = {\n primary: \"#5f516f\",\n primaryOpacity: 0.42,\n primaryWidth: 1.55,\n accent: \"#b84f86\",\n accentOpacity: 0.34,\n accentWidth: 1.3,\n};\n\nexport const DOODLE_PATTERN_PALETTE_DARK: DoodlePatternPalette = {\n primary: \"#e5f7ff\",\n primaryOpacity: 0.96,\n primaryWidth: 1.85,\n accent: \"#f0d7ff\",\n accentOpacity: 0.82,\n accentWidth: 1.55,\n};\n\nexport const DOODLE_PATTERN_STRUCTURE = {\n primaryWidth: DOODLE_PATTERN_PALETTE_LIGHT.primaryWidth,\n accentWidth: DOODLE_PATTERN_PALETTE_LIGHT.accentWidth,\n} as const;\n\nconst DOODLE_PATTERN_MASK_COLOR = \"#000\";\n\nexport interface DoodlePatternPlacement {\n x: number;\n y: number;\n icon: DoodlePatternIconName;\n rotate?: number;\n scale?: number;\n priority?: number;\n}\n\nexport const DOODLE_PATTERN_TILE_WIDTH = 520;\nexport const DOODLE_PATTERN_TILE_HEIGHT = 250;\nexport const DOODLE_PATTERN_RENDER_SCALE = 3;\n\nconst DOODLE_PATTERN_ICON_SIZE = 44;\nconst DOODLE_PATTERN_ICON_MUTATIONS = [\n { rotate: 0, scale: 1 },\n { rotate: 40, scale: 0.76 },\n { rotate: -180, scale: 1.18 },\n { rotate: -54, scale: 0.88 },\n { rotate: 132, scale: 0.64 },\n { rotate: -118, scale: 1.08 },\n { rotate: 74, scale: 0.92 },\n { rotate: -32, scale: 1.28 },\n] as const;\nexport const DOODLE_PATTERN_ICON_VIEW_BOX = \"0 0 44 44\";\n\nexport const DOODLE_PATTERN_ICON_SVGS = {\n chat:\n \"<path d='M8 8h26a7 7 0 0 1 7 7v13a7 7 0 0 1-7 7h-8l-8 7v-7H8a7 7 0 0 1-7-7V15a7 7 0 0 1 7-7Z'/><path d='M11 19h18M11 27h11'/>\",\n agent:\n \"<path d='M8 11h26a8 8 0 0 1 8 8v12a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8V19a8 8 0 0 1 8-8Z'/><path d='M14 8V4M30 8V4'/><path d='M11 30h20'/><circle cx='15' cy='23' r='2.5'/><circle cx='27' cy='23' r='2.5'/>\",\n cursor:\n \"<path d='M8 5l25 13-17 6-7 17L8 5Z'/><path d='M18 25l12 12'/>\",\n model:\n \"<path d='M12 10h20a6 6 0 0 1 6 6v14a6 6 0 0 1-6 6H12a6 6 0 0 1-6-6V16a6 6 0 0 1 6-6Z'/><circle cx='16' cy='20' r='2.5'/><circle cx='28' cy='20' r='2.5'/><circle cx='22' cy='29' r='2.5'/><path d='M18 21l3 6M26 21l-3 6'/>\",\n orchestra:\n \"<path d='M22 4l7 4v8l-7 4-7-4V8ZM11 24l7 4v8l-7 4-7-4v-8ZM33 24l7 4v8l-7 4-7-4v-8Z'/><path d='M19 21l-3 5M25 21l3 5M20 32h4'/>\",\n doc:\n \"<path d='M9 5h18l8 8v23H9Z'/><path d='M27 5v9h8M15 21h14M15 29h10'/>\",\n grid:\n \"<path d='M7 7h30v30H7ZM7 17h30M7 27h30M17 7v30M27 7v30'/>\",\n brain:\n \"<path d='M14 9c-6 0-10 4-10 10 0 3 1 5 3 7-1 5 3 9 8 9 3 0 5-1 7-3 2 2 4 3 7 3 5 0 9-4 8-9 2-2 3-4 3-7 0-6-4-10-10-10-3 0-6 1-8 3-2-2-5-3-8-3Z'/><path d='M22 12v20M12 17c4 0 7 2 10 6M32 17c-4 0-7 2-10 6M12 27c4-1 7 0 10 3M32 27c-4-1-7 0-10 3'/>\",\n tool:\n \"<path d='M31 6c-4-1-8 0-11 3-2 2-3 5-2 8L6 29l5 5 12-12c3 1 6 0 8-2 3-3 4-7 3-11l-6 6-4-4Z'/>\",\n code: \"<path d='M15 13l-7 7 7 7M27 13l7 7-7 7M23 10l-5 20'/>\",\n terminal:\n \"<path d='M5 8h32v25H5Z'/><path d='M11 17l6 4-6 5M21 27h10'/>\",\n laptop: \"<path d='M8 9h28v20H8Z'/><path d='M4 35h36M15 29h14'/>\",\n smartphone:\n \"<path d='M14 4h16a4 4 0 0 1 4 4v28a4 4 0 0 1-4 4H14a4 4 0 0 1-4-4V8a4 4 0 0 1 4-4Z'/><path d='M18 9h8M14 32h16'/><circle cx='22' cy='36' r='1.5'/>\",\n battery:\n \"<path d='M6 12h30v20H6Z'/><path d='M36 18h5v8h-5'/><path d='M12 22l12-6-4 5h12l-13 7 4-6Z'/>\",\n sigma: \"<path d='M31 8H10l10 12-10 12h22'/>\",\n function:\n \"<path d='M29 8c-8-2-12 2-13 10l-3 17M8 19h19M26 25l6 7M32 25l-6 7'/>\",\n gear:\n \"<g transform='translate(2 2) scale(1.6667)'><path d='M10.3 4.3c.4-1.7 3-1.7 3.4 0 .3 1.1 1.6 1.7 2.6 1.1 1.5-.9 3.3.8 2.4 2.4-.6 1 0 2.3 1.1 2.6 1.7.4 1.7 3 0 3.4-1.1.3-1.7 1.6-1.1 2.6.9 1.5-.8 3.3-2.4 2.4-1-.6-2.3 0-2.6 1.1-.4 1.7-3 1.7-3.4 0-.3-1.1-1.6-1.7-2.6-1.1-1.5.9-3.3-.8-2.4-2.4.6-1 0-2.3-1.1-2.6-1.7-.4-1.7-3 0-3.4 1.1-.3 1.7-1.6 1.1-2.6-.9-1.5.8-3.3 2.4-2.4 1 .6 2.3 0 2.6-1.1Z'/><circle cx='12' cy='12' r='4'/></g>\",\n chip:\n \"<path d='M11 11h22v22H11Z'/><path d='M16 6v5M22 6v5M28 6v5M16 33v5M22 33v5M28 33v5M6 16h5M6 22h5M6 28h5M33 16h5M33 22h5M33 28h5'/>\",\n logicGate:\n \"<path d='M9 12h12c8 0 14 4 14 10s-6 10-14 10H9Z'/><path d='M3 17h6M3 27h6M35 22h6'/><circle cx='15' cy='17' r='1.5'/><circle cx='15' cy='27' r='1.5'/>\",\n ram:\n \"<path d='M6 12h32v20H6Z'/><path d='M11 17h5v8h-5ZM20 17h5v8h-5ZM29 17h5v8h-5Z'/><path d='M10 8v4M16 8v4M22 8v4M28 8v4M34 8v4M10 32v4M16 32v4M22 32v4M28 32v4M34 32v4'/><path d='M17 32v3h10v-3'/>\",\n opticalFiber:\n \"<path d='M15 38V24h14v14'/><path d='M18 24C11 19 8 14 8 8M21 24C18 17 18 12 18 7M24 24C26 17 26 12 26 7M27 24C34 19 36 14 36 8'/><circle cx='8' cy='8' r='3'/><circle cx='18' cy='7' r='3'/><circle cx='26' cy='7' r='3'/><circle cx='36' cy='8' r='3'/><path d='M12 34h20'/>\",\n database:\n \"<ellipse cx='22' cy='11' rx='15' ry='6'/><path d='M7 11v20c0 3 7 6 15 6s15-3 15-6V11M7 21c0 3 7 6 15 6s15-3 15-6'/>\",\n dataTable:\n \"<path d='M7 9h30v26H7Z'/><path d='M7 16h30M17 16v19M27 16v19M12 12h2M18 12h2M24 12h2'/>\",\n dataPipeline:\n \"<path d='M6 12h10v8H6ZM28 12h10v8H28ZM17 26h10v8H17Z'/><path d='M16 16h12M22 20v6'/><circle cx='16' cy='16' r='1.5'/><circle cx='28' cy='16' r='1.5'/><circle cx='22' cy='26' r='1.5'/>\",\n dataFilter:\n \"<path d='M7 9h30L25 23v11l-6 3V23Z'/><path d='M14 14h16'/>\",\n dataSearch:\n \"<circle cx='18' cy='18' r='10'/><path d='M25 25l11 11M14 18h8M14 23h5'/>\",\n dataPieChart:\n \"<circle cx='22' cy='22' r='15'/><path d='M22 7v15h15'/><path d='M22 22L12 34'/>\",\n dataCloud:\n \"<path d='M13 31h20a7 7 0 0 0 1-14 10 10 0 0 0-19-3 8 8 0 0 0-2 17Z'/><path d='M22 18v11M18 25l4 4 4-4'/>\",\n dataBinaryArray:\n \"<path d='M12 8H8v28h4M32 8h4v28h-4'/><text x='22' y='17' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-monospace,SFMono-Regular,Menlo,monospace' font-size='8.5' font-weight='300'>101</text><text x='22' y='27' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-monospace,SFMono-Regular,Menlo,monospace' font-size='8.5' font-weight='300'>010</text><text x='22' y='37' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-monospace,SFMono-Regular,Menlo,monospace' font-size='8.5' font-weight='300'>111</text>\",\n bracket: \"<path d='M17 8h-7v24h7M27 8h7v24h-7'/>\",\n graph:\n \"<path d='M8 33V11M8 33h29M14 27l7-8 6 5 8-12'/><circle cx='21' cy='19' r='2'/><circle cx='27' cy='24' r='2'/><circle cx='35' cy='12' r='2'/>\",\n atom:\n \"<circle cx='22' cy='22' r='3'/><ellipse cx='22' cy='22' rx='16' ry='6'/><ellipse cx='22' cy='22' rx='16' ry='6' transform='rotate(60 22 22)'/><ellipse cx='22' cy='22' rx='16' ry='6' transform='rotate(-60 22 22)'/>\",\n plus: \"<path d='M22 13v18M13 22h18'/>\",\n dot: \"<circle cx='22' cy='22' r='4'/>\",\n wave: \"<path d='M7 22c8-10 17 10 25 0'/>\",\n equal: \"<path d='M12 18h22M12 26h22'/>\",\n pi: \"<path d='M10 14h26M16 14v20M30 14v15c0 4 3 6 7 4'/>\",\n lambda:\n \"<text x='22' y='35' text-anchor='middle' fill='none' stroke-width='0.65' font-family='Georgia,Times New Roman,serif' font-size='34' font-weight='400'>λ</text>\",\n functionDirac:\n \"<text x='44' y='26' text-anchor='middle' fill='none' stroke-width='0.48' font-family='ui-sans-serif,system-ui,sans-serif' font-size='9' font-weight='300'>iγ<tspan baseline-shift='super' font-size='6'>μ</tspan>∂<tspan baseline-shift='sub' font-size='6'>μ</tspan>ψ=mψ</text>\",\n functionSoftmax:\n \"<text x='43' y='25' text-anchor='end' fill='none' stroke-width='0.46' font-family='ui-sans-serif,system-ui,sans-serif' font-size='7.5' font-weight='300'>softmax=</text><text x='55' y='18' text-anchor='middle' fill='none' stroke-width='0.48' font-family='ui-sans-serif,system-ui,sans-serif' font-size='9' font-weight='300'>e<tspan baseline-shift='super' font-size='6'>x</tspan></text><path d='M44 23h22'/><text x='55' y='34' text-anchor='middle' fill='none' stroke-width='0.48' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>Σe<tspan baseline-shift='super' font-size='5.5'>x</tspan></text>\",\n functionActivation:\n \"<text x='44' y='26' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-sans-serif,system-ui,sans-serif' font-size='10' font-weight='300'>y=σ(Wx+b)</text>\",\n functionAttention:\n \"<text x='39' y='25' text-anchor='end' fill='none' stroke-width='0.46' font-family='ui-sans-serif,system-ui,sans-serif' font-size='7.5' font-weight='300'>attn=</text><text x='52' y='18' text-anchor='middle' fill='none' stroke-width='0.48' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8.5' font-weight='300'>QK<tspan baseline-shift='super' font-size='5.5'>T</tspan></text><path d='M41 23h22'/><text x='52' y='34' text-anchor='middle' fill='none' stroke-width='0.48' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>√d</text><text x='66' y='25' text-anchor='start' fill='none' stroke-width='0.46' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8.5' font-weight='300'>V</text>\",\n functionLoss:\n \"<text x='44' y='26' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-sans-serif,system-ui,sans-serif' font-size='9' font-weight='300'>L=-Σy log(p)</text>\",\n functionSchrodinger:\n \"<text x='6' y='26' text-anchor='start' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8.5' font-weight='300'>iℏ</text><text x='30' y='18' text-anchor='middle' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>∂ψ</text><path d='M20 23h20'/><text x='30' y='35' text-anchor='middle' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>∂t</text><text x='48' y='26' text-anchor='middle' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='9' font-weight='300'>=-</text><text x='66' y='18' text-anchor='middle' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>ℏ<tspan baseline-shift='super' font-size='5.5'>2</tspan></text><path d='M56 23h20'/><text x='66' y='35' text-anchor='middle' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8' font-weight='300'>2m</text><text x='81' y='26' text-anchor='start' fill='none' stroke-width='0.44' font-family='ui-sans-serif,system-ui,sans-serif' font-size='8.5' font-weight='300'>∇<tspan baseline-shift='super' font-size='5.5'>2</tspan>ψ+Vψ</text>\",\n functionGraphTanh:\n \"<path d='M7 22h30M22 7v30'/><path d='M8 31c7 0 10-2 14-9 4-7 7-9 14-9'/><path d='M11 31h5M30 13h5'/>\",\n functionGraphGaussian:\n \"<path d='M7 35V9M7 35h30'/><path d='M10 34c5 0 6-20 12-20s7 20 12 20'/><path d='M22 14v21'/>\",\n distributionUniform:\n \"<path d='M7 35V9M7 35h30'/><path d='M11 32V17h22v15'/><path d='M11 17h22'/>\",\n distributionExponential:\n \"<path d='M7 35V9M7 35h30'/><path d='M10 13c7 8 11 14 25 19'/><path d='M10 13h4M31 32h4'/>\",\n distributionBimodal:\n \"<path d='M7 35V9M7 35h30'/><path d='M9 34c4 0 5-13 10-13s5 13 8 13c2 0 3-11 7-11 3 0 3 11 4 11'/>\",\n distributionSkewed:\n \"<path d='M7 35V9M7 35h30'/><path d='M10 34c3 0 4-19 9-19 6 0 7 17 17 17'/><path d='M19 15v19'/>\",\n derivative:\n \"<text x='22' y='17' text-anchor='middle' fill='none' stroke-width='0.55' font-family='ui-sans-serif,system-ui,sans-serif' font-size='12' font-weight='300'>dy</text><path d='M8 23h28'/><text x='22' y='38' text-anchor='middle' fill='none' stroke-width='0.55' font-family='ui-sans-serif,system-ui,sans-serif' font-size='12' font-weight='300'>dx</text>\",\n integral: \"<path d='M28 6c-8 0-8 8-8 17s-1 17-9 17M19 7h9M10 39h9'/>\",\n exp:\n \"<text x='18' y='30' text-anchor='middle' fill='none' stroke-width='0.55' font-family='ui-sans-serif,system-ui,sans-serif' font-size='20' font-weight='300'>e</text><text x='30' y='18' text-anchor='middle' fill='none' stroke-width='0.5' font-family='ui-sans-serif,system-ui,sans-serif' font-size='11' font-weight='300'>x</text>\",\n sin:\n \"<text x='22' y='28' text-anchor='middle' fill='none' stroke-width='0.55' font-family='ui-sans-serif,system-ui,sans-serif' font-size='18' font-weight='300'>sin</text>\",\n functionGraphCosin:\n \"<path d='M7 22h30M22 7v30'/><path d='M8 13c4 0 5 18 10 18s6-18 10-18 5 18 8 18'/><path d='M9 13h4M31 31h4'/>\",\n tanh:\n \"<text x='22' y='28' text-anchor='middle' fill='none' stroke-width='0.55' font-family='ui-sans-serif,system-ui,sans-serif' font-size='16' font-weight='300'>tanh</text>\",\n wifi:\n \"<path d='M9 20c8-8 18-8 26 0M14 26c5-5 11-5 16 0M19 32c2-2 4-2 6 0'/><circle cx='22' cy='36' r='2'/>\",\n internet:\n \"<circle cx='22' cy='22' r='15'/><path d='M7 22h30M22 7c6 8 6 22 0 30M22 7c-6 8-6 22 0 30M11 13c6 3 16 3 22 0M11 31c6-3 16-3 22 0'/>\",\n percent:\n \"<circle cx='14' cy='14' r='4'/><circle cx='30' cy='30' r='4'/><path d='M33 11L11 33'/>\",\n infinity:\n \"<path d='M6 22c0-5 4-9 9-9 4 0 7 3 10 9 3 6 6 9 10 9 5 0 9-4 9-9s-4-9-9-9c-4 0-7 3-10 9-3 6-6 9-10 9-5 0-9-4-9-9Z'/>\",\n bug:\n \"<path d='M14 16h16v15a8 8 0 0 1-16 0Z'/><path d='M18 16v-4h8v4M9 22h5M30 22h5M9 30h5M30 30h5M13 11l-5-5M31 11l5-5'/><circle cx='18' cy='24' r='1.5'/><circle cx='26' cy='24' r='1.5'/>\",\n server:\n \"<path d='M8 9h28v11H8ZM8 24h28v11H8Z'/><circle cx='14' cy='14' r='1.5'/><circle cx='14' cy='29' r='1.5'/>\",\n rocket:\n \"<path d='M22 6L29 15V28L33 36L26 30H18L11 36L15 28V15Z'/><circle cx='22' cy='21' r='3'/><path d='M19 34l3 4M25 34l-3 4M22 30v4'/>\",\n puzzle:\n \"<path d='M10 10h10c0-5 8-5 8 0h8v9c5 0 5 8 0 8v9h-9c0-5-8-5-8 0h-9v-9c5 0 5-8 0-8Z'/>\",\n book:\n \"<path d='M5 10h13c3 0 4 2 4 4 0-2 1-4 4-4h13v26H27c-3 0-5 2-5 4-1-2-2-4-5-4H5Z'/><path d='M22 14v26'/><path d='M10 17h8M10 23h8M10 29h8M26 17h8M26 23h8M26 29h8'/><path d='M5 14H2v26h15c3 0 4 1 5 3 1-2 2-3 5-3h15V14h-3'/>\",\n beaker:\n \"<path d='M16 7h16M20 7v10L11 34a4 4 0 0 0 4 6h18a4 4 0 0 0 4-6l-9-17V7M17 28h14'/>\",\n sliders:\n \"<path d='M8 14h28M8 24h28M8 34h28'/><circle cx='17' cy='14' r='4'/><circle cx='28' cy='24' r='4'/><circle cx='21' cy='34' r='4'/>\",\n keyboard:\n \"<path d='M6 12h32v24H6Z'/><path d='M12 19h3M20 19h3M28 19h3M12 27h3M20 27h12M12 34h20'/>\",\n branch:\n \"<circle cx='12' cy='12' r='4'/><circle cx='32' cy='20' r='4'/><circle cx='12' cy='32' r='4'/><path d='M16 12c8 0 8 8 12 8M16 32c8 0 8-12 12-12'/>\",\n cube:\n \"<path d='M22 6l16 9v18l-16 9-16-9V15Z'/><path d='M6 15l16 9 16-9M22 24v18'/>\",\n} as const;\n\nexport type DoodlePatternIconName = keyof typeof DOODLE_PATTERN_ICON_SVGS;\n\nconst DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH = 88;\nconst DOODLE_PATTERN_WIDE_FUNCTION_ICON_VIEW_BOX_WIDTH = 132;\n\nconst getDoodlePatternIconViewBoxWidth = (\n iconName: DoodlePatternIconName\n): number => {\n const iconViewBoxWidths: Partial<Record<DoodlePatternIconName, number>> = {\n functionActivation: DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH,\n functionAttention: DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH,\n functionDirac: DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH,\n functionLoss: DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH,\n functionSchrodinger: DOODLE_PATTERN_WIDE_FUNCTION_ICON_VIEW_BOX_WIDTH,\n functionSoftmax: DOODLE_PATTERN_FUNCTION_ICON_VIEW_BOX_WIDTH,\n };\n\n return iconViewBoxWidths[iconName] ?? DOODLE_PATTERN_ICON_SIZE;\n};\n\nexport const getDoodlePatternIconViewBox = (\n iconName: DoodlePatternIconName\n): string =>\n `0 0 ${getDoodlePatternIconViewBoxWidth(iconName)} ${DOODLE_PATTERN_ICON_SIZE}`;\n\nexport const getDoodlePatternIconWidth = (\n iconName: DoodlePatternIconName,\n iconSize = DOODLE_PATTERN_ICON_SIZE\n): number =>\n iconSize *\n (getDoodlePatternIconViewBoxWidth(iconName) / DOODLE_PATTERN_ICON_SIZE);\n\nconst PLAYGROUND_AI_DOODLE_HERO_PLACEMENTS = [\n { x: -10, y: 215, icon: \"sin\", rotate: -11, scale: 1.18, priority: 1 },\n { x: -8, y: 100, icon: \"lambda\", rotate: 10, scale: 0.74, priority: 10},\n { x: -2, y: -2, icon: \"code\", rotate: 18, scale: 0.3, priority: 1 }, \n { x: -2, y: 188, icon: \"percent\", rotate: -13, scale: 0.7, priority: 10},\n { x: -1, y: 151, icon: \"dataFilter\", rotate: -18, scale: 0.28, priority: 1 },\n { x: 2, y: 32, icon: \"wifi\", rotate: 13, scale: 0.28, priority: 10},\n { x: 2, y: 79, icon: \"dataSearch\", rotate: -12, scale: 0.3, priority: 10},\n { x: 8, y: 11, icon: \"doc\", rotate: -12, scale: 0.58, priority: 7},\n { x: 9, y: 135, icon: \"functionGraphGaussian\", rotate: -10, scale: 0.9, priority: 6},\n { x: 12, y: 83, icon: \"rocket\", rotate: 15, scale: 0.78, priority: 7},\n { x: 14, y: 121, icon: \"smartphone\", rotate: -19, scale: 0.55, priority: 4},\n { x: 16, y: 58, icon: \"internet\", rotate: -13, scale: 0.32, priority: 5},\n { x: 16, y: 212, icon: \"dataCloud\", rotate: 13, scale: 0.58, priority: 6},\n { x: 22, y: 29, icon: \"functionGraphCosin\", rotate: 9, scale: 0.82, priority: 6},\n { x: 22, y: 165, icon: \"server\", rotate: 13, scale: 1.24, priority: 3}, \n { x: 24, y: -2, icon: \"functionDirac\", rotate: -35, scale: 0.76, priority: 10},\n { x: 24, y: 113, icon: \"functionActivation\", rotate: -5, scale: 0.68, priority: 5},\n { x: 35, y: 91, icon: \"pi\", rotate: 11, scale: 0.8, priority: 6},\n { x: 36, y: 232, icon: \"wave\", rotate: 12, scale: 0.3, priority: 10},\n { x: 43, y: 146, icon: \"dataSearch\", rotate: 13, scale: 0.42, priority: 9},\n { x: 43, y: 219, icon: \"bug\", rotate: -12, scale: 0.34, priority: 4},\n { x: 48, y: 48, icon: \"agent\", rotate: -8, scale: 1.05, priority: 8},\n { x: 52, y: 227, icon: \"distributionSkewed\", rotate: 8, scale: 0.62, priority: 5},\n { x: 57, y: 132, icon: \"dataPipeline\", rotate: 14, scale: 0.34, priority: 5},\n { x: 67, y: 90, icon: \"integral\", rotate: 13, scale: 0.56, priority: 1 },\n { x: 69, y: 151, icon: \"function\", rotate: -14, scale: 0.3, priority: 1 },\n { x: 73, y: 112, icon: \"infinity\", rotate: 15, scale: 0.38, priority: 9},\n { x: 74, y: 12, icon: \"equal\", rotate: -10, scale: 0.28, priority: 10},\n { x: 75, y: 191, icon: \"cursor\", rotate: -9, scale: 0.34, priority: 5},\n { x: 76, y: 144, icon: \"functionGraphTanh\", rotate: -12, scale: 0.82, priority: 6},\n { x: 77, y: 31, icon: \"dataCloud\", rotate: -17, scale: 0.42, priority: 9},\n { x: 78, y: 216, icon: \"keyboard\", rotate: -8, scale: 0.34, priority: 4},\n { x: 82, y: 175, icon: \"derivative\", rotate: -8, scale: 0.38, priority: 6},\n { x: 93, y: 83, icon: \"atom\", rotate: -14, scale: 1.02, priority: 5},\n { x: 94, y: 232, icon: \"distributionSkewed\", rotate: -9, scale: 0.3, priority: 10},\n { x: 95, y: 127, icon: \"grid\", rotate: -9, scale: 0.34, priority: 7},\n { x: 96, y: 5, icon: \"chat\", rotate: 9, scale: 0.95, priority: 8},\n { x: 100, y: 49, icon: \"distributionSkewed\", rotate: 27, scale: 0.32, priority: 4},\n { x: 101, y: 201, icon: \"distributionUniform\", rotate: -8, scale: 0.38, priority: 6},\n { x: 104, y: 172, icon: \"battery\", rotate: 8, scale: 0.72, priority: 3},\n { x: 106, y: 195, icon: \"functionDirac\", rotate: 3, scale: 0.76, priority: 2},\n { x: 112, y: 134, icon: \"tanh\", rotate: -7, scale: 0.42, priority: 6},\n { x: 114, y: 154, icon: \"orchestra\", rotate: 30, scale: 0.42, priority: 6},\n { x: 115, y: 229, icon: \"ram\", rotate: 9, scale: 0.52, priority: 4},\n { x: 116, y: 68, icon: \"tool\", rotate: -18, scale: 0.4, priority: 4}, \n { x: 118, y: 121, icon: \"wifi\", rotate: -17, scale: 0.44, priority: 4 },\n { x: 125, y: 138, icon: \"plus\", rotate: 11, scale: 0.88, priority: 5},\n { x: 125, y: 166, icon: \"exp\", rotate: 8, scale: 0.42, priority: 1 },\n { x: 130, y: 165, icon: \"lambda\", rotate: 8, scale: 0.72, priority: 6},\n { x: 132, y: 115, icon: \"opticalFiber\", rotate: 14, scale: 0.54, priority: 4},\n { x: 132, y: 57, icon: \"wave\", rotate: -9, scale: 0.32, priority: 1 },\n { x: 133, y: 67, icon: \"functionLoss\", rotate: 3, scale: 0.42, priority: 1 },\n { x: 134, y: 2, icon: \"distributionExponential\", rotate: 9, scale: 0.3, priority: 10},\n { x: 141, y: 218, icon: \"pi\", rotate: -15, scale: 0.46, priority: 1 },\n { x: 151, y: 232, icon: \"brain\", rotate: 5, scale: 0.46, priority: 1 },\n { x: 142, y: 82, icon: \"dataTable\", rotate: 8, scale: 0.82, priority: 3},\n { x: 149, y: -1, icon: \"percent\", rotate: 8, scale: 0.28, priority: 1 },\n { x: 150, y: 150, icon: \"cube\", rotate: -13, scale: 1.08, priority: 3},\n { x: 151, y: 23, icon: \"brain\", rotate: -9, scale: 0.82, priority: 3},\n { x: 151, y: 125, icon: \"functionSoftmax\", rotate: -5, scale: 0.7, priority: 5},\n { x: 158, y: 197, icon: \"distributionExponential\", rotate: -12, scale: 0.34, priority: 5},\n { x: 159, y: -15, icon: \"plus\", rotate: 16, scale: 1.2, priority: 1 },\n { x: 163, y: 113, icon: \"sin\", rotate: -10, scale: 0.36, priority: 6},\n { x: 170, y: 67, icon: \"code\", rotate: 14, scale: 0.36, priority: 4},\n { x: 177, y: 53, icon: \"functionSoftmax\", rotate: 15, scale: 0.46, priority: 7},\n { x: 194, y: 183, icon: \"dataBinaryArray\", rotate: 11, scale: 0.34, priority: 4},\n { x: 176, y: 145, icon: \"infinity\", rotate: 14, scale: 0.38, priority: 6},\n { x: 176, y: 222, icon: \"functionGraphCosin\", rotate: 8, scale: 0.72, priority: 10},\n { x: 187, y: 90, icon: \"dataPieChart\", rotate: -12, scale: 0.42, priority: 6},\n { x: 190, y: 112, icon: \"keyboard\", rotate: 9, scale: 0.5, priority: 4},\n { x: 190, y: 207, icon: \"opticalFiber\", rotate: -14, scale: 0.34, priority: 4},\n { x: 198, y: 56, icon: \"functionAttention\", rotate: 4, scale: 0.72, priority: 5},\n { x: 202, y: 100, icon: \"lambda\", rotate: -30, scale: 0.70, priority: 1 },\n { x: 203, y: 5, icon: \"laptop\", rotate: -7, scale: 1.26, priority: 3},\n { x: 204, y: 71, icon: \"distributionExponential\", rotate: -12, scale: 0.9, priority: 3},\n { x: 218, y: 170, icon: \"book\", rotate: -11, scale: 0.94, priority: 5},\n { x: 218, y: 230, icon: \"terminal\", rotate: 5, scale: 0.44, priority: 5},\n { x: 212, y: 140, icon: \"dataCloud\", rotate: 21, scale: 0.40, priority: 1 },\n { x: 222, y: 158, icon: \"derivative\", rotate: 18, scale: 0.38, priority: 7},\n { x: 224, y: 128, icon: \"gear\", rotate: 18, scale: 0.38, priority: 7},\n { x: 229, y: 116, icon: \"dot\", rotate: 0, scale: 0.70, priority: 1 },\n { x: 230, y: 215, icon: \"dataFilter\", rotate: 13, scale: 0.34, priority: 5},\n { x: 238, y: 101, icon: \"puzzle\", rotate: 12, scale: 0.62, priority: 8},\n { x: 249, y: 121, icon: \"bug\", rotate: -8, scale: 0.66, priority: 4},\n { x: 250, y: 55, icon: \"dataBinaryArray\", rotate: 12, scale: 0.3, priority: 4},\n { x: 251, y: 221, icon: \"integral\", rotate: 9, scale: 0.38, priority: 6},\n { x: 254, y: 4, icon: \"sigma\", rotate: -12, scale: 0.48, priority: 1 },\n { x: 256, y: 149, icon: \"function\", rotate: -14, scale: 0.38, priority: 7},\n { x: 258, y: 49, icon: \"dataPieChart\", rotate: 13, scale: 0.2, priority: 1 },\n { x: 258, y: 192, icon: \"functionSchrodinger\", rotate: -2, scale: 0.78, priority: 5},\n { x: 262, y: 95, icon: \"dataSearch\", rotate: -21, scale: 0.40, priority: 1 },\n { x: 264, y: 60, icon: \"distributionUniform\", rotate: 10, scale: 0.72, priority: 9},\n { x: 268, y: 238, icon: \"doc\", rotate: -10, scale: 0.3, priority: 10}, \n { x: 268, y: 29, icon: \"book\", rotate: 13, scale: 0.2, priority: 1 },\n { x: 270, y: 160, icon: \"laptop\", rotate: 12, scale: 0.5, priority: 4 },\n { x: 278, y: 12, icon: \"chip\", rotate: 8, scale: 1.18, priority: 3},\n { x: 278, y: 116, icon: \"equal\", rotate: 15, scale: 0.74, priority: 1 },\n { x: 278, y: 180, icon: \"plus\", rotate: -8, scale: 0.57, priority: 1 },\n { x: 280, y: -4, icon: \"exp\", rotate: 8, scale: 0.62, priority: 1 },\n { x: 286, y: 138, icon: \"functionGraphCosin\", rotate: -8, scale: 0.54, priority: 5},\n { x: 288, y: 78, icon: \"database\", rotate: -11, scale: 1.12, priority: 3},\n { x: 296, y: 158, icon: \"orchestra\", rotate: -12, scale: 0.74, priority: 3},\n { x: 300, y: 62, icon: \"distributionBimodal\", rotate: -8, scale: 0.32, priority: 4},\n { x: 306, y: 218, icon: \"functionGraphGaussian\", rotate: -7, scale: 0.62, priority: 5},\n { x: 317, y: 119, icon: \"graph\", rotate: 11, scale: 0.56, priority: 4},\n { x: 318, y: -2, icon: \"dataBinaryArray\", rotate: -8, scale: 0.8, priority: 10},\n { x: 325, y: 35, icon: \"code\", rotate: 8, scale: 0.8, priority: 10},\n { x: 333, y: 220, icon: \"chip\", rotate: 13, scale: 0.28, priority: 1 },\n { x: 335, y: 65, icon: \"ram\", rotate: -12, scale: 0.68, priority: 4},\n { x: 335, y: 153, icon: \"battery\", rotate: -10, scale: 0.42, priority: 9},\n { x: 336, y: 185, icon: \"opticalFiber\", rotate: 12, scale: 0.4, priority: 9},\n { x: 342, y: 232, icon: \"wifi\", rotate: -11, scale: 0.52, priority: 10},\n { x: 348, y: 136, icon: \"atom\", rotate: 13, scale: 0.44, priority: 1 },\n { x: 350, y: 18, icon: \"branch\", rotate: 12, scale: 0.76, priority: 3},\n { x: 352, y: 86, icon: \"terminal\", rotate: 11, scale: 0.98, priority: 5},\n { x: 355, y: 172, icon: \"agent\", rotate: -12, scale: 0.4, priority: 9},\n { x: 360, y: 160, icon: \"beaker\", rotate: 16, scale: 1.24, priority: 3},\n { x: 360, y: 206, icon: \"functionLoss\", rotate: -4, scale: 1.2, priority: 1 },\n { x: 362, y: 55, icon: \"agent\", rotate: -7, scale: 0.38, priority: 4},\n { x: 364, y: 217, icon: \"dataTable\", rotate: 10, scale: 0.32, priority: 4},\n { x: 370, y: -4, icon: \"tool\", rotate: 11, scale: 0.6, priority: 10},\n { x: 372, y: 237, icon: \"distributionUniform\", rotate: 8, scale: 0.34, priority: 5},\n { x: 374, y: 125, icon: \"rocket\", rotate: 120, scale: 0.4, priority: 7},\n { x: 377, y: 71, icon: \"wifi\", rotate: 13, scale: 0.3, priority: 4},\n { x: 377, y: 81, icon: \"equal\", rotate: -5, scale: 0.3, priority: 4},\n { x: 379, y: 61, icon: \"functionLoss\", rotate: -6, scale: 0.62, priority: 5},\n { x: 381, y: 147, icon: \"distributionSkewed\", rotate: 12, scale: 0.42, priority: 6},\n { x: 384, y: 37, icon: \"distributionExponential\", rotate: -9, scale: 0.46, priority: 6},\n { x: 391, y: 126, icon: \"internet\", rotate: -12, scale: 0.52, priority: 4},\n { x: 391, y: 105, icon: \"lambda\", rotate: -12, scale: 0.44, priority: 5},\n { x: 399, y: 159, icon: \"dataPieChart\", rotate: 12, scale: 0.34, priority: 5},\n { x: 401, y: 86, icon: \"functionGraphCosin\", rotate: -9, scale: 0.42, priority: 6}, \n { x: 402, y: 21, icon: \"integral\", rotate: 9, scale: 0.4, priority: 9},\n { x: 402, y: 135, icon: \"sin\", rotate: -29, scale: 1.2, priority: 6},\n { x: 405, y: 2, icon: \"bracket\", rotate: 10, scale: 0.46, priority: 1 },\n { x: 406, y: 172, icon: \"sliders\", rotate: -16, scale: 0.9, priority: 5},\n { x: 410, y: 23, icon: \"derivative\", rotate: 9, scale: 0.4, priority: 5},\n { x: 410, y: 87, icon: \"exp\", rotate: 12, scale: 0.34, priority: 4},\n { x: 410, y: 94, icon: \"logicGate\", rotate: 13, scale: 1.04, priority: 3},\n { x: 411, y: 48, icon: \"tanh\", rotate: 6, scale: 0.46, priority: 2},\n { x: 419, y: 132, icon: \"distributionBimodal\", rotate: 8, scale: 0.4, priority: 6},\n { x: 423, y: 7, icon: \"model\", rotate: 7, scale: 1.28, priority: 3},\n { x: 428, y: 68, icon: \"dataTable\", rotate: -6, scale: 0.46, priority: 2},\n { x: 435, y: -2, icon: \"grid\", rotate: 2, scale: 0.26, priority: 1 },\n { x: 438, y: 238, icon: \"infinity\", rotate: 8, scale: 0.3, priority: 10},\n { x: 444, y: 122, icon: \"percent\", rotate: 11, scale: 0.32, priority: 4},\n { x: 444, y: 151, icon: \"functionGraphGaussian\", rotate: 12, scale: 0.42, priority: 6},\n { x: 449, y: 84, icon: \"bracket\", rotate: -10, scale: 0.32, priority: 4},\n { x: 447, y: 178, icon: \"functionGraphTanh\", rotate: -21, scale: 1.1, priority: 5},\n { x: 457, y: 58, icon: \"wifi\", rotate: 13, scale: 0.34, priority: 7},\n { x: 458, y: 125, icon: \"dataCloud\", rotate: 16, scale: 0.38, priority: 4},\n { x: 458, y: 143, icon: \"graph\", rotate: 10, scale: 0.66, priority: 5},\n { x: 459, y: 222, icon: \"function\", rotate: 0, scale: 0.7, priority: 1 },\n { x: 464, y: 78, icon: \"plus\", rotate: -16, scale: 0.28, priority: 1 },\n { x: 465, y: 0, icon: \"chat\", rotate: -12, scale: 0.28, priority: 10},\n { x: 468, y: 168, icon: \"dataSearch\", rotate: -13, scale: 0.36, priority: 4},\n { x: 471, y: 114, icon: \"sigma\", rotate: 13, scale: 0.34, priority: 4},\n { x: 473, y: 38, icon: \"dataPipeline\", rotate: -9, scale: 0.56, priority: 2},\n { x: 475, y: 85, icon: \"distributionBimodal\", rotate: -18, scale: 0.78, priority: 3},\n { x: 479, y: 59, icon: \"cursor\", rotate: -18, scale: 0.78, priority: 3},\n { x: 482, y: 204, icon: \"smartphone\", rotate: 13, scale: 0.62, priority: 3},\n { x: 486, y: 14, icon: \"dataFilter\", rotate: 17, scale: 0.54, priority: 6},\n { x: 490, y: 151, icon: \"cursor\", rotate: 15, scale: 0.36, priority: 10},\n { x: 500, y: 34, icon: \"function\", rotate: 12, scale: 0.3, priority: 10},\n { x: 500, y: 134, icon: \"dataBinaryArray\", rotate: 10, scale: 0.3, priority: 10},\n { x: 501, y: 193, icon: \"derivative\", rotate: -8, scale: 0.5, priority: 10}, \n { x: 508, y: -2, icon: \"pi\", rotate: 16, scale: 0.34, priority: 1 },\n { x: 509, y: 112, icon: \"integral\", rotate: 11, scale: 0.34, priority: 10},\n] satisfies DoodlePatternPlacement[];\n\nconst PLAYGROUND_AI_DOODLE_FLOATING_PLACEMENTS = [\n { x: 33, y: 5, icon: \"dataBinaryArray\", rotate: -11, scale: 0.3, priority: 1 },\n { x: 42, y: 58, icon: \"dot\", rotate: 0, scale: 0.24, priority: 1 },\n { x: 383, y: 59, icon: \"gear\", rotate: 11, scale: 0.28, priority: 1 },\n { x: 502, y: 83, icon: \"wave\", rotate: 13, scale: 0.3, priority: 1 },\n { x: 4, y: 72, icon: \"lambda\", rotate: 10, scale: 0.32, priority: 1 },\n { x: 498, y: 133, icon: \"dot\", rotate: 0, scale: 0.26, priority: 1 },\n { x: 204, y: 157, icon: \"wave\", rotate: 13, scale: 0.26, priority: 1 },\n { x: 244, y: 151, icon: \"sigma\", rotate: -9, scale: 0.24, priority: 4 },\n { x: 319, y: 154, icon: \"bracket\", rotate: -11, scale: 0.22, priority: 4 },\n { x: 348, y: 150, icon: \"lambda\", rotate: 8, scale: 0.22, priority: 4 },\n { x: 335, y: 202, icon: \"dot\", rotate: 0, scale: 0.22, priority: 1 },\n { x: 502, y: 184, icon: \"equal\", rotate: 15, scale: 0.28, priority: 1 },\n { x: 84, y: 229, icon: \"dot\", rotate: 0, scale: 0.24, priority: 1 },\n { x: 202, y: 221, icon: \"distributionUniform\", rotate: 8, scale: 0.3, priority: 1 },\n { x: 390, y: 228, icon: \"wave\", rotate: 9, scale: 0.3, priority: 1 },\n { x: 506, y: 226, icon: \"dataBinaryArray\", rotate: -18, scale: 0.28, priority: 1 },\n] satisfies DoodlePatternPlacement[];\n\nexport const PLAYGROUND_AI_DOODLE_PLACEMENTS: DoodlePatternPlacement[] = [\n ...PLAYGROUND_AI_DOODLE_HERO_PLACEMENTS,\n ...PLAYGROUND_AI_DOODLE_FLOATING_PLACEMENTS,\n];\n\nexport interface BuildDoodlePatternSvgOptions {\n width?: number;\n height?: number;\n iconSize?: number;\n renderScale?: number;\n placements?: DoodlePatternPlacement[];\n accentPlacements?: DoodlePatternPlacement[];\n}\n\nconst mutateDoodlePatternPlacements = (\n placements: DoodlePatternPlacement[]\n): DoodlePatternPlacement[] => {\n const iconOccurrences = new Map<DoodlePatternIconName, number>();\n\n return placements.map((placement) => {\n const occurrence = iconOccurrences.get(placement.icon) ?? 0;\n iconOccurrences.set(placement.icon, occurrence + 1);\n\n if (placement.priority) {\n return placement;\n }\n\n const mutation =\n DOODLE_PATTERN_ICON_MUTATIONS[\n occurrence % DOODLE_PATTERN_ICON_MUTATIONS.length\n ];\n\n return {\n ...placement,\n rotate: (placement.rotate ?? 0) + mutation.rotate,\n scale: (placement.scale ?? 1) * mutation.scale,\n };\n });\n};\n\nconst sortDoodlePatternPlacementsByPosition = (\n placements: DoodlePatternPlacement[]\n): DoodlePatternPlacement[] =>\n [...placements].sort((a, b) => a.x - b.x || a.y - b.y);\n\nconst renderDoodlePatternPlacement = (\n placement: DoodlePatternPlacement,\n iconSize: number\n): string => {\n const scale = placement.scale ?? 1;\n const width = getDoodlePatternIconWidth(placement.icon, iconSize) * scale;\n const height = iconSize * scale;\n const viewBox = getDoodlePatternIconViewBox(placement.icon);\n const centerX = getDoodlePatternIconViewBoxWidth(placement.icon) / 2;\n const transform = placement.rotate\n ? ` transform='rotate(${placement.rotate} ${centerX} ${iconSize / 2})'`\n : \"\";\n\n return `<svg x='${placement.x}' y='${placement.y}' width='${width}' height='${height}' viewBox='${viewBox}' overflow='visible'><g${transform}>${DOODLE_PATTERN_ICON_SVGS[placement.icon]}</g></svg>`;\n};\n\nexport const buildDoodlePatternSvg = (\n palette: DoodlePatternPalette,\n options: BuildDoodlePatternSvgOptions = {}\n): string =>\n buildDoodlePatternSvgWithStroke(\n {\n primary: palette.primary,\n primaryOpacity: palette.primaryOpacity,\n primaryWidth: palette.primaryWidth,\n accent: palette.accent,\n accentOpacity: palette.accentOpacity,\n accentWidth: palette.accentWidth,\n },\n options\n );\n\nexport const buildDoodlePatternMaskSvg = (\n options: BuildDoodlePatternSvgOptions = {}\n): string =>\n buildDoodlePatternSvgWithStroke(\n {\n primary: DOODLE_PATTERN_MASK_COLOR,\n primaryOpacity: 1,\n primaryWidth: DOODLE_PATTERN_STRUCTURE.primaryWidth,\n accent: DOODLE_PATTERN_MASK_COLOR,\n accentOpacity: 1,\n accentWidth: DOODLE_PATTERN_STRUCTURE.accentWidth,\n },\n options\n );\n\nconst buildDoodlePatternSvgWithStroke = (\n stroke: {\n primary: string;\n primaryOpacity: number;\n primaryWidth: number;\n accent: string;\n accentOpacity: number;\n accentWidth: number;\n },\n options: BuildDoodlePatternSvgOptions = {}\n): string => {\n const width = options.width ?? DOODLE_PATTERN_TILE_WIDTH;\n const height = options.height ?? DOODLE_PATTERN_TILE_HEIGHT;\n const renderScale = options.renderScale ?? DOODLE_PATTERN_RENDER_SCALE;\n const renderWidth = width * renderScale;\n const renderHeight = height * renderScale;\n const iconSize = options.iconSize ?? DOODLE_PATTERN_ICON_SIZE;\n const placements = sortDoodlePatternPlacementsByPosition(\n mutateDoodlePatternPlacements(\n options.placements ?? PLAYGROUND_AI_DOODLE_PLACEMENTS\n )\n );\n const accentPlacements = sortDoodlePatternPlacementsByPosition(\n mutateDoodlePatternPlacements(options.accentPlacements ?? [])\n );\n const renderedPlacements = placements\n .map((placement) => renderDoodlePatternPlacement(placement, iconSize))\n .join(\"\");\n const renderedAccentPlacements = accentPlacements\n .map((placement) => renderDoodlePatternPlacement(placement, iconSize))\n .join(\"\");\n\n return `<svg xmlns='http://www.w3.org/2000/svg' width='${renderWidth}' height='${renderHeight}' viewBox='0 0 ${width} ${height}'><g fill='none' stroke='${stroke.primary}' stroke-opacity='${stroke.primaryOpacity}' stroke-width='${stroke.primaryWidth}' stroke-linecap='round' stroke-linejoin='round'>${renderedPlacements}</g><g fill='none' stroke='${stroke.accent}' stroke-opacity='${stroke.accentOpacity}' stroke-width='${stroke.accentWidth}' stroke-linecap='round' stroke-linejoin='round'>${renderedAccentPlacements}</g></svg>`;\n};\n\nexport const toDoodlePatternBackgroundUrl = (svg: string): string =>\n `url(\"data:image/svg+xml,${encodeURIComponent(svg)}\")`;\n","// Generated by scripts/generateDoodlePattern.mjs. Do not edit manually.\n\nexport const DOODLE_PATTERN_MASK_URL = \"url(\\\"data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'1560'%20height%3D'750'%20viewBox%3D'0%200%20520%20250'%3E%3Cg%20fill%3D'none'%20stroke%3D'%23000'%20stroke-opacity%3D'1'%20stroke-width%3D'1.55'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Csvg%20x%3D'-10'%20y%3D'215'%20width%3D'51.919999999999995'%20height%3D'51.919999999999995'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'28'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'18'%20font-weight%3D'300'%3Esin%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'-8'%20y%3D'100'%20width%3D'32.56'%20height%3D'32.56'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'-2'%20y%3D'-2'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(18%2022%2022)'%3E%3Cpath%20d%3D'M15%2013l-7%207%207%207M27%2013l7%207-7%207M23%2010l-5%2020'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'-2'%20y%3D'188'%20width%3D'30.799999999999997'%20height%3D'30.799999999999997'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-13%2022%2022)'%3E%3Ccircle%20cx%3D'14'%20cy%3D'14'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'30'%20cy%3D'30'%20r%3D'4'%2F%3E%3Cpath%20d%3D'M33%2011L11%2033'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'-1'%20y%3D'151'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-18%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30L25%2023v11l-6%203V23Z'%2F%3E%3Cpath%20d%3D'M14%2014h16'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'2'%20y%3D'32'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M9%2020c8-8%2018-8%2026%200M14%2026c5-5%2011-5%2016%200M19%2032c2-2%204-2%206%200'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'2'%20y%3D'79'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Ccircle%20cx%3D'18'%20cy%3D'18'%20r%3D'10'%2F%3E%3Cpath%20d%3D'M25%2025l11%2011M14%2018h8M14%2023h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'4'%20y%3D'72'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'8'%20y%3D'11'%20width%3D'25.52'%20height%3D'25.52'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M9%205h18l8%208v23H9Z'%2F%3E%3Cpath%20d%3D'M27%205v9h8M15%2021h14M15%2029h10'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'9'%20y%3D'135'%20width%3D'39.6'%20height%3D'39.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c5%200%206-20%2012-20s7%2020%2012%2020'%2F%3E%3Cpath%20d%3D'M22%2014v21'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'12'%20y%3D'83'%20width%3D'34.32'%20height%3D'34.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2022%2022)'%3E%3Cpath%20d%3D'M22%206L29%2015V28L33%2036L26%2030H18L11%2036L15%2028V15Z'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'21'%20r%3D'3'%2F%3E%3Cpath%20d%3D'M19%2034l3%204M25%2034l-3%204M22%2030v4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'14'%20y%3D'121'%20width%3D'24.200000000000003'%20height%3D'24.200000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-19%2022%2022)'%3E%3Cpath%20d%3D'M14%204h16a4%204%200%200%201%204%204v28a4%204%200%200%201-4%204H14a4%204%200%200%201-4-4V8a4%204%200%200%201%204-4Z'%2F%3E%3Cpath%20d%3D'M18%209h8M14%2032h16'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'16'%20y%3D'58'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-13%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'15'%2F%3E%3Cpath%20d%3D'M7%2022h30M22%207c6%208%206%2022%200%2030M22%207c-6%208-6%2022%200%2030M11%2013c6%203%2016%203%2022%200M11%2031c6-3%2016-3%2022%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'16'%20y%3D'212'%20width%3D'25.52'%20height%3D'25.52'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M13%2031h20a7%207%200%200%200%201-14%2010%2010%200%200%200-19-3%208%208%200%200%200-2%2017Z'%2F%3E%3Cpath%20d%3D'M22%2018v11M18%2025l4%204%204-4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'22'%20y%3D'29'%20width%3D'36.08'%20height%3D'36.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2013c4%200%205%2018%2010%2018s6-18%2010-18%205%2018%208%2018'%2F%3E%3Cpath%20d%3D'M9%2013h4M31%2031h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'22'%20y%3D'165'%20width%3D'54.56'%20height%3D'54.56'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M8%209h28v11H8ZM8%2024h28v11H8Z'%2F%3E%3Ccircle%20cx%3D'14'%20cy%3D'14'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'14'%20cy%3D'29'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'24'%20y%3D'-2'%20width%3D'66.88'%20height%3D'33.44'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-35%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3Ei%26%23947%3B%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'6'%3E%26%23956%3B%3C%2Ftspan%3E%26%238706%3B%3Ctspan%20baseline-shift%3D'sub'%20font-size%3D'6'%3E%26%23956%3B%3C%2Ftspan%3E%26%23968%3B%3Dm%26%23968%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'24'%20y%3D'113'%20width%3D'59.84'%20height%3D'29.92'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-5%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'10'%20font-weight%3D'300'%3Ey%3D%26%23963%3B(Wx%2Bb)%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'33'%20y%3D'5'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'35'%20y%3D'91'%20width%3D'35.2'%20height%3D'35.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M10%2014h26M16%2014v20M30%2014v15c0%204%203%206%207%204'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'36'%20y%3D'232'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M7%2022c8-10%2017%2010%2025%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'42'%20y%3D'58'%20width%3D'10.559999999999999'%20height%3D'10.559999999999999'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'43'%20y%3D'146'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Ccircle%20cx%3D'18'%20cy%3D'18'%20r%3D'10'%2F%3E%3Cpath%20d%3D'M25%2025l11%2011M14%2018h8M14%2023h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'43'%20y%3D'219'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M14%2016h16v15a8%208%200%200%201-16%200Z'%2F%3E%3Cpath%20d%3D'M18%2016v-4h8v4M9%2022h5M30%2022h5M9%2030h5M30%2030h5M13%2011l-5-5M31%2011l5-5'%2F%3E%3Ccircle%20cx%3D'18'%20cy%3D'24'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'26'%20cy%3D'24'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'48'%20y%3D'48'%20width%3D'46.2'%20height%3D'46.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M8%2011h26a8%208%200%200%201%208%208v12a8%208%200%200%201-8%208H8a8%208%200%200%201-8-8V19a8%208%200%200%201%208-8Z'%2F%3E%3Cpath%20d%3D'M14%208V4M30%208V4'%2F%3E%3Cpath%20d%3D'M11%2030h20'%2F%3E%3Ccircle%20cx%3D'15'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3Ccircle%20cx%3D'27'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'52'%20y%3D'227'%20width%3D'27.28'%20height%3D'27.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c3%200%204-19%209-19%206%200%207%2017%2017%2017'%2F%3E%3Cpath%20d%3D'M19%2015v19'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'57'%20y%3D'132'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(14%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h10v8H6ZM28%2012h10v8H28ZM17%2026h10v8H17Z'%2F%3E%3Cpath%20d%3D'M16%2016h12M22%2020v6'%2F%3E%3Ccircle%20cx%3D'16'%20cy%3D'16'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'28'%20cy%3D'16'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'26'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'67'%20y%3D'90'%20width%3D'24.64'%20height%3D'24.64'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M28%206c-8%200-8%208-8%2017s-1%2017-9%2017M19%207h9M10%2039h9'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'69'%20y%3D'151'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-14%2022%2022)'%3E%3Cpath%20d%3D'M29%208c-8-2-12%202-13%2010l-3%2017M8%2019h19M26%2025l6%207M32%2025l-6%207'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'73'%20y%3D'112'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2022%2022)'%3E%3Cpath%20d%3D'M6%2022c0-5%204-9%209-9%204%200%207%203%2010%209%203%206%206%209%2010%209%205%200%209-4%209-9s-4-9-9-9c-4%200-7%203-10%209-3%206-6%209-10%209-5%200-9-4-9-9Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'74'%20y%3D'12'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Cpath%20d%3D'M12%2018h22M12%2026h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'75'%20y%3D'191'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M8%205l25%2013-17%206-7%2017L8%205Z'%2F%3E%3Cpath%20d%3D'M18%2025l12%2012'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'76'%20y%3D'144'%20width%3D'36.08'%20height%3D'36.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2031c7%200%2010-2%2014-9%204-7%207-9%2014-9'%2F%3E%3Cpath%20d%3D'M11%2031h5M30%2013h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'77'%20y%3D'31'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-17%2022%2022)'%3E%3Cpath%20d%3D'M13%2031h20a7%207%200%200%200%201-14%2010%2010%200%200%200-19-3%208%208%200%200%200-2%2017Z'%2F%3E%3Cpath%20d%3D'M22%2018v11M18%2025l4%204%204-4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'78'%20y%3D'216'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h32v24H6Z'%2F%3E%3Cpath%20d%3D'M12%2019h3M20%2019h3M28%2019h3M12%2027h3M20%2027h12M12%2034h20'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'82'%20y%3D'175'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edy%3C%2Ftext%3E%3Cpath%20d%3D'M8%2023h28'%2F%3E%3Ctext%20x%3D'22'%20y%3D'38'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edx%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'84'%20y%3D'229'%20width%3D'10.559999999999999'%20height%3D'10.559999999999999'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'93'%20y%3D'83'%20width%3D'44.88'%20height%3D'44.88'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-14%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'3'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%20transform%3D'rotate(60%2022%2022)'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%20transform%3D'rotate(-60%2022%2022)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'94'%20y%3D'232'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c3%200%204-19%209-19%206%200%207%2017%2017%2017'%2F%3E%3Cpath%20d%3D'M19%2015v19'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'95'%20y%3D'127'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M7%207h30v30H7ZM7%2017h30M7%2027h30M17%207v30M27%207v30'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'96'%20y%3D'5'%20width%3D'41.8'%20height%3D'41.8'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M8%208h26a7%207%200%200%201%207%207v13a7%207%200%200%201-7%207h-8l-8%207v-7H8a7%207%200%200%201-7-7V15a7%207%200%200%201%207-7Z'%2F%3E%3Cpath%20d%3D'M11%2019h18M11%2027h11'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'100'%20y%3D'49'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(27%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c3%200%204-19%209-19%206%200%207%2017%2017%2017'%2F%3E%3Cpath%20d%3D'M19%2015v19'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'101'%20y%3D'201'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M11%2032V17h22v15'%2F%3E%3Cpath%20d%3D'M11%2017h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'104'%20y%3D'172'%20width%3D'31.68'%20height%3D'31.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h30v20H6Z'%2F%3E%3Cpath%20d%3D'M36%2018h5v8h-5'%2F%3E%3Cpath%20d%3D'M12%2022l12-6-4%205h12l-13%207%204-6Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'106'%20y%3D'195'%20width%3D'66.88'%20height%3D'33.44'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(3%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3Ei%26%23947%3B%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'6'%3E%26%23956%3B%3C%2Ftspan%3E%26%238706%3B%3Ctspan%20baseline-shift%3D'sub'%20font-size%3D'6'%3E%26%23956%3B%3C%2Ftspan%3E%26%23968%3B%3Dm%26%23968%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'112'%20y%3D'134'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-7%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'28'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'16'%20font-weight%3D'300'%3Etanh%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'114'%20y%3D'154'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(30%2022%2022)'%3E%3Cpath%20d%3D'M22%204l7%204v8l-7%204-7-4V8ZM11%2024l7%204v8l-7%204-7-4v-8ZM33%2024l7%204v8l-7%204-7-4v-8Z'%2F%3E%3Cpath%20d%3D'M19%2021l-3%205M25%2021l3%205M20%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'115'%20y%3D'229'%20width%3D'22.880000000000003'%20height%3D'22.880000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h32v20H6Z'%2F%3E%3Cpath%20d%3D'M11%2017h5v8h-5ZM20%2017h5v8h-5ZM29%2017h5v8h-5Z'%2F%3E%3Cpath%20d%3D'M10%208v4M16%208v4M22%208v4M28%208v4M34%208v4M10%2032v4M16%2032v4M22%2032v4M28%2032v4M34%2032v4'%2F%3E%3Cpath%20d%3D'M17%2032v3h10v-3'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'116'%20y%3D'68'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-18%2022%2022)'%3E%3Cpath%20d%3D'M31%206c-4-1-8%200-11%203-2%202-3%205-2%208L6%2029l5%205%2012-12c3%201%206%200%208-2%203-3%204-7%203-11l-6%206-4-4Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'118'%20y%3D'121'%20width%3D'19.36'%20height%3D'19.36'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-17%2022%2022)'%3E%3Cpath%20d%3D'M9%2020c8-8%2018-8%2026%200M14%2026c5-5%2011-5%2016%200M19%2032c2-2%204-2%206%200'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'125'%20y%3D'138'%20width%3D'38.72'%20height%3D'38.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M22%2013v18M13%2022h18'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'125'%20y%3D'166'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Ctext%20x%3D'18'%20y%3D'30'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'20'%20font-weight%3D'300'%3Ee%3C%2Ftext%3E%3Ctext%20x%3D'30'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'11'%20font-weight%3D'300'%3Ex%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'130'%20y%3D'165'%20width%3D'31.68'%20height%3D'31.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'132'%20y%3D'57'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M7%2022c8-10%2017%2010%2025%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'132'%20y%3D'115'%20width%3D'23.76'%20height%3D'23.76'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(14%2022%2022)'%3E%3Cpath%20d%3D'M15%2038V24h14v14'%2F%3E%3Cpath%20d%3D'M18%2024C11%2019%208%2014%208%208M21%2024C18%2017%2018%2012%2018%207M24%2024C26%2017%2026%2012%2026%207M27%2024C34%2019%2036%2014%2036%208'%2F%3E%3Ccircle%20cx%3D'8'%20cy%3D'8'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'18'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'26'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'36'%20cy%3D'8'%20r%3D'3'%2F%3E%3Cpath%20d%3D'M12%2034h20'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'133'%20y%3D'67'%20width%3D'36.96'%20height%3D'18.48'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(3%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3EL%3D-%26%23931%3By%20log(p)%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'134'%20y%3D'2'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2013c7%208%2011%2014%2025%2019'%2F%3E%3Cpath%20d%3D'M10%2013h4M31%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'141'%20y%3D'218'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-15%2022%2022)'%3E%3Cpath%20d%3D'M10%2014h26M16%2014v20M30%2014v15c0%204%203%206%207%204'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'142'%20y%3D'82'%20width%3D'36.08'%20height%3D'36.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30v26H7Z'%2F%3E%3Cpath%20d%3D'M7%2016h30M17%2016v19M27%2016v19M12%2012h2M18%2012h2M24%2012h2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'149'%20y%3D'-1'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Ccircle%20cx%3D'14'%20cy%3D'14'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'30'%20cy%3D'30'%20r%3D'4'%2F%3E%3Cpath%20d%3D'M33%2011L11%2033'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'150'%20y%3D'150'%20width%3D'47.52'%20height%3D'47.52'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-13%2022%2022)'%3E%3Cpath%20d%3D'M22%206l16%209v18l-16%209-16-9V15Z'%2F%3E%3Cpath%20d%3D'M6%2015l16%209%2016-9M22%2024v18'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'151'%20y%3D'23'%20width%3D'36.08'%20height%3D'36.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M14%209c-6%200-10%204-10%2010%200%203%201%205%203%207-1%205%203%209%208%209%203%200%205-1%207-3%202%202%204%203%207%203%205%200%209-4%208-9%202-2%203-4%203-7%200-6-4-10-10-10-3%200-6%201-8%203-2-2-5-3-8-3Z'%2F%3E%3Cpath%20d%3D'M22%2012v20M12%2017c4%200%207%202%2010%206M32%2017c-4%200-7%202-10%206M12%2027c4-1%207%200%2010%203M32%2027c-4-1-7%200-10%203'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'151'%20y%3D'125'%20width%3D'61.599999999999994'%20height%3D'30.799999999999997'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-5%2044%2022)'%3E%3Ctext%20x%3D'43'%20y%3D'25'%20text-anchor%3D'end'%20fill%3D'none'%20stroke-width%3D'0.46'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'7.5'%20font-weight%3D'300'%3Esoftmax%3D%3C%2Ftext%3E%3Ctext%20x%3D'55'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3Ee%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'6'%3Ex%3C%2Ftspan%3E%3C%2Ftext%3E%3Cpath%20d%3D'M44%2023h22'%2F%3E%3Ctext%20x%3D'55'%20y%3D'34'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%23931%3Be%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'5.5'%3Ex%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'151'%20y%3D'232'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(5%2022%2022)'%3E%3Cpath%20d%3D'M14%209c-6%200-10%204-10%2010%200%203%201%205%203%207-1%205%203%209%208%209%203%200%205-1%207-3%202%202%204%203%207%203%205%200%209-4%208-9%202-2%203-4%203-7%200-6-4-10-10-10-3%200-6%201-8%203-2-2-5-3-8-3Z'%2F%3E%3Cpath%20d%3D'M22%2012v20M12%2017c4%200%207%202%2010%206M32%2017c-4%200-7%202-10%206M12%2027c4-1%207%200%2010%203M32%2027c-4-1-7%200-10%203'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'158'%20y%3D'197'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2013c7%208%2011%2014%2025%2019'%2F%3E%3Cpath%20d%3D'M10%2013h4M31%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'159'%20y%3D'-15'%20width%3D'52.8'%20height%3D'52.8'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(16%2022%2022)'%3E%3Cpath%20d%3D'M22%2013v18M13%2022h18'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'163'%20y%3D'113'%20width%3D'15.84'%20height%3D'15.84'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'28'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'18'%20font-weight%3D'300'%3Esin%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'170'%20y%3D'67'%20width%3D'15.84'%20height%3D'15.84'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(14%2022%2022)'%3E%3Cpath%20d%3D'M15%2013l-7%207%207%207M27%2013l7%207-7%207M23%2010l-5%2020'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'176'%20y%3D'145'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(14%2022%2022)'%3E%3Cpath%20d%3D'M6%2022c0-5%204-9%209-9%204%200%207%203%2010%209%203%206%206%209%2010%209%205%200%209-4%209-9s-4-9-9-9c-4%200-7%203-10%209-3%206-6%209-10%209-5%200-9-4-9-9Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'176'%20y%3D'222'%20width%3D'31.68'%20height%3D'31.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2013c4%200%205%2018%2010%2018s6-18%2010-18%205%2018%208%2018'%2F%3E%3Cpath%20d%3D'M9%2013h4M31%2031h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'177'%20y%3D'53'%20width%3D'40.480000000000004'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2044%2022)'%3E%3Ctext%20x%3D'43'%20y%3D'25'%20text-anchor%3D'end'%20fill%3D'none'%20stroke-width%3D'0.46'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'7.5'%20font-weight%3D'300'%3Esoftmax%3D%3C%2Ftext%3E%3Ctext%20x%3D'55'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3Ee%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'6'%3Ex%3C%2Ftspan%3E%3C%2Ftext%3E%3Cpath%20d%3D'M44%2023h22'%2F%3E%3Ctext%20x%3D'55'%20y%3D'34'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%23931%3Be%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'5.5'%3Ex%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'187'%20y%3D'90'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'15'%2F%3E%3Cpath%20d%3D'M22%207v15h15'%2F%3E%3Cpath%20d%3D'M22%2022L12%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'190'%20y%3D'112'%20width%3D'22'%20height%3D'22'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h32v24H6Z'%2F%3E%3Cpath%20d%3D'M12%2019h3M20%2019h3M28%2019h3M12%2027h3M20%2027h12M12%2034h20'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'190'%20y%3D'207'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-14%2022%2022)'%3E%3Cpath%20d%3D'M15%2038V24h14v14'%2F%3E%3Cpath%20d%3D'M18%2024C11%2019%208%2014%208%208M21%2024C18%2017%2018%2012%2018%207M24%2024C26%2017%2026%2012%2026%207M27%2024C34%2019%2036%2014%2036%208'%2F%3E%3Ccircle%20cx%3D'8'%20cy%3D'8'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'18'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'26'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'36'%20cy%3D'8'%20r%3D'3'%2F%3E%3Cpath%20d%3D'M12%2034h20'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'194'%20y%3D'183'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'198'%20y%3D'56'%20width%3D'63.36'%20height%3D'31.68'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(4%2044%2022)'%3E%3Ctext%20x%3D'39'%20y%3D'25'%20text-anchor%3D'end'%20fill%3D'none'%20stroke-width%3D'0.46'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'7.5'%20font-weight%3D'300'%3Eattn%3D%3C%2Ftext%3E%3Ctext%20x%3D'52'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8.5'%20font-weight%3D'300'%3EQK%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'5.5'%3ET%3C%2Ftspan%3E%3C%2Ftext%3E%3Cpath%20d%3D'M41%2023h22'%2F%3E%3Ctext%20x%3D'52'%20y%3D'34'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.48'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%238730%3Bd%3C%2Ftext%3E%3Ctext%20x%3D'66'%20y%3D'25'%20text-anchor%3D'start'%20fill%3D'none'%20stroke-width%3D'0.46'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8.5'%20font-weight%3D'300'%3EV%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'202'%20y%3D'100'%20width%3D'30.799999999999997'%20height%3D'30.799999999999997'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-30%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'202'%20y%3D'221'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M11%2032V17h22v15'%2F%3E%3Cpath%20d%3D'M11%2017h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'203'%20y%3D'5'%20width%3D'55.44'%20height%3D'55.44'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-7%2022%2022)'%3E%3Cpath%20d%3D'M8%209h28v20H8Z'%2F%3E%3Cpath%20d%3D'M4%2035h36M15%2029h14'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'204'%20y%3D'71'%20width%3D'39.6'%20height%3D'39.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2013c7%208%2011%2014%2025%2019'%2F%3E%3Cpath%20d%3D'M10%2013h4M31%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'204'%20y%3D'157'%20width%3D'11.440000000000001'%20height%3D'11.440000000000001'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M7%2022c8-10%2017%2010%2025%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'212'%20y%3D'140'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(21%2022%2022)'%3E%3Cpath%20d%3D'M13%2031h20a7%207%200%200%200%201-14%2010%2010%200%200%200-19-3%208%208%200%200%200-2%2017Z'%2F%3E%3Cpath%20d%3D'M22%2018v11M18%2025l4%204%204-4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'218'%20y%3D'170'%20width%3D'41.36'%20height%3D'41.36'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Cpath%20d%3D'M5%2010h13c3%200%204%202%204%204%200-2%201-4%204-4h13v26H27c-3%200-5%202-5%204-1-2-2-4-5-4H5Z'%2F%3E%3Cpath%20d%3D'M22%2014v26'%2F%3E%3Cpath%20d%3D'M10%2017h8M10%2023h8M10%2029h8M26%2017h8M26%2023h8M26%2029h8'%2F%3E%3Cpath%20d%3D'M5%2014H2v26h15c3%200%204%201%205%203%201-2%202-3%205-3h15V14h-3'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'218'%20y%3D'230'%20width%3D'19.36'%20height%3D'19.36'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(5%2022%2022)'%3E%3Cpath%20d%3D'M5%208h32v25H5Z'%2F%3E%3Cpath%20d%3D'M11%2017l6%204-6%205M21%2027h10'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'222'%20y%3D'158'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(18%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edy%3C%2Ftext%3E%3Cpath%20d%3D'M8%2023h28'%2F%3E%3Ctext%20x%3D'22'%20y%3D'38'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edx%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'224'%20y%3D'128'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(18%2022%2022)'%3E%3Cg%20transform%3D'translate(2%202)%20scale(1.6667)'%3E%3Cpath%20d%3D'M10.3%204.3c.4-1.7%203-1.7%203.4%200%20.3%201.1%201.6%201.7%202.6%201.1%201.5-.9%203.3.8%202.4%202.4-.6%201%200%202.3%201.1%202.6%201.7.4%201.7%203%200%203.4-1.1.3-1.7%201.6-1.1%202.6.9%201.5-.8%203.3-2.4%202.4-1-.6-2.3%200-2.6%201.1-.4%201.7-3%201.7-3.4%200-.3-1.1-1.6-1.7-2.6-1.1-1.5.9-3.3-.8-2.4-2.4.6-1%200-2.3-1.1-2.6-1.7-.4-1.7-3%200-3.4%201.1-.3%201.7-1.6%201.1-2.6-.9-1.5.8-3.3%202.4-2.4%201%20.6%202.3%200%202.6-1.1Z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'229'%20y%3D'116'%20width%3D'30.799999999999997'%20height%3D'30.799999999999997'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'230'%20y%3D'215'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30L25%2023v11l-6%203V23Z'%2F%3E%3Cpath%20d%3D'M14%2014h16'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'238'%20y%3D'101'%20width%3D'27.28'%20height%3D'27.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M10%2010h10c0-5%208-5%208%200h8v9c5%200%205%208%200%208v9h-9c0-5-8-5-8%200h-9v-9c5%200%205-8%200-8Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'244'%20y%3D'151'%20width%3D'10.559999999999999'%20height%3D'10.559999999999999'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M31%208H10l10%2012-10%2012h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'249'%20y%3D'121'%20width%3D'29.040000000000003'%20height%3D'29.040000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M14%2016h16v15a8%208%200%200%201-16%200Z'%2F%3E%3Cpath%20d%3D'M18%2016v-4h8v4M9%2022h5M30%2022h5M9%2030h5M30%2030h5M13%2011l-5-5M31%2011l5-5'%2F%3E%3Ccircle%20cx%3D'18'%20cy%3D'24'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'26'%20cy%3D'24'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'250'%20y%3D'55'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'251'%20y%3D'221'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M28%206c-8%200-8%208-8%2017s-1%2017-9%2017M19%207h9M10%2039h9'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'254'%20y%3D'4'%20width%3D'21.119999999999997'%20height%3D'21.119999999999997'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M31%208H10l10%2012-10%2012h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'256'%20y%3D'149'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-14%2022%2022)'%3E%3Cpath%20d%3D'M29%208c-8-2-12%202-13%2010l-3%2017M8%2019h19M26%2025l6%207M32%2025l-6%207'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'258'%20y%3D'49'%20width%3D'8.8'%20height%3D'8.8'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'15'%2F%3E%3Cpath%20d%3D'M22%207v15h15'%2F%3E%3Cpath%20d%3D'M22%2022L12%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'258'%20y%3D'192'%20width%3D'102.96000000000001'%20height%3D'34.32'%20viewBox%3D'0%200%20132%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-2%2066%2022)'%3E%3Ctext%20x%3D'6'%20y%3D'26'%20text-anchor%3D'start'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8.5'%20font-weight%3D'300'%3Ei%26%238463%3B%3C%2Ftext%3E%3Ctext%20x%3D'30'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%238706%3B%26%23968%3B%3C%2Ftext%3E%3Cpath%20d%3D'M20%2023h20'%2F%3E%3Ctext%20x%3D'30'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%238706%3Bt%3C%2Ftext%3E%3Ctext%20x%3D'48'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3E%3D-%3C%2Ftext%3E%3Ctext%20x%3D'66'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E%26%238463%3B%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'5.5'%3E2%3C%2Ftspan%3E%3C%2Ftext%3E%3Cpath%20d%3D'M56%2023h20'%2F%3E%3Ctext%20x%3D'66'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8'%20font-weight%3D'300'%3E2m%3C%2Ftext%3E%3Ctext%20x%3D'81'%20y%3D'26'%20text-anchor%3D'start'%20fill%3D'none'%20stroke-width%3D'0.44'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'8.5'%20font-weight%3D'300'%3E%26%238711%3B%3Ctspan%20baseline-shift%3D'super'%20font-size%3D'5.5'%3E2%3C%2Ftspan%3E%26%23968%3B%2BV%26%23968%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'262'%20y%3D'95'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-21%2022%2022)'%3E%3Ccircle%20cx%3D'18'%20cy%3D'18'%20r%3D'10'%2F%3E%3Cpath%20d%3D'M25%2025l11%2011M14%2018h8M14%2023h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'264'%20y%3D'60'%20width%3D'31.68'%20height%3D'31.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M11%2032V17h22v15'%2F%3E%3Cpath%20d%3D'M11%2017h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'268'%20y%3D'29'%20width%3D'8.8'%20height%3D'8.8'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M5%2010h13c3%200%204%202%204%204%200-2%201-4%204-4h13v26H27c-3%200-5%202-5%204-1-2-2-4-5-4H5Z'%2F%3E%3Cpath%20d%3D'M22%2014v26'%2F%3E%3Cpath%20d%3D'M10%2017h8M10%2023h8M10%2029h8M26%2017h8M26%2023h8M26%2029h8'%2F%3E%3Cpath%20d%3D'M5%2014H2v26h15c3%200%204%201%205%203%201-2%202-3%205-3h15V14h-3'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'268'%20y%3D'238'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Cpath%20d%3D'M9%205h18l8%208v23H9Z'%2F%3E%3Cpath%20d%3D'M27%205v9h8M15%2021h14M15%2029h10'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'270'%20y%3D'160'%20width%3D'22'%20height%3D'22'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M8%209h28v20H8Z'%2F%3E%3Cpath%20d%3D'M4%2035h36M15%2029h14'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'278'%20y%3D'12'%20width%3D'51.919999999999995'%20height%3D'51.919999999999995'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M11%2011h22v22H11Z'%2F%3E%3Cpath%20d%3D'M16%206v5M22%206v5M28%206v5M16%2033v5M22%2033v5M28%2033v5M6%2016h5M6%2022h5M6%2028h5M33%2016h5M33%2022h5M33%2028h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'278'%20y%3D'116'%20width%3D'32.56'%20height%3D'32.56'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2022%2022)'%3E%3Cpath%20d%3D'M12%2018h22M12%2026h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'278'%20y%3D'180'%20width%3D'25.08'%20height%3D'25.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M22%2013v18M13%2022h18'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'280'%20y%3D'-4'%20width%3D'27.28'%20height%3D'27.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Ctext%20x%3D'18'%20y%3D'30'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'20'%20font-weight%3D'300'%3Ee%3C%2Ftext%3E%3Ctext%20x%3D'30'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'11'%20font-weight%3D'300'%3Ex%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'286'%20y%3D'138'%20width%3D'23.76'%20height%3D'23.76'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2013c4%200%205%2018%2010%2018s6-18%2010-18%205%2018%208%2018'%2F%3E%3Cpath%20d%3D'M9%2013h4M31%2031h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'288'%20y%3D'78'%20width%3D'49.28'%20height%3D'49.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Cellipse%20cx%3D'22'%20cy%3D'11'%20rx%3D'15'%20ry%3D'6'%2F%3E%3Cpath%20d%3D'M7%2011v20c0%203%207%206%2015%206s15-3%2015-6V11M7%2021c0%203%207%206%2015%206s15-3%2015-6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'296'%20y%3D'158'%20width%3D'32.56'%20height%3D'32.56'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M22%204l7%204v8l-7%204-7-4V8ZM11%2024l7%204v8l-7%204-7-4v-8ZM33%2024l7%204v8l-7%204-7-4v-8Z'%2F%3E%3Cpath%20d%3D'M19%2021l-3%205M25%2021l3%205M20%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'300'%20y%3D'62'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M9%2034c4%200%205-13%2010-13s5%2013%208%2013c2%200%203-11%207-11%203%200%203%2011%204%2011'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'306'%20y%3D'218'%20width%3D'27.28'%20height%3D'27.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-7%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c5%200%206-20%2012-20s7%2020%2012%2020'%2F%3E%3Cpath%20d%3D'M22%2014v21'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'317'%20y%3D'119'%20width%3D'24.64'%20height%3D'24.64'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M8%2033V11M8%2033h29M14%2027l7-8%206%205%208-12'%2F%3E%3Ccircle%20cx%3D'21'%20cy%3D'19'%20r%3D'2'%2F%3E%3Ccircle%20cx%3D'27'%20cy%3D'24'%20r%3D'2'%2F%3E%3Ccircle%20cx%3D'35'%20cy%3D'12'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'318'%20y%3D'-2'%20width%3D'35.2'%20height%3D'35.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'319'%20y%3D'154'%20width%3D'9.68'%20height%3D'9.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Cpath%20d%3D'M17%208h-7v24h7M27%208h7v24h-7'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'325'%20y%3D'35'%20width%3D'35.2'%20height%3D'35.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M15%2013l-7%207%207%207M27%2013l7%207-7%207M23%2010l-5%2020'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'333'%20y%3D'220'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M11%2011h22v22H11Z'%2F%3E%3Cpath%20d%3D'M16%206v5M22%206v5M28%206v5M16%2033v5M22%2033v5M28%2033v5M6%2016h5M6%2022h5M6%2028h5M33%2016h5M33%2022h5M33%2028h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'335'%20y%3D'65'%20width%3D'29.92'%20height%3D'29.92'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h32v20H6Z'%2F%3E%3Cpath%20d%3D'M11%2017h5v8h-5ZM20%2017h5v8h-5ZM29%2017h5v8h-5Z'%2F%3E%3Cpath%20d%3D'M10%208v4M16%208v4M22%208v4M28%208v4M34%208v4M10%2032v4M16%2032v4M22%2032v4M28%2032v4M34%2032v4'%2F%3E%3Cpath%20d%3D'M17%2032v3h10v-3'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'335'%20y%3D'153'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h30v20H6Z'%2F%3E%3Cpath%20d%3D'M36%2018h5v8h-5'%2F%3E%3Cpath%20d%3D'M12%2022l12-6-4%205h12l-13%207%204-6Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'335'%20y%3D'202'%20width%3D'9.68'%20height%3D'9.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'336'%20y%3D'185'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M15%2038V24h14v14'%2F%3E%3Cpath%20d%3D'M18%2024C11%2019%208%2014%208%208M21%2024C18%2017%2018%2012%2018%207M24%2024C26%2017%2026%2012%2026%207M27%2024C34%2019%2036%2014%2036%208'%2F%3E%3Ccircle%20cx%3D'8'%20cy%3D'8'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'18'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'26'%20cy%3D'7'%20r%3D'3'%2F%3E%3Ccircle%20cx%3D'36'%20cy%3D'8'%20r%3D'3'%2F%3E%3Cpath%20d%3D'M12%2034h20'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'342'%20y%3D'232'%20width%3D'22.880000000000003'%20height%3D'22.880000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-11%2022%2022)'%3E%3Cpath%20d%3D'M9%2020c8-8%2018-8%2026%200M14%2026c5-5%2011-5%2016%200M19%2032c2-2%204-2%206%200'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'348'%20y%3D'136'%20width%3D'19.36'%20height%3D'19.36'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'3'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%20transform%3D'rotate(60%2022%2022)'%2F%3E%3Cellipse%20cx%3D'22'%20cy%3D'22'%20rx%3D'16'%20ry%3D'6'%20transform%3D'rotate(-60%2022%2022)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'348'%20y%3D'150'%20width%3D'9.68'%20height%3D'9.68'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'350'%20y%3D'18'%20width%3D'33.44'%20height%3D'33.44'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'32'%20cy%3D'20'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'32'%20r%3D'4'%2F%3E%3Cpath%20d%3D'M16%2012c8%200%208%208%2012%208M16%2032c8%200%208-12%2012-12'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'352'%20y%3D'86'%20width%3D'43.12'%20height%3D'43.12'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M5%208h32v25H5Z'%2F%3E%3Cpath%20d%3D'M11%2017l6%204-6%205M21%2027h10'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'355'%20y%3D'172'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M8%2011h26a8%208%200%200%201%208%208v12a8%208%200%200%201-8%208H8a8%208%200%200%201-8-8V19a8%208%200%200%201%208-8Z'%2F%3E%3Cpath%20d%3D'M14%208V4M30%208V4'%2F%3E%3Cpath%20d%3D'M11%2030h20'%2F%3E%3Ccircle%20cx%3D'15'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3Ccircle%20cx%3D'27'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'360'%20y%3D'160'%20width%3D'54.56'%20height%3D'54.56'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(16%2022%2022)'%3E%3Cpath%20d%3D'M16%207h16M20%207v10L11%2034a4%204%200%200%200%204%206h18a4%204%200%200%200%204-6l-9-17V7M17%2028h14'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'360'%20y%3D'206'%20width%3D'105.6'%20height%3D'52.8'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-4%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3EL%3D-%26%23931%3By%20log(p)%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'362'%20y%3D'55'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-7%2022%2022)'%3E%3Cpath%20d%3D'M8%2011h26a8%208%200%200%201%208%208v12a8%208%200%200%201-8%208H8a8%208%200%200%201-8-8V19a8%208%200%200%201%208-8Z'%2F%3E%3Cpath%20d%3D'M14%208V4M30%208V4'%2F%3E%3Cpath%20d%3D'M11%2030h20'%2F%3E%3Ccircle%20cx%3D'15'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3Ccircle%20cx%3D'27'%20cy%3D'23'%20r%3D'2.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'364'%20y%3D'217'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30v26H7Z'%2F%3E%3Cpath%20d%3D'M7%2016h30M17%2016v19M27%2016v19M12%2012h2M18%2012h2M24%2012h2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'370'%20y%3D'-4'%20width%3D'26.4'%20height%3D'26.4'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M31%206c-4-1-8%200-11%203-2%202-3%205-2%208L6%2029l5%205%2012-12c3%201%206%200%208-2%203-3%204-7%203-11l-6%206-4-4Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'372'%20y%3D'237'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M11%2032V17h22v15'%2F%3E%3Cpath%20d%3D'M11%2017h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'374'%20y%3D'125'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(120%2022%2022)'%3E%3Cpath%20d%3D'M22%206L29%2015V28L33%2036L26%2030H18L11%2036L15%2028V15Z'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'21'%20r%3D'3'%2F%3E%3Cpath%20d%3D'M19%2034l3%204M25%2034l-3%204M22%2030v4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'377'%20y%3D'71'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M9%2020c8-8%2018-8%2026%200M14%2026c5-5%2011-5%2016%200M19%2032c2-2%204-2%206%200'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'377'%20y%3D'81'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-5%2022%2022)'%3E%3Cpath%20d%3D'M12%2018h22M12%2026h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'379'%20y%3D'61'%20width%3D'54.56'%20height%3D'27.28'%20viewBox%3D'0%200%2088%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-6%2044%2022)'%3E%3Ctext%20x%3D'44'%20y%3D'26'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'9'%20font-weight%3D'300'%3EL%3D-%26%23931%3By%20log(p)%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'381'%20y%3D'147'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c3%200%204-19%209-19%206%200%207%2017%2017%2017'%2F%3E%3Cpath%20d%3D'M19%2015v19'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'383'%20y%3D'59'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cg%20transform%3D'translate(2%202)%20scale(1.6667)'%3E%3Cpath%20d%3D'M10.3%204.3c.4-1.7%203-1.7%203.4%200%20.3%201.1%201.6%201.7%202.6%201.1%201.5-.9%203.3.8%202.4%202.4-.6%201%200%202.3%201.1%202.6%201.7.4%201.7%203%200%203.4-1.1.3-1.7%201.6-1.1%202.6.9%201.5-.8%203.3-2.4%202.4-1-.6-2.3%200-2.6%201.1-.4%201.7-3%201.7-3.4%200-.3-1.1-1.6-1.7-2.6-1.1-1.5.9-3.3-.8-2.4-2.4.6-1%200-2.3-1.1-2.6-1.7-.4-1.7-3%200-3.4%201.1-.3%201.7-1.6%201.1-2.6-.9-1.5.8-3.3%202.4-2.4%201%20.6%202.3%200%202.6-1.1Z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'384'%20y%3D'37'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2013c7%208%2011%2014%2025%2019'%2F%3E%3Cpath%20d%3D'M10%2013h4M31%2032h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'390'%20y%3D'228'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M7%2022c8-10%2017%2010%2025%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'391'%20y%3D'105'%20width%3D'19.36'%20height%3D'19.36'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'35'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.65'%20font-family%3D'Georgia%2CTimes%20New%20Roman%2Cserif'%20font-size%3D'34'%20font-weight%3D'400'%3E%26%23955%3B%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'391'%20y%3D'126'%20width%3D'22.880000000000003'%20height%3D'22.880000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'15'%2F%3E%3Cpath%20d%3D'M7%2022h30M22%207c6%208%206%2022%200%2030M22%207c-6%208-6%2022%200%2030M11%2013c6%203%2016%203%2022%200M11%2031c6-3%2016-3%2022%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'399'%20y%3D'159'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'15'%2F%3E%3Cpath%20d%3D'M22%207v15h15'%2F%3E%3Cpath%20d%3D'M22%2022L12%2034'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'401'%20y%3D'86'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2013c4%200%205%2018%2010%2018s6-18%2010-18%205%2018%208%2018'%2F%3E%3Cpath%20d%3D'M9%2013h4M31%2031h4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'402'%20y%3D'21'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Cpath%20d%3D'M28%206c-8%200-8%208-8%2017s-1%2017-9%2017M19%207h9M10%2039h9'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'402'%20y%3D'135'%20width%3D'52.8'%20height%3D'52.8'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-29%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'28'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'18'%20font-weight%3D'300'%3Esin%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'405'%20y%3D'2'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Cpath%20d%3D'M17%208h-7v24h7M27%208h7v24h-7'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'406'%20y%3D'172'%20width%3D'39.6'%20height%3D'39.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-16%2022%2022)'%3E%3Cpath%20d%3D'M8%2014h28M8%2024h28M8%2034h28'%2F%3E%3Ccircle%20cx%3D'17'%20cy%3D'14'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'28'%20cy%3D'24'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'21'%20cy%3D'34'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'410'%20y%3D'23'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(9%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edy%3C%2Ftext%3E%3Cpath%20d%3D'M8%2023h28'%2F%3E%3Ctext%20x%3D'22'%20y%3D'38'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edx%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'410'%20y%3D'87'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Ctext%20x%3D'18'%20y%3D'30'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'20'%20font-weight%3D'300'%3Ee%3C%2Ftext%3E%3Ctext%20x%3D'30'%20y%3D'18'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'11'%20font-weight%3D'300'%3Ex%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'410'%20y%3D'94'%20width%3D'45.760000000000005'%20height%3D'45.760000000000005'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M9%2012h12c8%200%2014%204%2014%2010s-6%2010-14%2010H9Z'%2F%3E%3Cpath%20d%3D'M3%2017h6M3%2027h6M35%2022h6'%2F%3E%3Ccircle%20cx%3D'15'%20cy%3D'17'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'15'%20cy%3D'27'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'411'%20y%3D'48'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(6%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'28'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'16'%20font-weight%3D'300'%3Etanh%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'419'%20y%3D'132'%20width%3D'17.6'%20height%3D'17.6'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M9%2034c4%200%205-13%2010-13s5%2013%208%2013c2%200%203-11%207-11%203%200%203%2011%204%2011'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'423'%20y%3D'7'%20width%3D'56.32'%20height%3D'56.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(7%2022%2022)'%3E%3Cpath%20d%3D'M12%2010h20a6%206%200%200%201%206%206v14a6%206%200%200%201-6%206H12a6%206%200%200%201-6-6V16a6%206%200%200%201%206-6Z'%2F%3E%3Ccircle%20cx%3D'16'%20cy%3D'20'%20r%3D'2.5'%2F%3E%3Ccircle%20cx%3D'28'%20cy%3D'20'%20r%3D'2.5'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'29'%20r%3D'2.5'%2F%3E%3Cpath%20d%3D'M18%2021l3%206M26%2021l-3%206'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'428'%20y%3D'68'%20width%3D'20.240000000000002'%20height%3D'20.240000000000002'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-6%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30v26H7Z'%2F%3E%3Cpath%20d%3D'M7%2016h30M17%2016v19M27%2016v19M12%2012h2M18%2012h2M24%2012h2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'435'%20y%3D'-2'%20width%3D'11.440000000000001'%20height%3D'11.440000000000001'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(2%2022%2022)'%3E%3Cpath%20d%3D'M7%207h30v30H7ZM7%2017h30M7%2027h30M17%207v30M27%207v30'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'438'%20y%3D'238'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(8%2022%2022)'%3E%3Cpath%20d%3D'M6%2022c0-5%204-9%209-9%204%200%207%203%2010%209%203%206%206%209%2010%209%205%200%209-4%209-9s-4-9-9-9c-4%200-7%203-10%209-3%206-6%209-10%209-5%200-9-4-9-9Z'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'444'%20y%3D'122'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Ccircle%20cx%3D'14'%20cy%3D'14'%20r%3D'4'%2F%3E%3Ccircle%20cx%3D'30'%20cy%3D'30'%20r%3D'4'%2F%3E%3Cpath%20d%3D'M33%2011L11%2033'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'444'%20y%3D'151'%20width%3D'18.48'%20height%3D'18.48'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M10%2034c5%200%206-20%2012-20s7%2020%2012%2020'%2F%3E%3Cpath%20d%3D'M22%2014v21'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'447'%20y%3D'178'%20width%3D'48.400000000000006'%20height%3D'48.400000000000006'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-21%2022%2022)'%3E%3Cpath%20d%3D'M7%2022h30M22%207v30'%2F%3E%3Cpath%20d%3D'M8%2031c7%200%2010-2%2014-9%204-7%207-9%2014-9'%2F%3E%3Cpath%20d%3D'M11%2031h5M30%2013h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'449'%20y%3D'84'%20width%3D'14.08'%20height%3D'14.08'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-10%2022%2022)'%3E%3Cpath%20d%3D'M17%208h-7v24h7M27%208h7v24h-7'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'457'%20y%3D'58'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M9%2020c8-8%2018-8%2026%200M14%2026c5-5%2011-5%2016%200M19%2032c2-2%204-2%206%200'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'458'%20y%3D'125'%20width%3D'16.72'%20height%3D'16.72'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(16%2022%2022)'%3E%3Cpath%20d%3D'M13%2031h20a7%207%200%200%200%201-14%2010%2010%200%200%200-19-3%208%208%200%200%200-2%2017Z'%2F%3E%3Cpath%20d%3D'M22%2018v11M18%2025l4%204%204-4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'458'%20y%3D'143'%20width%3D'29.040000000000003'%20height%3D'29.040000000000003'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Cpath%20d%3D'M8%2033V11M8%2033h29M14%2027l7-8%206%205%208-12'%2F%3E%3Ccircle%20cx%3D'21'%20cy%3D'19'%20r%3D'2'%2F%3E%3Ccircle%20cx%3D'27'%20cy%3D'24'%20r%3D'2'%2F%3E%3Ccircle%20cx%3D'35'%20cy%3D'12'%20r%3D'2'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'459'%20y%3D'222'%20width%3D'30.799999999999997'%20height%3D'30.799999999999997'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Cpath%20d%3D'M29%208c-8-2-12%202-13%2010l-3%2017M8%2019h19M26%2025l6%207M32%2025l-6%207'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'464'%20y%3D'78'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-16%2022%2022)'%3E%3Cpath%20d%3D'M22%2013v18M13%2022h18'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'465'%20y%3D'0'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-12%2022%2022)'%3E%3Cpath%20d%3D'M8%208h26a7%207%200%200%201%207%207v13a7%207%200%200%201-7%207h-8l-8%207v-7H8a7%207%200%200%201-7-7V15a7%207%200%200%201%207-7Z'%2F%3E%3Cpath%20d%3D'M11%2019h18M11%2027h11'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'468'%20y%3D'168'%20width%3D'15.84'%20height%3D'15.84'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-13%2022%2022)'%3E%3Ccircle%20cx%3D'18'%20cy%3D'18'%20r%3D'10'%2F%3E%3Cpath%20d%3D'M25%2025l11%2011M14%2018h8M14%2023h5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'471'%20y%3D'114'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M31%208H10l10%2012-10%2012h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'473'%20y%3D'38'%20width%3D'24.64'%20height%3D'24.64'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-9%2022%2022)'%3E%3Cpath%20d%3D'M6%2012h10v8H6ZM28%2012h10v8H28ZM17%2026h10v8H17Z'%2F%3E%3Cpath%20d%3D'M16%2016h12M22%2020v6'%2F%3E%3Ccircle%20cx%3D'16'%20cy%3D'16'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'28'%20cy%3D'16'%20r%3D'1.5'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'26'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'475'%20y%3D'85'%20width%3D'34.32'%20height%3D'34.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-18%2022%2022)'%3E%3Cpath%20d%3D'M7%2035V9M7%2035h30'%2F%3E%3Cpath%20d%3D'M9%2034c4%200%205-13%2010-13s5%2013%208%2013c2%200%203-11%207-11%203%200%203%2011%204%2011'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'479'%20y%3D'59'%20width%3D'34.32'%20height%3D'34.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-18%2022%2022)'%3E%3Cpath%20d%3D'M8%205l25%2013-17%206-7%2017L8%205Z'%2F%3E%3Cpath%20d%3D'M18%2025l12%2012'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'482'%20y%3D'204'%20width%3D'27.28'%20height%3D'27.28'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M14%204h16a4%204%200%200%201%204%204v28a4%204%200%200%201-4%204H14a4%204%200%200%201-4-4V8a4%204%200%200%201%204-4Z'%2F%3E%3Cpath%20d%3D'M18%209h8M14%2032h16'%2F%3E%3Ccircle%20cx%3D'22'%20cy%3D'36'%20r%3D'1.5'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'486'%20y%3D'14'%20width%3D'23.76'%20height%3D'23.76'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(17%2022%2022)'%3E%3Cpath%20d%3D'M7%209h30L25%2023v11l-6%203V23Z'%2F%3E%3Cpath%20d%3D'M14%2014h16'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'490'%20y%3D'151'%20width%3D'15.84'%20height%3D'15.84'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2022%2022)'%3E%3Cpath%20d%3D'M8%205l25%2013-17%206-7%2017L8%205Z'%2F%3E%3Cpath%20d%3D'M18%2025l12%2012'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'498'%20y%3D'133'%20width%3D'11.440000000000001'%20height%3D'11.440000000000001'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%3E%3Ccircle%20cx%3D'22'%20cy%3D'22'%20r%3D'4'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'500'%20y%3D'34'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(12%2022%2022)'%3E%3Cpath%20d%3D'M29%208c-8-2-12%202-13%2010l-3%2017M8%2019h19M26%2025l6%207M32%2025l-6%207'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'500'%20y%3D'134'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(10%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'501'%20y%3D'193'%20width%3D'22'%20height%3D'22'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-8%2022%2022)'%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edy%3C%2Ftext%3E%3Cpath%20d%3D'M8%2023h28'%2F%3E%3Ctext%20x%3D'22'%20y%3D'38'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.55'%20font-family%3D'ui-sans-serif%2Csystem-ui%2Csans-serif'%20font-size%3D'12'%20font-weight%3D'300'%3Edx%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'502'%20y%3D'83'%20width%3D'13.2'%20height%3D'13.2'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(13%2022%2022)'%3E%3Cpath%20d%3D'M7%2022c8-10%2017%2010%2025%200'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'502'%20y%3D'184'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(15%2022%2022)'%3E%3Cpath%20d%3D'M12%2018h22M12%2026h22'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'506'%20y%3D'226'%20width%3D'12.32'%20height%3D'12.32'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(-18%2022%2022)'%3E%3Cpath%20d%3D'M12%208H8v28h4M32%208h4v28h-4'%2F%3E%3Ctext%20x%3D'22'%20y%3D'17'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E101%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'27'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E010%3C%2Ftext%3E%3Ctext%20x%3D'22'%20y%3D'37'%20text-anchor%3D'middle'%20fill%3D'none'%20stroke-width%3D'0.5'%20font-family%3D'ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size%3D'8.5'%20font-weight%3D'300'%3E111%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'508'%20y%3D'-2'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(16%2022%2022)'%3E%3Cpath%20d%3D'M10%2014h26M16%2014v20M30%2014v15c0%204%203%206%207%204'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3Csvg%20x%3D'509'%20y%3D'112'%20width%3D'14.96'%20height%3D'14.96'%20viewBox%3D'0%200%2044%2044'%20overflow%3D'visible'%3E%3Cg%20transform%3D'rotate(11%2022%2022)'%3E%3Cpath%20d%3D'M28%206c-8%200-8%208-8%2017s-1%2017-9%2017M19%207h9M10%2039h9'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3C%2Fg%3E%3Cg%20fill%3D'none'%20stroke%3D'%23000'%20stroke-opacity%3D'1'%20stroke-width%3D'1.3'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3C%2Fg%3E%3C%2Fsvg%3E\\\")\";\n","import type { SxProps, Theme } from \"@mui/material/styles\";\nimport {\n DOODLE_PATTERN_TILE_HEIGHT,\n DOODLE_PATTERN_TILE_WIDTH,\n} from \"./doodlePattern\";\nimport { DOODLE_PATTERN_MASK_URL } from \"./generated/doodlePatternMask\";\n\nexport const doodlePatternCssVars = {\n \"--doodlePatternColor\":\n \"color-mix(in lab, var(--mui-palette-text-subscript) 75%, transparent 25%)\",\n} as const;\n\n/** Scaled tile size for compact surfaces such as modals. */\nexport const DOODLE_PATTERN_MODAL_MASK_SCALE = 0.7;\n\nexport const DOODLE_PATTERN_MODAL_MASK_SIZE = `${Math.round(\n DOODLE_PATTERN_TILE_WIDTH * DOODLE_PATTERN_MODAL_MASK_SCALE\n)}px ${Math.round(DOODLE_PATTERN_TILE_HEIGHT * DOODLE_PATTERN_MODAL_MASK_SCALE)}px`;\n\nexport type DoodlePatternBackgroundOptions = {\n repeat?: \"repeat\" | \"no-repeat\";\n size?: string;\n position?: string;\n};\n\nexport const getDoodlePatternBackgroundSx = (\n options: DoodlePatternBackgroundOptions = {}\n): SxProps<Theme> => {\n const tileSize = `${DOODLE_PATTERN_TILE_WIDTH}px ${DOODLE_PATTERN_TILE_HEIGHT}px`;\n const repeat = options.repeat ?? \"repeat\";\n const position =\n options.position ?? (repeat === \"no-repeat\" ? \"center\" : \"top left\");\n\n return {\n ...doodlePatternCssVars,\n backgroundColor: \"var(--doodlePatternColor)\",\n maskImage: DOODLE_PATTERN_MASK_URL,\n WebkitMaskImage: DOODLE_PATTERN_MASK_URL,\n maskRepeat: repeat,\n WebkitMaskRepeat: repeat,\n maskSize: options.size ?? tileSize,\n WebkitMaskSize: options.size ?? tileSize,\n maskPosition: position,\n WebkitMaskPosition: position,\n };\n};\n\nexport const getDoodlePatternModalBackgroundSx = (): SxProps<Theme> =>\n getDoodlePatternBackgroundSx({ size: DOODLE_PATTERN_MODAL_MASK_SIZE });\n","import type { SxProps, Theme } from '@mui/material/styles'\nimport { doodlePatternCssVars } from '@/patterns/doodlePatternStyles'\n\nexport const MUI_MODAL_PAPER_RADIUS = '20px'\n\nexport const muiModalRootSx: SxProps<Theme> = {\n ...doodlePatternCssVars,\n '--closeIconColor': 'var(--mui-palette-error-main)',\n '--bgC': 'var(--mui-palette-background-default)',\n '--shadow': 'var(--shadow-outset-1)',\n '--modalOverlayBg': 'radial-gradient(ellipse 120% 100% at 50% 50%, var(--bgC) 0%, transparent 70%)',\n}\n\n/** Internal paper chrome. Pass as the first `sx` array item so host `slotProps.container.sx` merges instead of replacing `&.MuiPaper-root`. */\nexport const muiModalPaperSx: SxProps<Theme> = {\n '&.MuiPaper-root': {\n boxShadow: 'var(--shadow)',\n backgroundColor: 'var(--bgC)',\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n display: 'flex',\n flexDirection: 'column',\n maxHeight: 'var(--max-h)',\n maxWidth: 'var(--max-w)',\n padding: 0,\n paddingTop: 0,\n width: '-webkit-fill-available',\n height: '-webkit-fill-available',\n },\n}\n","import React from 'react';\nimport MuiLinearProgress, { LinearProgressProps as MuiLinearProgressProps } from '@mui/material/LinearProgress';\n\nexport type LinearProgressProps = MuiLinearProgressProps;\n\nexport const LinearProgress: React.FC<LinearProgressProps> = (props) => {\n return <MuiLinearProgress {...props} />;\n};\n","import React from 'react';\nimport MuiCircularProgress, { CircularProgressProps as MuiCircularProgressProps } from '@mui/material/CircularProgress';\n\nexport type CircularProgressProps = MuiCircularProgressProps;\n\nexport const CircularProgress: React.FC<CircularProgressProps> = (props) => {\n return <MuiCircularProgress {...props} />;\n};\n","import { ValueOf } from '../_types';\n\nexport const FILE_STATUSs = {\n // local status\n uploadingToLocal:\"local-uploading\",\n uploadedToLocal:\"local-uploaded\",\n localError:\"local-error\",\n\n \n pending:\"pending\",\n // upload s3\n uploadPending:'upload-pending',\n gettingSignedURL:'upload-gettingSignedURL',\n beginUploadToS3:'upload-beginUploadToS3',\n uploadedToCloud:'upload-uploadedToCloud',\n error:'upload-error',\n // download\n downloadPending:'download-pending',\n downloading:'download-in-progress',\n downloaded:'download-completed',\n downloadError:'download-error',\n} as const\n\nexport const FILE_TYPEs = {\n image:\"image\",\n video:\"video\",\n audio:\"audio\",\n pdf:\"pdf\",\n doc:\"doc\",\n xls:\"xls\",\n ppt:\"ppt\",\n txt:\"txt\",\n zip:\"zip\",\n json:\"json\",\n other:\"other\",\n} as const\n\nexport const MAX_FILE_NAME_LENGTH = 100\n\nexport type FileStatusType = ValueOf<typeof FILE_STATUSs>;\nexport type FileType = ValueOf<typeof FILE_TYPEs>;\n\nexport type Attachment = {\n url: string;\n keyPath: string;\n filename: string;\n fileType: string;\n hostname: string;\n}\n","// src/components/compound/DisplayFile/src/DisplayFile.tsx\nimport React from 'react';\nimport { Box } from '@/ele/Box';\nimport { Typography } from '@/ele/Typography';\nimport { IconButton } from '@/ele/Button';\nimport {\n CloseIcon,\n DescriptionIcon,\n PictureAsPdfIcon,\n ImageIcon,\n AudioFileIcon,\n VideoFileIcon,\n TableChartIcon,\n FolderZipIcon,\n DataObjectIcon,\n InsertDriveFileIcon,\n} from '@/icons/MuiIcon';\n\nimport PreviewableFile, { FILE_TYPEs } from '@/_utils/classes/PreviewableFile';\n\nexport interface DisplayFileProps {\n file: PreviewableFile;\n onDelete?: (file: PreviewableFile) => void;\n mode?: 'thumbnail' | 'name';\n}\n\nexport const getFileIcon = (fileType: string) => {\n switch (fileType) {\n case FILE_TYPEs.image: return ImageIcon;\n case FILE_TYPEs.pdf: return PictureAsPdfIcon;\n case FILE_TYPEs.audio: return AudioFileIcon;\n case FILE_TYPEs.video: return VideoFileIcon;\n case FILE_TYPEs.xls: return TableChartIcon;\n case FILE_TYPEs.zip: return FolderZipIcon;\n case FILE_TYPEs.json: return DataObjectIcon;\n\n case FILE_TYPEs.ppt:\n case FILE_TYPEs.doc: \n case FILE_TYPEs.txt: \n return DescriptionIcon;\n default: return InsertDriveFileIcon;\n }\n};\n\nexport const FileThumbnail: React.FC<{ file: PreviewableFile; size?: number }> = ({ file, size = 60 }) => {\n const isImage = file.fileType === FILE_TYPEs.image;\n const FileIcon = getFileIcon(file.fileType || '');\n\n return (\n <Box\n sx={{\n width: size,\n height: size,\n minWidth: size,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n bgcolor: 'transparent',\n borderRadius: 1,\n overflow: 'hidden'\n }}\n >\n {isImage && file.blobUrl ? (\n <Box\n component=\"img\"\n src={file.blobUrl}\n alt={file.filename}\n sx={{ width: '100%', height: '100%', objectFit: 'cover' }}\n />\n ) : (\n <FileIcon fontSize={size >= 60 ? \"large\" : \"medium\"} color=\"action\" />\n )}\n </Box>\n );\n};\n\nconst DisplayFile: React.FC<DisplayFileProps> & { DISPLAY_MODEs: { thumbnail: 'thumbnail'; name: 'name' } } = ({\n file,\n onDelete,\n mode = 'thumbnail'\n}) => {\n return (\n <Box sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n p: 1,\n border: '1px solid',\n borderColor: 'divider',\n borderRadius: 1,\n width: mode === 'thumbnail' ? 'fit-content' : '100%',\n maxWidth: '100%',\n position: 'relative',\n }}>\n <FileThumbnail file={file} />\n \n <Box sx={{ flex: 1, overflow: 'hidden' }}>\n <Typography variant=\"body2\" noWrap sx={{ maxWidth: 150 }}>\n {file.filename}\n </Typography>\n <Typography variant=\"caption\" color=\"text.secondary\">\n {file.displaySize}\n </Typography>\n </Box>\n\n {onDelete && (\n <IconButton \n size=\"small\" \n onClick={() => onDelete(file)}\n sx={{ ml: 'auto' }}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n )}\n </Box>\n );\n};\n\nDisplayFile.DISPLAY_MODEs = {\n thumbnail: 'thumbnail',\n name: 'name'\n};\n\nexport default DisplayFile;\n","import React from 'react';\nimport { Box } from '@/ele/Box';\nimport { Typography } from '@/ele/Typography';\nimport { LinearProgress } from '@/ele/Progress';\nimport { CheckCircleIcon } from '@/icons/MuiIcon';\nimport PreviewableFile from '@/_utils/classes/PreviewableFile';\nimport { FileThumbnail } from '@/compound/DisplayFile';\n\ninterface ProcessItemProps {\n file: PreviewableFile;\n progress: number;\n}\n\nexport const ProcessItem: React.FC<ProcessItemProps> = ({ file, progress }) => {\n const isComplete = progress >= 100;\n \n return (\n <Box sx={{ display: 'flex', gap: 2, alignItems: 'center', mb: 2, p: 1, border: '1px solid', borderColor: 'var(--process-item-border)', borderRadius: 1 }}>\n <FileThumbnail file={file} size={48} />\n \n <Box sx={{ flex: 1, minWidth: 0 }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', mb: 0.5 }}>\n <Typography variant=\"body2\" noWrap sx={{ fontWeight: 500 }}>\n {file.filename}\n </Typography>\n <Typography variant=\"caption\" sx={{ pl: 0.5, color: 'var(--process-item-secondary-color)' }}>\n {file.displaySize}\n </Typography>\n </Box>\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>\n <LinearProgress \n variant=\"determinate\" \n value={progress} \n sx={{ \n flex: 1, \n height: 6, \n }} \n />\n <Typography variant=\"caption\" sx={{ minWidth: 35, textAlign: 'right', color: 'var(--process-item-secondary-color)' }}>\n {Math.round(progress)}%\n </Typography>\n </Box>\n </Box>\n\n <Box sx={{ display: 'flex', alignItems: 'center', width: 24, justifyContent: 'center' }}>\n {isComplete && <CheckCircleIcon color=\"success\" fontSize=\"small\" />}\n </Box>\n </Box>\n );\n};\n","import { useState, useEffect, useMemo, useCallback } from 'react';\nimport type React from 'react';\nimport PreviewableFile from '@/_utils/classes/PreviewableFile';\nimport { ProgressObserver } from '../_utils/ProgressObserver';\n\nexport function useProgressTracking(\n files: PreviewableFile[],\n observerRef: React.RefObject<ProgressObserver>,\n) {\n const [progressMap, setProgressMap] = useState<Map<string, number>>(new Map());\n\n const handleProgress = useCallback((file: PreviewableFile, progress: number) => {\n setProgressMap(prev => {\n if (prev.get(file.filename) === progress) return prev;\n const newMap = new Map(prev);\n newMap.set(file.filename, progress);\n return newMap;\n });\n }, []);\n\n useEffect(() => {\n if (files.length === 0) return;\n let total = 0;\n let completed = 0;\n progressMap.forEach(v => {\n total += v;\n if (v >= 100) completed++;\n });\n const avg = Math.round(total / files.length);\n observerRef.current.update(files.length, completed, avg);\n }, [progressMap, files, observerRef]);\n\n const allComplete = useMemo(() => {\n if (files.length === 0) return false;\n return files.every(f => (progressMap.get(f.filename) || 0) >= 100);\n }, [files, progressMap]);\n\n return { progressMap, handleProgress, allComplete };\n}\n","import React, { useRef, useEffect, useMemo } from 'react';\nimport { SnackbarKey } from 'notistack';\nimport { useAlert, type AlertOptions } from '@/compound/Alert';\nimport { ProcessAlertObserver } from '../ProcessAlert';\nimport { ProgressObserver } from '../_utils/ProgressObserver';\nimport type { ProcessModalProps } from '../types';\n\ninterface UseProcessAlertParams {\n open: boolean;\n minimized: boolean;\n minimizePlacement: NonNullable<ProcessModalProps['minimizePlacement']>;\n onMaximize: () => void;\n}\n\nexport function useProcessAlert({\n open,\n minimized,\n minimizePlacement,\n onMaximize,\n}: UseProcessAlertParams) {\n const { enqueueInfo, closeSnackbar } = useAlert();\n const observerRef = useRef(new ProgressObserver());\n const snackbarIdRef = useRef<SnackbarKey | null>(null);\n\n const alertAnchorOrigin = useMemo<NonNullable<AlertOptions['anchorOrigin']>>(() => (\n {\n 'bottom-right': { vertical: 'bottom', horizontal: 'right' },\n 'bottom-left': { vertical: 'bottom', horizontal: 'left' },\n 'top-right': { vertical: 'top', horizontal: 'right' },\n 'top-left': { vertical: 'top', horizontal: 'left' },\n } as const\n )[minimizePlacement], [minimizePlacement]);\n\n // Sync minimized state to observer\n useEffect(() => {\n observerRef.current.setMinimized(minimized);\n }, [minimized]);\n\n // Alert open/close lifecycle\n useEffect(() => {\n if (open) {\n if (!snackbarIdRef.current) {\n const message = React.createElement(ProcessAlertObserver, {\n observer: observerRef.current,\n onMaximize,\n });\n const result = enqueueInfo(message, {\n autoHideDuration: null,\n icon: null,\n anchorOrigin: alertAnchorOrigin,\n });\n if (result.success) {\n snackbarIdRef.current = result.data;\n }\n }\n } else {\n if (snackbarIdRef.current) {\n closeSnackbar(snackbarIdRef.current);\n snackbarIdRef.current = null;\n }\n }\n }, [alertAnchorOrigin, closeSnackbar, enqueueInfo, open, onMaximize]);\n\n // Cleanup on unmount\n useEffect(() => {\n return () => {\n if (snackbarIdRef.current) {\n closeSnackbar(snackbarIdRef.current);\n snackbarIdRef.current = null;\n }\n };\n }, [closeSnackbar]);\n\n return { observerRef };\n}\n","'use client'\nimport { enqueueSnackbar, useSnackbar } from 'notistack'\nimport { randomStrGenerator } from '@/_utils/_func/random'\nimport { AlertOptions, CollapsableAlertOptions, AlertOperationResult } from './types'\nimport { ALERT_VARIANTs, DEFAULTs } from './const'\n\ntype EnqueueFn = ReturnType<typeof useSnackbar>['enqueueSnackbar']\n\nfunction enqueueAlertWith(\n enqueue: EnqueueFn,\n {\n message,\n variant,\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n icon,\n ...rest\n }: AlertOptions\n): AlertOperationResult<string> {\n try {\n enqueue(message, {\n variant,\n anchorOrigin,\n autoHideDuration,\n key: id,\n id,\n icon,\n ...rest,\n })\n return { success: true, data: id as string }\n } catch (error) {\n console.error('Failed to enqueue alert:', error)\n return { success: false, error: (error instanceof Error ? error.message : 'Unknown error') }\n }\n}\n\nfunction enqueueCollapsableWith(\n enqueue: EnqueueFn,\n {\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n componentProps = {},\n componentWrapperProps = {\n Renderer: () => null,\n },\n ...rest\n }: CollapsableAlertOptions\n): AlertOperationResult<string> {\n try {\n enqueue({\n variant: ALERT_VARIANTs.collapsable,\n anchorOrigin,\n autoHideDuration,\n componentProps,\n componentWrapperProps,\n id,\n ...rest,\n })\n return { success: true, data: id as string }\n } catch (error) {\n console.error('Failed to enqueue collapsable alert:', error)\n return { success: false, error: (error instanceof Error ? error.message : 'Unknown error') }\n }\n}\n\nexport function useAlert() {\n const { enqueueSnackbar: enqueue, closeSnackbar } = useSnackbar()\n\n const enqueueAlert = (options: AlertOptions) => enqueueAlertWith(enqueue, options)\n const enqueueCollapsable = (options: CollapsableAlertOptions) => enqueueCollapsableWith(enqueue, options)\n const enqueueError = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.error, message, ...options })\n const enqueueSuccess = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.success, message, ...options })\n const enqueueWarning = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.warning, message, ...options })\n const enqueueInfo = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.info, message, ...options })\n const enqueueSystem = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.system, message, ...options })\n const enqueueInsight = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.insight, message, ...options })\n\n return {\n enqueueAlert,\n enqueueCollapsable,\n enqueueError,\n enqueueSuccess,\n enqueueWarning,\n enqueueInfo,\n enqueueSystem,\n enqueueInsight,\n closeSnackbar,\n }\n}\n\nexport function enqueueAlert({\n message,\n variant,\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n icon,\n ...rest\n}: AlertOptions): AlertOperationResult<string> {\n return enqueueAlertWith(enqueueSnackbar, {\n message,\n variant,\n id,\n autoHideDuration,\n anchorOrigin,\n icon,\n ...rest,\n })\n}\n\nexport function enqueueCollapsable({\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n componentProps = {},\n componentWrapperProps = {\n Renderer: () => null, \n },\n ...rest\n}: CollapsableAlertOptions): AlertOperationResult<string> {\n return enqueueCollapsableWith(enqueueSnackbar, {\n id,\n autoHideDuration,\n anchorOrigin,\n componentProps,\n componentWrapperProps,\n ...rest,\n })\n}\n\nexport function enqueueError(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.error,\n message,\n ...options\n })\n}\n\nexport function enqueueSuccess(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.success,\n message,\n ...options\n })\n}\n\nexport function enqueueWarning(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.warning,\n message,\n ...options\n })\n}\n\nexport function enqueueInfo(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.info,\n message,\n ...options\n })\n}\n\nexport function enqueueSystem(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.system,\n message,\n ...options\n })\n}\n\nexport function enqueueInsight(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.insight,\n message,\n ...options\n })\n}\n","export const ALERT_VARIANTs = {\n info: 'myInfo',\n warning: 'myWarning',\n success: 'mySuccess',\n error: 'myError',\n system: 'mySystem',\n insight: 'myInsight',\n collapsable: 'myCollapsable',\n} as const\n\nexport const DEFAULTs = {\n AUTO_HIDE_DURATION: 3000,\n ANCHOR_ORIGIN: { horizontal: \"right\" as const, vertical: \"top\" as const },\n PROVIDER_CONFIGs: {\n maxSnack: 3,\n dense: true,\n preventDuplicate: true,\n autoHideDuration: 3000,\n }\n} as const\n\nexport const ERRORs = {\n invalid_variant: 'Invalid alert variant provided',\n enqueue_failed: 'Failed to enqueue alert',\n missing_message: 'Message is required for alert',\n missing_component_props: 'Component props are required for collapsible alert',\n} as const\n","import { useEffect, useState } from 'react';\nimport { Box } from '@/ele/Box';\nimport { Typography } from '@/ele/Typography';\nimport { IconButton } from '@/ele/Button';\nimport { FullscreenIcon, CheckCircleIcon } from '@/icons/MuiIcon';\nimport { CircularProgress } from '@/ele/Progress';\nimport { ProgressObserver } from './_utils/ProgressObserver';\n\n// The display component (stateless mostly)\nexport const ProcessAlertContent = ({ \n allComplete, \n fileCount, \n totalProgress, \n onMaximize,\n minimized\n}: { \n allComplete: boolean; \n fileCount: number; \n totalProgress: number; \n onMaximize: () => void;\n minimized: boolean;\n}) => {\n return (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 2, minWidth: 280 }}>\n {/* We don't render Icon here because MuiAlertVariant/Info handles the main icon usually. \n However, user might want the progress circle AS the icon. \n But MuiAlertVariant renders 'icon' prop.\n We are inside 'message'.\n */}\n <Box sx={{ display: 'flex', alignItems: 'center', justifyContent: 'center' }}>\n {/* Explicitly show progress here, assuming we replace or hide the default Alert icon via props if needed, or just show standard info icon + this progress */}\n {allComplete ? <CheckCircleIcon /> : <CircularProgress variant=\"determinate\" value={totalProgress} size={24} thickness={5} />}\n </Box>\n \n <Box sx={{ flex: 1, minWidth: 0 }}>\n <Typography variant=\"subtitle2\" sx={{ fontWeight: 600, lineHeight: 1.2 }}>\n {allComplete ? \"Uploads complete\" : \"Uploading files...\"}\n </Typography>\n {!allComplete && (\n <Typography variant=\"caption\" display=\"block\" sx={{ opacity: 0.8 }}>\n {fileCount} item{fileCount !== 1 ? 's' : ''} • {totalProgress}%\n </Typography>\n )}\n </Box>\n\n {minimized && (\n <IconButton size=\"small\" onClick={onMaximize} title=\"Maximize\" sx={{ color: 'inherit' }}>\n <FullscreenIcon />\n </IconButton>\n )}\n </Box>\n );\n};\n\n// The observer wrapper\nexport const ProcessAlertObserver = ({ observer, onMaximize }: { observer: ProgressObserver, onMaximize: () => void }) => {\n const [state, setState] = useState({ fileCount: 0, completedCount: 0, totalProgress: 0, minimized: false });\n\n useEffect(() => {\n return observer.subscribe((newState) => {\n setState(newState);\n });\n }, [observer]);\n\n // Derived\n const allComplete = state.fileCount > 0 && state.totalProgress >= 100;\n\n return (\n <ProcessAlertContent \n allComplete={allComplete}\n fileCount={state.fileCount}\n totalProgress={state.totalProgress}\n onMaximize={onMaximize}\n minimized={state.minimized}\n />\n );\n};\n","export interface ProgressState {\n fileCount: number;\n completedCount: number;\n totalProgress: number;\n minimized: boolean;\n}\n\nexport type ProgressListener = (state: ProgressState) => void;\n\nexport class ProgressObserver {\n private listeners: ProgressListener[] = [];\n private state: ProgressState = {\n fileCount: 0,\n completedCount: 0,\n totalProgress: 0,\n minimized: false\n };\n\n subscribe(listener: ProgressListener) {\n this.listeners.push(listener);\n // Immediate callback with current state\n listener(this.state);\n return () => {\n this.listeners = this.listeners.filter(l => l !== listener);\n };\n }\n\n update(fileCount: number, completedCount: number, totalProgress: number) {\n this.state = { ...this.state, fileCount, completedCount, totalProgress };\n this.notify();\n }\n\n setMinimized(minimized: boolean) {\n this.state = { ...this.state, minimized };\n this.notify();\n }\n\n private notify() {\n this.listeners.forEach(l => l(this.state));\n }\n}\n","import type { SxProps, Theme } from '@mui/material/styles';\n\n/**\n * Root-level CSS variable aliases for the ProcessModal compound component.\n * Declared once on the root element — child components consume via `var(--*)`.\n */\nexport const processModalRootSx: SxProps<Theme> = {\n '--process-description-color': 'var(--mui-palette-text-secondary)',\n '--process-item-secondary-color': 'var(--mui-palette-text-secondary)',\n '--process-item-border': 'var(--mui-palette-divider)',\n};\n"],"mappings":"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","names":["exports","module","import_react","import_Typography","Typography","import_jsx_runtime","MuiButton","import_jsx_runtime","MuiIconButton","import_PhotoSizeSelectLarge","import_Close","import_Person","import_DeleteForever","import_AccountTreeOutlined","import_react","import_Tooltip","Paper","import_jsx_runtime","classnames","Modal","Tooltip","import_jsx_runtime","MuiLinearProgress","import_jsx_runtime","MuiCircularProgress","import_jsx_runtime","import_jsx_runtime","import_react","import_react","import_react","import_jsx_runtime","React","import_jsx_runtime"]}
|