summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaindropsSys <contact@minteck.org>2023-08-08 23:22:13 +0200
committerRaindropsSys <contact@minteck.org>2023-08-08 23:22:13 +0200
commit02084e53ef9d73a2008ca25f0d50022dc3b5fc59 (patch)
tree8495f77aa43b3decf9e86e3f9147634fad749515
parent94d7c06feb58b768ae1affdd59f7b6dff827c6b2 (diff)
downloadpluralconnect-02084e53ef9d73a2008ca25f0d50022dc3b5fc59.tar.gz
pluralconnect-02084e53ef9d73a2008ca25f0d50022dc3b5fc59.tar.bz2
pluralconnect-02084e53ef9d73a2008ca25f0d50022dc3b5fc59.zip
Updated 4 files and added 65 files (automated)
-rw-r--r--.idea/deployment.xml3
-rw-r--r--assets/icons/actions.svg1
-rw-r--r--assets/icons/add-cloudburst.svg14
-rw-r--r--assets/icons/add-raindrops.svg14
-rw-r--r--assets/icons/alert-off.svg1
-rw-r--r--assets/icons/alert-on.svg1
-rw-r--r--assets/icons/bitset.svg1
-rw-r--r--assets/icons/bottom.svg1
-rw-r--r--assets/icons/compare.svg1
-rw-r--r--assets/icons/computer.svg1
-rw-r--r--assets/icons/computers-off.svg1
-rw-r--r--assets/icons/computers-on.svg1
-rw-r--r--assets/icons/computers-remote.svg1
-rw-r--r--assets/icons/computers-screens.svg1
-rw-r--r--assets/icons/computers-sessions.svg1
-rw-r--r--assets/icons/computers-windows.svg1
-rw-r--r--assets/icons/copy.svg1
-rw-r--r--assets/icons/dashboard.svg1
-rw-r--r--assets/icons/debug.svg1
-rw-r--r--assets/icons/delete.svg1
-rw-r--r--assets/icons/disclaimers.svg1
-rw-r--r--assets/icons/down.svg1
-rw-r--r--assets/icons/edit-private.svg1
-rw-r--r--assets/icons/edit.svg1
-rw-r--r--assets/icons/failures.svg1
-rw-r--r--assets/icons/form.svg1
-rw-r--r--assets/icons/fronting.svg1
-rw-r--r--assets/icons/government.svg1
-rw-r--r--assets/icons/new.php3
-rw-r--r--assets/icons/nicknames.svg1
-rw-r--r--assets/icons/page.svg1
-rw-r--r--assets/icons/parent.svg1
-rw-r--r--assets/icons/parser.svg1
-rw-r--r--assets/icons/prefix.svg1
-rw-r--r--assets/icons/reference.svg1
-rw-r--r--assets/icons/reset.svg1
-rw-r--r--assets/icons/right.svg1
-rw-r--r--assets/icons/rules-old.svg1
-rw-r--r--assets/icons/rules.svg1
-rw-r--r--assets/icons/save.svg1
-rw-r--r--assets/icons/score.svg1
-rw-r--r--assets/icons/search.svg1
-rw-r--r--assets/icons/shield.svg1
-rw-r--r--assets/icons/stats.svg1
-rw-r--r--assets/icons/time.svg1
-rw-r--r--assets/icons/together.svg1
-rw-r--r--assets/icons/top.svg11
-rw-r--r--assets/icons/toys.svg1
-rw-r--r--assets/icons/travel.svg1
-rw-r--r--assets/icons/tree.svg1
-rw-r--r--assets/icons/uncolored/computers.svg1
-rw-r--r--assets/icons/up.svg1
-rw-r--r--assets/icons/user.svg1
-rw-r--r--assets/icons/view.svg1
-rw-r--r--assets/icons/visibility-depends.svg1
-rw-r--r--assets/icons/visibility-private.svg1
-rw-r--r--assets/icons/visibility-public.svg1
-rw-r--r--assets/logo/newlogo-template.pngbin0 -> 37664 bytes
-rw-r--r--assets/logo/newlogo.pngbin5629 -> 5628 bytes
-rw-r--r--assets/logo/newlogo3-template.pngbin0 -> 46121 bytes
-rw-r--r--assets/logo/newlogo3.pngbin6315 -> 6326 bytes
-rw-r--r--assets/uploads/pt-twi.pngbin728 -> 686 bytes
-rw-r--r--includes/external/photo/5-2.pngbin0 -> 6935 bytes
-rw-r--r--includes/external/photo/5.pngbin0 -> 6000 bytes
-rw-r--r--includes/external/photo/canvas.pngbin0 -> 363 bytes
-rw-r--r--includes/external/photo/index.js162
-rw-r--r--includes/external/photo/output.pngbin0 -> 64235 bytes
-rw-r--r--includes/external/photo/run.sh3
-rw-r--r--includes/external/photo/temp.pngbin0 -> 2079 bytes
69 files changed, 261 insertions, 1 deletions
diff --git a/.idea/deployment.xml b/.idea/deployment.xml
index 05a71fc..b63ac80 100644
--- a/.idea/deployment.xml
+++ b/.idea/deployment.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
- <component name="PublishConfigData" autoUpload="Always" serverName="bridlewood" remoteFilesAllowedToDisappearOnAutoupload="false">
+ <component name="PublishConfigData" autoUpload="Always" serverName="bridlewood" confirmBeforeDeletion="false" autoUploadExternalChanges="true">
+ <option name="confirmBeforeDeletion" value="false" />
<serverData>
<paths name="bridlewood">
<serverdata>
diff --git a/assets/icons/actions.svg b/assets/icons/actions.svg
new file mode 100644
index 0000000..3e73e7d
--- /dev/null
+++ b/assets/icons/actions.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M6.75 4h10.5a2.75 2.75 0 0 1 2.745 2.582L20 6.75v3.354a2.752 2.752 0 0 1 1.994 2.459l.006.187v7.5a.75.75 0 0 1-1.493.102l-.007-.102V18h-17v2.25a.75.75 0 0 1-.648.743L2.75 21a.75.75 0 0 1-.743-.648L2 20.25v-7.5c0-1.259.846-2.32 2-2.647V6.75a2.75 2.75 0 0 1 2.582-2.745L6.75 4Zm12.5 7.5H4.75a1.25 1.25 0 0 0-1.244 1.122l-.006.128v3.75h17v-3.75a1.25 1.25 0 0 0-1.122-1.243l-.128-.007Zm-2-6H6.75a1.25 1.25 0 0 0-1.244 1.122L5.5 6.75V10H7a1 1 0 0 1 1-1h2a1 1 0 0 1 .993.883L11 10h2a1 1 0 0 1 1-1h2a1 1 0 0 1 .993.883L17 10h1.5V6.75a1.25 1.25 0 0 0-1.122-1.244L17.25 5.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/add-cloudburst.svg b/assets/icons/add-cloudburst.svg
new file mode 100644
index 0000000..25c88f3
--- /dev/null
+++ b/assets/icons/add-cloudburst.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve">
+<style type="text/css">
+ .st0{fill:#FF6AE6;}
+ .st1{fill:#FFFFFF;}
+</style>
+<circle class="st0" cx="12" cy="12" r="10.4" opacity=".25"/>
+<path class="st1" d="M16.6,11.2c3,0,5.4,2.4,5.4,5.4S19.6,22,16.6,22s-5.4-2.4-5.4-5.4S13.7,11.2,16.6,11.2z M16.6,12
+ c-2.5,0-4.6,2-4.6,4.6s2,4.6,4.6,4.6s4.6-2,4.6-4.6S19.1,12,16.6,12z M16.6,13.9c0.2,0,0.4,0.2,0.4,0.4v1.9h1.9
+ c0.2,0,0.4,0.2,0.4,0.4S19.1,17,18.9,17H17v1.9c0,0.2-0.2,0.4-0.4,0.4s-0.4-0.2-0.4-0.4V17h-1.9c-0.2,0-0.4-0.2-0.4-0.4
+ s0.2-0.4,0.4-0.4h1.9v-1.9C16.2,14.1,16.4,13.9,16.6,13.9z"/>
+</svg>
diff --git a/assets/icons/add-raindrops.svg b/assets/icons/add-raindrops.svg
new file mode 100644
index 0000000..d4ff334
--- /dev/null
+++ b/assets/icons/add-raindrops.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve">
+<style type="text/css">
+ .st0{fill:#D7E1FF;}
+ .st1{fill:#FFFFFF;}
+</style>
+<circle class="st0" cx="12" cy="12" r="10.4" opacity=".25"/>
+<path class="st1" d="M16.6,11.2c3,0,5.4,2.4,5.4,5.4S19.6,22,16.6,22s-5.4-2.4-5.4-5.4S13.7,11.2,16.6,11.2z M16.6,12
+ c-2.5,0-4.6,2-4.6,4.6s2,4.6,4.6,4.6s4.6-2,4.6-4.6S19.1,12,16.6,12z M16.6,13.9c0.2,0,0.4,0.2,0.4,0.4v1.9h1.9
+ c0.2,0,0.4,0.2,0.4,0.4S19.1,17,18.9,17H17v1.9c0,0.2-0.2,0.4-0.4,0.4s-0.4-0.2-0.4-0.4V17h-1.9c-0.2,0-0.4-0.2-0.4-0.4
+ s0.2-0.4,0.4-0.4h1.9v-1.9C16.2,14.1,16.4,13.9,16.6,13.9z"/>
+</svg>
diff --git a/assets/icons/alert-off.svg b/assets/icons/alert-off.svg
new file mode 100644
index 0000000..d88ddf8
--- /dev/null
+++ b/assets/icons/alert-off.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m5.22 6.28-3-3a.75.75 0 0 1 1.06-1.06l18.5 18.5a.75.75 0 1 1-1.06 1.06l-3.28-3.28-2.44.001a3 3 0 0 1-5.995.177L9 18.499H4.275a1.251 1.251 0 0 1-1.147-1.747L4.5 13.594V9.496c0-1.152.258-2.242.72-3.216ZM15.94 17 6.364 7.425A6.019 6.019 0 0 0 6 9.496v4.41L4.656 17H15.94Zm-2.44 1.5-3 .001a1.5 1.5 0 0 0 2.993.145l.007-.147ZM18 13.907l.708 1.62 2.188 2.187a1.247 1.247 0 0 0-.016-.965l-1.38-3.156V9.496l-.004-.25A7.49 7.49 0 0 0 12 1.995a7.476 7.476 0 0 0-4.957 1.865l1.064 1.064A5.981 5.981 0 0 1 12 3.496a5.988 5.988 0 0 1 5.997 5.788l.003.225v4.398Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/alert-on.svg b/assets/icons/alert-on.svg
new file mode 100644
index 0000000..4f2d0d7
--- /dev/null
+++ b/assets/icons/alert-on.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 1.996a7.49 7.49 0 0 1 7.496 7.25l.004.25v4.097l1.38 3.156a1.249 1.249 0 0 1-1.145 1.75L15 18.502a3 3 0 0 1-5.995.177L9 18.499H4.275a1.251 1.251 0 0 1-1.147-1.747L4.5 13.594V9.496c0-4.155 3.352-7.5 7.5-7.5ZM13.5 18.5l-3 .002a1.5 1.5 0 0 0 2.993.145l.006-.147ZM12 3.496c-3.32 0-6 2.674-6 6v4.41L4.656 17h14.697L18 13.907V9.509l-.004-.225A5.988 5.988 0 0 0 12 3.496Zm9 4.754h2a.75.75 0 0 1 .102 1.493L23 9.75h-2a.75.75 0 0 1-.102-1.493L21 8.25Zm-20 0h2a.75.75 0 0 1 .102 1.493L3 9.75H1a.75.75 0 0 1-.102-1.493L1 8.25Zm21.6-5.7a.75.75 0 0 1-.066.977l-.084.073-2 1.5a.75.75 0 0 1-.984-1.127l.084-.073 2-1.5a.75.75 0 0 1 1.05.15ZM2.45 2.4l2 1.5a.75.75 0 1 1-.9 1.2l-2-1.5a.75.75 0 1 1 .9-1.2Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/bitset.svg b/assets/icons/bitset.svg
new file mode 100644
index 0000000..632b184
--- /dev/null
+++ b/assets/icons/bitset.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M8.75 13.5a3.251 3.251 0 0 1 3.163 2.498L21.25 16a.75.75 0 0 1 .102 1.493l-.102.007h-9.337a3.251 3.251 0 0 1-6.326 0H2.75a.75.75 0 0 1-.102-1.493L2.75 16h2.837a3.251 3.251 0 0 1 3.163-2.5Zm0 1.5a1.75 1.75 0 0 0-1.652 1.172l-.021.063-.039.148a1.756 1.756 0 0 0 .02.815l.04.13.025.069a1.75 1.75 0 0 0 3.28-.069l.04-.13-.018.06a1.75 1.75 0 0 0 .048-.815l-.03-.137-.02-.07-.047-.134A1.75 1.75 0 0 0 8.75 15Zm6.5-11a3.251 3.251 0 0 1 3.163 2.5h2.837a.75.75 0 0 1 .102 1.493L21.25 8h-2.837a3.251 3.251 0 0 1-6.326 0H2.75a.75.75 0 0 1-.102-1.493L2.75 6.5l9.337-.002A3.251 3.251 0 0 1 15.25 4Zm0 1.5a1.75 1.75 0 0 0-1.652 1.173l-.021.062-.038.148a1.757 1.757 0 0 0 .019.815l.04.13.025.069a1.75 1.75 0 0 0 3.28-.068l.04-.131-.018.06a1.75 1.75 0 0 0 .048-.815l-.03-.137-.02-.07-.047-.134A1.75 1.75 0 0 0 15.25 5.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/bottom.svg b/assets/icons/bottom.svg
new file mode 100644
index 0000000..b72452c
--- /dev/null
+++ b/assets/icons/bottom.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m11.25 13.75-.085-.073a.75.75 0 0 0-.976.072l-.69.69v-6.69l-.007-.102a.75.75 0 0 0-.743-.648l-.102.007A.75.75 0 0 0 8 7.749v6.692l-.69-.692-.084-.072a.75.75 0 0 0-.976 1.133l1.969 1.97.084.073a.75.75 0 0 0 .977-.072l1.97-1.971.073-.084a.75.75 0 0 0-.072-.977ZM1.999 12c0 5.522 4.477 10 10 10s10-4.478 10-10c0-5.524-4.477-10-10-10s-10 4.476-10 10Zm18.5 0a8.5 8.5 0 1 1-17 0 8.5 8.5 0 0 1 17 0Zm-2.75 1.75-.084-.073a.75.75 0 0 0-.976.072l-.69.69v-6.69l-.007-.102a.75.75 0 0 0-.743-.648l-.102.007a.75.75 0 0 0-.648.743v6.691l-.69-.69-.083-.073a.75.75 0 0 0-.977 1.133l1.969 1.97.084.073a.75.75 0 0 0 .977-.072l1.97-1.971.073-.084a.75.75 0 0 0-.072-.977Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/compare.svg b/assets/icons/compare.svg
new file mode 100644
index 0000000..e7b5ecf
--- /dev/null
+++ b/assets/icons/compare.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m14.783 2.22 4.495 4.494a.75.75 0 0 1 .073.976l-.072.085-4.495 4.504a.75.75 0 0 1-1.135-.975l.073-.084 3.217-3.223H5.243A.75.75 0 0 1 4.5 7.35l-.007-.101a.75.75 0 0 1 .648-.743l.102-.007 11.697-.001-3.218-3.217a.75.75 0 0 1-.072-.976l.072-.084a.75.75 0 0 1 .977-.073l.084.073 4.495 4.494-4.495-4.494ZM19.5 16.65l.006.1a.75.75 0 0 1-.648.744l-.102.007L7.063 17.5l3.22 3.22a.75.75 0 0 1 .074.976l-.073.084a.75.75 0 0 1-.976.073l-.085-.072-4.5-4.497a.75.75 0 0 1-.073-.976l.073-.084 4.5-4.504a.75.75 0 0 1 1.134.976l-.073.084L7.066 16h11.692a.75.75 0 0 1 .743.65l.006.1-.006-.1Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computer.svg b/assets/icons/computer.svg
new file mode 100644
index 0000000..30f5ff9
--- /dev/null
+++ b/assets/icons/computer.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M8.254 8.003c.967 0 1.75.784 1.75 1.75v9.5a1.75 1.75 0 0 1-1.75 1.75H3.75A1.75 1.75 0 0 1 2 19.253v-9.5c0-.966.784-1.75 1.75-1.75h4.504Zm0 1.5H3.75a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h4.504a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25ZM6.252 17a.75.75 0 0 1 .102 1.493l-.102.007h-.5a.75.75 0 0 1-.102-1.493L5.752 17h.5Zm14.997-.5a.75.75 0 0 1 .102 1.493L21.25 18H11v-1.5h10.25ZM18.25 5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 18.25 16H11v-1.5h7.25a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25H5.75a.25.25 0 0 0-.25.25L5.499 7H4v-.25C4 5.784 4.784 5 5.75 5h12.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-off.svg b/assets/icons/computers-off.svg
new file mode 100644
index 0000000..b8c94cf
--- /dev/null
+++ b/assets/icons/computers-off.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M3.28 2.22a.75.75 0 1 0-1.06 1.06l1.045 1.046A2.5 2.5 0 0 0 2 6.5v9A2.5 2.5 0 0 0 4.5 18H9v-1.5H4.5a1 1 0 0 1-1-1v-9a1 1 0 0 1 .941-.998L10 11.06V21.25a.75.75 0 0 0 1.368.425l2.467-3.588 4.042.85 2.842 2.843a.75.75 0 0 0 1.061-1.06L3.28 2.22Zm8.22 10.34 4.435 4.436-2.28-.48a.75.75 0 0 0-.773.31l-1.382 2.01V12.56ZM20.5 15.5a1 1 0 0 1-.832.986l1.143 1.143A2.499 2.499 0 0 0 22 15.5v-9A2.5 2.5 0 0 0 19.5 4H7.182l1.5 1.5H19.5a1 1 0 0 1 1 1v9Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-on.svg b/assets/icons/computers-on.svg
new file mode 100644
index 0000000..78cf6ba
--- /dev/null
+++ b/assets/icons/computers-on.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.5 5.5h-15a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1H9V18H4.5A2.5 2.5 0 0 1 2 15.5v-9A2.5 2.5 0 0 1 4.5 4h15A2.5 2.5 0 0 1 22 6.5v9a2.5 2.5 0 0 1-2.025 2.455 1.75 1.75 0 0 0-.69-1.116l-.339-.339h.554a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1Z" fill="#000000"/><path d="M11.28 10.22a.75.75 0 0 0-1.28.53v10.5a.75.75 0 0 0 1.368.425l2.467-3.588 4.26.897a.75.75 0 0 0 .685-1.264l-7.5-7.5Zm.22 8.615v-6.274l4.436 4.435-2.281-.48a.75.75 0 0 0-.773.31l-1.382 2.01Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-remote.svg b/assets/icons/computers-remote.svg
new file mode 100644
index 0000000..daf152a
--- /dev/null
+++ b/assets/icons/computers-remote.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 9.005a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 1.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM12 5.5c4.613 0 8.596 3.15 9.701 7.564a.75.75 0 1 1-1.455.365 8.503 8.503 0 0 0-16.493.004.75.75 0 0 1-1.455-.363A10.003 10.003 0 0 1 12 5.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-screens.svg b/assets/icons/computers-screens.svg
new file mode 100644
index 0000000..ae786bf
--- /dev/null
+++ b/assets/icons/computers-screens.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M2 7.25A3.25 3.25 0 0 1 5.25 4h13.5A3.25 3.25 0 0 1 22 7.25V13h-.258a3.74 3.74 0 0 0-1.242-2.545V7.25a1.75 1.75 0 0 0-1.75-1.75H5.25A1.75 1.75 0 0 0 3.5 7.25v9.5c0 .966.784 1.75 1.75 1.75H12v.5c0 .34.04.674.118 1H5.25A3.25 3.25 0 0 1 2 16.75v-9.5ZM21.5 17a1.5 1.5 0 0 1 1.5 1.5v.5c0 1.971-1.86 4-5 4-3.14 0-5-2.029-5-4v-.5a1.5 1.5 0 0 1 1.5-1.5h7ZM18 10.5a2.75 2.75 0 1 1 0 5.5 2.75 2.75 0 0 1 0-5.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-sessions.svg b/assets/icons/computers-sessions.svg
new file mode 100644
index 0000000..2f9dbb0
--- /dev/null
+++ b/assets/icons/computers-sessions.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M18.25 7a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Z" fill="#000000"/><path d="M15.5 2.05A6.554 6.554 0 0 0 8.95 8.6c0 .387.05.76.11 1.104a.275.275 0 0 1-.07.244l-6.235 6.236a2.75 2.75 0 0 0-.806 1.944V20.3c0 .966.784 1.75 1.75 1.75h2.5a1.75 1.75 0 0 0 1.75-1.75v-1.25H9.7c.69 0 1.25-.56 1.25-1.25v-1.75h1.75a1.25 1.25 0 0 0 1.25-1.204c.496.128 1.02.204 1.55.204a6.554 6.554 0 0 0 6.55-6.55c0-3.631-2.953-6.45-6.55-6.45ZM10.45 8.6a5.054 5.054 0 0 1 5.05-5.05c2.802 0 5.05 2.181 5.05 4.95a5.054 5.054 0 0 1-5.05 5.05c-.68 0-1.38-.171-2.005-.44a.75.75 0 0 0-1.046.69v.75H10.7c-.69 0-1.25.56-1.25 1.25v1.75H7.7c-.69 0-1.25.56-1.25 1.25v1.5a.25.25 0 0 1-.25.25H3.7a.25.25 0 0 1-.25-.25v-2.172c0-.331.132-.65.366-.884l6.236-6.235a1.774 1.774 0 0 0 .486-1.564 4.917 4.917 0 0 1-.088-.845Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/computers-windows.svg b/assets/icons/computers-windows.svg
new file mode 100644
index 0000000..d9fb710
--- /dev/null
+++ b/assets/icons/computers-windows.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M3 6.25A3.25 3.25 0 0 1 6.25 3h11.5A3.25 3.25 0 0 1 21 6.25v11.5A3.25 3.25 0 0 1 17.75 21H6.25A3.25 3.25 0 0 1 3 17.75V6.25ZM6.25 4.5A1.75 1.75 0 0 0 4.5 6.25v.25h15v-.25a1.75 1.75 0 0 0-1.75-1.75H6.25ZM19.5 8h-15v9.75c0 .966.784 1.75 1.75 1.75h11.5a1.75 1.75 0 0 0 1.75-1.75V8Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/copy.svg b/assets/icons/copy.svg
new file mode 100644
index 0000000..646e5c6
--- /dev/null
+++ b/assets/icons/copy.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M5.503 4.627 5.5 6.75v10.504a3.25 3.25 0 0 0 3.25 3.25h8.616a2.251 2.251 0 0 1-2.122 1.5H8.75A4.75 4.75 0 0 1 4 17.254V6.75c0-.98.627-1.815 1.503-2.123ZM17.75 2A2.25 2.25 0 0 1 20 4.25v13a2.25 2.25 0 0 1-2.25 2.25h-9a2.25 2.25 0 0 1-2.25-2.25v-13A2.25 2.25 0 0 1 8.75 2h9Zm0 1.5h-9a.75.75 0 0 0-.75.75v13c0 .414.336.75.75.75h9a.75.75 0 0 0 .75-.75v-13a.75.75 0 0 0-.75-.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/dashboard.svg b/assets/icons/dashboard.svg
new file mode 100644
index 0000000..8e5328f
--- /dev/null
+++ b/assets/icons/dashboard.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M18.25 3A2.75 2.75 0 0 1 21 5.75v12.5A2.75 2.75 0 0 1 18.25 21H5.75A2.75 2.75 0 0 1 3 18.25V5.75A2.75 2.75 0 0 1 5.75 3h12.5Zm0 1.5H5.75c-.69 0-1.25.56-1.25 1.25v12.5c0 .69.56 1.25 1.25 1.25h12.5c.69 0 1.25-.56 1.25-1.25V5.75c0-.69-.56-1.25-1.25-1.25Zm-8.498 8c.966 0 1.75.784 1.75 1.75v2A1.75 1.75 0 0 1 9.752 18h-2a1.75 1.75 0 0 1-1.75-1.75v-2c0-.966.783-1.75 1.75-1.75h2Zm6.497 0c.967 0 1.75.784 1.75 1.75v2A1.75 1.75 0 0 1 16.25 18h-2a1.75 1.75 0 0 1-1.75-1.75v-2c0-.966.784-1.75 1.75-1.75h2ZM9.752 14h-2a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h2a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25Zm6.497 0h-2a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h2a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25ZM9.751 6c.966 0 1.75.784 1.75 1.75v2a1.75 1.75 0 0 1-1.75 1.75h-2A1.75 1.75 0 0 1 6 9.75v-2C6 6.784 6.784 6 7.75 6h2Zm6.497 0c.967 0 1.75.784 1.75 1.75v2a1.75 1.75 0 0 1-1.75 1.75h-2a1.75 1.75 0 0 1-1.75-1.75v-2c0-.966.784-1.75 1.75-1.75h2ZM9.751 7.5h-2a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h2a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25Zm6.497 0h-2a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h2a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/debug.svg b/assets/icons/debug.svg
new file mode 100644
index 0000000..ec074f1
--- /dev/null
+++ b/assets/icons/debug.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 2.751a.75.75 0 0 0-1.5 0v.752c0 .633.196 1.22.53 1.703A3.753 3.753 0 0 0 7.01 8.49h-.257a2.25 2.25 0 0 1-2.24-2.26l.006-1.485a.75.75 0 1 0-1.5-.006l-.007 1.485A3.75 3.75 0 0 0 6.747 9.99H7v1.51H2.75a.75.75 0 0 0 0 1.5H7v1.992h-.253a3.75 3.75 0 0 0-3.735 3.765l.007 1.486a.75.75 0 0 0 1.5-.006l-.007-1.486a2.25 2.25 0 0 1 2.241-2.259H7.226a5.002 5.002 0 0 0 9.548 0H17.247a2.25 2.25 0 0 1 2.24 2.26l-.006 1.485a.75.75 0 0 0 1.5.006l.006-1.486a3.75 3.75 0 0 0-3.734-3.765H17V13h4.251a.75.75 0 0 0 0-1.5H17V9.99h.253a3.75 3.75 0 0 0 3.735-3.766L20.98 4.74a.75.75 0 0 0-1.5.006l.006 1.486a2.25 2.25 0 0 1-2.24 2.259h-.256a3.753 3.753 0 0 0-2.52-3.284c.333-.484.529-1.07.529-1.703v-.752a.75.75 0 0 0-1.5 0v.752a1.5 1.5 0 0 1-3 0v-.752Zm-2 6.002a2.25 2.25 0 0 1 2.25-2.25h2.5a2.25 2.25 0 0 1 2.25 2.25V15a3.5 3.5 0 1 1-7 0V8.753Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/delete.svg b/assets/icons/delete.svg
new file mode 100644
index 0000000..ccfd685
--- /dev/null
+++ b/assets/icons/delete.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 1.75a3.25 3.25 0 0 1 3.245 3.066L15.25 5h5.25a.75.75 0 0 1 .102 1.493L20.5 6.5h-.796l-1.28 13.02a2.75 2.75 0 0 1-2.561 2.474l-.176.006H8.313a2.75 2.75 0 0 1-2.714-2.307l-.023-.174L4.295 6.5H3.5a.75.75 0 0 1-.743-.648L2.75 5.75a.75.75 0 0 1 .648-.743L3.5 5h5.25A3.25 3.25 0 0 1 12 1.75Zm6.197 4.75H5.802l1.267 12.872a1.25 1.25 0 0 0 1.117 1.122l.127.006h7.374c.6 0 1.109-.425 1.225-1.002l.02-.126L18.196 6.5ZM13.75 9.25a.75.75 0 0 1 .743.648L14.5 10v7a.75.75 0 0 1-1.493.102L13 17v-7a.75.75 0 0 1 .75-.75Zm-3.5 0a.75.75 0 0 1 .743.648L11 10v7a.75.75 0 0 1-1.493.102L9.5 17v-7a.75.75 0 0 1 .75-.75Zm1.75-6a1.75 1.75 0 0 0-1.744 1.606L10.25 5h3.5A1.75 1.75 0 0 0 12 3.25Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/disclaimers.svg b/assets/icons/disclaimers.svg
new file mode 100644
index 0000000..03b9c57
--- /dev/null
+++ b/assets/icons/disclaimers.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 6.5a.75.75 0 0 1 .75.75v6.25a.75.75 0 0 1-1.5 0V7.25A.75.75 0 0 1 12 6.5ZM12 17.498a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" fill="#000000"/><path d="M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10a9.96 9.96 0 0 1-4.587-1.112l-3.826 1.067a1.25 1.25 0 0 1-1.54-1.54l1.068-3.823A9.96 9.96 0 0 1 2 12C2 6.477 6.477 2 12 2Zm0 1.5A8.5 8.5 0 0 0 3.5 12c0 1.47.373 2.883 1.073 4.137l.15.27-1.112 3.984 3.987-1.112.27.15A8.5 8.5 0 1 0 12 3.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/down.svg b/assets/icons/down.svg
new file mode 100644
index 0000000..ad28be7
--- /dev/null
+++ b/assets/icons/down.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m16.53 11.72-.084-.074a.75.75 0 0 0-.977.073l-2.72 2.72v-6.69l-.007-.102A.75.75 0 0 0 12 6.999l-.101.007a.75.75 0 0 0-.649.743v6.692l-2.72-2.722-.084-.073a.75.75 0 0 0-.977 1.133l4 4.002.084.072a.75.75 0 0 0 .977-.072l4-4.001.073-.084a.75.75 0 0 0-.072-.977ZM1.999 12c0 5.522 4.477 10 10 10s10-4.478 10-10c0-5.524-4.477-10-10-10s-10 4.476-10 10Zm18.5 0a8.5 8.5 0 1 1-17 0 8.5 8.5 0 0 1 17 0Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/edit-private.svg b/assets/icons/edit-private.svg
new file mode 100644
index 0000000..09c8ed2
--- /dev/null
+++ b/assets/icons/edit-private.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M21.031 2.97a3.579 3.579 0 0 1 0 5.06l-2.992 2.992a6.565 6.565 0 0 0-2.358.236L17.94 9 15.001 6.06 5.063 16a.75.75 0 0 0-.193.332l-1.05 3.85 3.85-1.05a.75.75 0 0 0 .332-.193l3.257-3.257a6.501 6.501 0 0 0-.236 2.357l-1.96 1.96a2.25 2.25 0 0 1-1 .58l-5.115 1.395a.75.75 0 0 1-.92-.92l1.394-5.116a2.25 2.25 0 0 1 .58-1L15.97 2.97a3.578 3.578 0 0 1 5.061 0Zm-4 1.06-.97.97L19 7.94l.97-.97a2.078 2.078 0 1 0-2.939-2.94Zm-2.752 9.945a2 2 0 0 1-1.441 2.497l-.584.144a5.729 5.729 0 0 0 .006 1.807l.54.13a2 2 0 0 1 1.45 2.51l-.187.632c.44.386.94.699 1.484.921l.494-.518a2 2 0 0 1 2.899 0l.498.525a5.28 5.28 0 0 0 1.483-.913l-.198-.686a2 2 0 0 1 1.442-2.496l.583-.144a5.729 5.729 0 0 0-.006-1.808l-.54-.13a2 2 0 0 1-1.45-2.51l.187-.63a5.28 5.28 0 0 0-1.484-.923l-.493.519a2 2 0 0 1-2.9 0l-.498-.525c-.544.22-1.044.53-1.483.912l.198.686ZM17.501 19c-.8 0-1.45-.672-1.45-1.5 0-.829.65-1.5 1.45-1.5.8 0 1.45.671 1.45 1.5 0 .828-.65 1.5-1.45 1.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/edit.svg b/assets/icons/edit.svg
new file mode 100644
index 0000000..b5f3d18
--- /dev/null
+++ b/assets/icons/edit.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M21.03 2.97a3.578 3.578 0 0 1 0 5.06L9.062 20a2.25 2.25 0 0 1-.999.58l-5.116 1.395a.75.75 0 0 1-.92-.921l1.395-5.116a2.25 2.25 0 0 1 .58-.999L15.97 2.97a3.578 3.578 0 0 1 5.06 0ZM15 6.06 5.062 16a.75.75 0 0 0-.193.333l-1.05 3.85 3.85-1.05A.75.75 0 0 0 8 18.938L17.94 9 15 6.06Zm2.03-2.03-.97.97L19 7.94l.97-.97a2.079 2.079 0 0 0-2.94-2.94Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/failures.svg b/assets/icons/failures.svg
new file mode 100644
index 0000000..00f814a
--- /dev/null
+++ b/assets/icons/failures.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 2c5.523 0 10 4.478 10 10s-4.477 10-10 10S2 17.522 2 12 6.477 2 12 2Zm0 1.667c-4.595 0-8.333 3.738-8.333 8.333 0 4.595 3.738 8.333 8.333 8.333 4.595 0 8.333-3.738 8.333-8.333 0-4.595-3.738-8.333-8.333-8.333Zm-.001 10.835a.999.999 0 1 1 0 1.998.999.999 0 0 1 0-1.998ZM11.994 7a.75.75 0 0 1 .744.648l.007.101.004 4.502a.75.75 0 0 1-1.493.103l-.007-.102-.004-4.501a.75.75 0 0 1 .75-.751Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/form.svg b/assets/icons/form.svg
new file mode 100644
index 0000000..9f7c290
--- /dev/null
+++ b/assets/icons/form.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M21 6.25A3.25 3.25 0 0 0 17.75 3H6.25A3.25 3.25 0 0 0 3 6.25v11.5A3.25 3.25 0 0 0 6.25 21h5.772a6.471 6.471 0 0 1-.709-1.5H6.25a1.75 1.75 0 0 1-1.75-1.75V8.5h15v2.813a6.471 6.471 0 0 1 1.5.709V6.25ZM6.25 4.5h11.5c.966 0 1.75.784 1.75 1.75V7h-15v-.75c0-.966.784-1.75 1.75-1.75Z" fill="#000000"/><path d="M23 17.5a5.5 5.5 0 1 0-11 0 5.5 5.5 0 0 0 11 0Zm-5.5 0h2a.5.5 0 0 1 0 1H17a.5.5 0 0 1-.5-.491v-3.01a.5.5 0 0 1 1 0V17.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/fronting.svg b/assets/icons/fronting.svg
new file mode 100644
index 0000000..9c29c07
--- /dev/null
+++ b/assets/icons/fronting.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 2a7.503 7.503 0 0 1 7.179 5.321 7.5 7.5 0 1 1-9.357 9.358A7.5 7.5 0 0 1 9.5 2Zm7.486 7.038.01.22L17 9.5a7.5 7.5 0 0 1-7.962 7.486 6 6 0 1 0 7.947-7.948ZM9.5 3.5a6 6 0 0 0-2.486 11.463l-.01-.22L7 14.5a7.5 7.5 0 0 1 7.962-7.486A5.999 5.999 0 0 0 9.5 3.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/government.svg b/assets/icons/government.svg
new file mode 100644
index 0000000..1de282c
--- /dev/null
+++ b/assets/icons/government.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M13 6.25a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z" fill="#000000"/><path d="M13.032 2.325a1.75 1.75 0 0 0-2.064 0L3.547 7.74c-.978.713-.473 2.26.736 2.26H4.5v5.8A2.75 2.75 0 0 0 3 18.25v1.5c0 .413.336.75.75.75h16.5a.75.75 0 0 0 .75-.75v-1.5a2.75 2.75 0 0 0-1.5-2.45V10h.217c1.21 0 1.713-1.547.736-2.26l-7.421-5.416Zm-1.18 1.211a.25.25 0 0 1 .295 0L18.95 8.5H5.05l6.803-4.964ZM18 10v5.5h-2V10h2Zm-3.5 0v5.5h-1.75V10h1.75Zm-3.25 0v5.5H9.5V10h1.75Zm-5.5 7h12.5c.69 0 1.25.56 1.25 1.25V19h-15v-.75c0-.69.56-1.25 1.25-1.25ZM6 15.5V10h2v5.5H6Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/new.php b/assets/icons/new.php
new file mode 100644
index 0000000..cd0dded
--- /dev/null
+++ b/assets/icons/new.php
@@ -0,0 +1,3 @@
+<?php
+
+var_dump($_SERVER); \ No newline at end of file
diff --git a/assets/icons/nicknames.svg b/assets/icons/nicknames.svg
new file mode 100644
index 0000000..dab78cb
--- /dev/null
+++ b/assets/icons/nicknames.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M9.75 2h3.998a.75.75 0 0 1 .102 1.493l-.102.007H12.5v17h1.245a.75.75 0 0 1 .743.648l.007.102a.75.75 0 0 1-.648.743l-.102.007H9.75a.75.75 0 0 1-.102-1.493l.102-.007H11v-17H9.75a.75.75 0 0 1-.743-.648L9 2.75a.75.75 0 0 1 .648-.743L9.75 2h3.998H9.75Zm8.496 2.997a3.253 3.253 0 0 1 3.25 3.25l.004 7.504a3.249 3.249 0 0 1-3.064 3.246l-.186.005h-4.745v-1.5h4.803A1.749 1.749 0 0 0 20 15.751l-.003-7.505a1.753 1.753 0 0 0-1.752-1.75h-4.74v-1.5h4.74Zm-8.246 0v1.5H5.25a1.75 1.75 0 0 0-1.75 1.75v7.504c0 .967.784 1.75 1.75 1.75h4.745v1.5H5.25A3.25 3.25 0 0 1 2 15.751V8.247a3.25 3.25 0 0 1 3.25-3.25H10Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/page.svg b/assets/icons/page.svg
new file mode 100644
index 0000000..b6721e6
--- /dev/null
+++ b/assets/icons/page.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17.75 2.001a2.25 2.25 0 0 1 2.245 2.096L20 4.25v15.498a2.25 2.25 0 0 1-2.096 2.245l-.154.005H6.25a2.25 2.25 0 0 1-2.245-2.096L4 19.75V4.251a2.25 2.25 0 0 1 2.096-2.245l.154-.005h11.5Zm0 1.5H6.25a.75.75 0 0 0-.743.648l-.007.102v15.498c0 .38.282.694.648.743l.102.007h11.5a.75.75 0 0 0 .743-.648l.007-.102V4.251a.75.75 0 0 0-.648-.743L17.75 3.5Z" fill="#000000"/><path d="M7 15.75a.75.75 0 0 1 .75-.75h8.5a.75.75 0 1 1 0 1.5h-8.5a.75.75 0 0 1-.75-.75ZM7 7.75A.75.75 0 0 1 7.75 7h8.5a.75.75 0 1 1 0 1.5h-8.5A.75.75 0 0 1 7 7.75ZM7 11.75a.75.75 0 0 1 .75-.75h8.5a.75.75 0 1 1 0 1.5h-8.5a.75.75 0 0 1-.75-.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/parent.svg b/assets/icons/parent.svg
new file mode 100644
index 0000000..0ae96e2
--- /dev/null
+++ b/assets/icons/parent.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m6.747 3 10.506.002a3.752 3.752 0 0 1 3.745 3.551l.005.2v4.492a.75.75 0 0 1-1.493.102l-.007-.102V6.752c0-1.19-.925-2.165-2.096-2.245l-.154-.005L6.747 4.5a2.249 2.249 0 0 0-2.242 2.057l-.008.159.002 10.536c.001 1.19.926 2.165 2.097 2.245l.154.005h4.496a.75.75 0 0 1 .102 1.493l-.102.007H6.75a3.752 3.752 0 0 1-3.745-3.55l-.006-.2-.001-10.5.004-.203a3.749 3.749 0 0 1 3.546-3.544l.2-.005ZM9.75 9h6.504a.75.75 0 0 1 .102 1.493l-.102.007-4.694-.001 7.224 7.22a.75.75 0 0 1 .073.977l-.073.084a.75.75 0 0 1-.977.073l-.084-.073-7.223-7.22v4.691a.75.75 0 0 1-.648.743l-.102.007a.75.75 0 0 1-.743-.648L9 16.25V9.734c0-.025.002-.05.005-.076l.021-.108.035-.096.005-.012a.721.721 0 0 1 .153-.223l.044-.04.081-.06.06-.035.095-.042.067-.02.062-.013L9.72 9h6.533H9.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/parser.svg b/assets/icons/parser.svg
new file mode 100644
index 0000000..94c2068
--- /dev/null
+++ b/assets/icons/parser.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M5.25 18A3.25 3.25 0 0 1 2 14.75v-8.5A3.25 3.25 0 0 1 5.25 3h13.5A3.25 3.25 0 0 1 22 6.25v8.5A3.25 3.25 0 0 1 18.75 18h-5.738L8 21.75a1.25 1.25 0 0 1-1.999-1V18h-.75Zm7.264-1.5h6.236a1.75 1.75 0 0 0 1.75-1.75v-8.5a1.75 1.75 0 0 0-1.75-1.75H5.25A1.75 1.75 0 0 0 3.5 6.25v8.5c0 .966.784 1.75 1.75 1.75h2.249v3.75l5.015-3.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/prefix.svg b/assets/icons/prefix.svg
new file mode 100644
index 0000000..b1b71db
--- /dev/null
+++ b/assets/icons/prefix.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m19.704 12-8.492-8.727a.75.75 0 1 1 1.075-1.046l9 9.25a.75.75 0 0 1 0 1.046l-9 9.25a.75.75 0 1 1-1.075-1.046L19.705 12Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/reference.svg b/assets/icons/reference.svg
new file mode 100644
index 0000000..76e6ef0
--- /dev/null
+++ b/assets/icons/reference.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M4 6c0-.69.315-1.293.774-1.78.455-.482 1.079-.883 1.793-1.202C7.996 2.377 9.917 2 12 2c2.083 0 4.004.377 5.433 1.018.714.32 1.338.72 1.793 1.202.459.487.774 1.09.774 1.78v12c0 .69-.315 1.293-.774 1.78-.455.482-1.079.883-1.793 1.203C16.004 21.623 14.083 22 12 22c-2.083 0-4.004-.377-5.433-1.017-.714-.32-1.338-.72-1.793-1.203C4.315 19.293 4 18.69 4 18V6Zm1.5 0c0 .207.09.46.365.75.279.296.717.596 1.315.864 1.195.535 2.899.886 4.82.886 1.921 0 3.625-.35 4.82-.886.598-.268 1.036-.568 1.315-.864.275-.29.365-.543.365-.75 0-.207-.09-.46-.365-.75-.279-.296-.717-.596-1.315-.864C15.625 3.851 13.92 3.5 12 3.5c-1.921 0-3.625.35-4.82.886-.598.268-1.036.568-1.315.864-.275.29-.365.543-.365.75Zm13 2.392c-.32.22-.68.417-1.067.59C16.004 9.623 14.083 10 12 10c-2.083 0-4.004-.377-5.433-1.018a6.801 6.801 0 0 1-1.067-.59V18c0 .207.09.46.365.75.279.296.717.596 1.315.864 1.195.535 2.899.886 4.82.886 1.921 0 3.625-.35 4.82-.886.598-.268 1.036-.568 1.315-.864.275-.29.365-.543.365-.75V8.392Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/reset.svg b/assets/icons/reset.svg
new file mode 100644
index 0000000..901fbb3
--- /dev/null
+++ b/assets/icons/reset.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m15.87 2.669 4.968 4.968a2.25 2.25 0 0 1 0 3.182l-8.681 8.68 6.097.001a.75.75 0 0 1 .744.648l.006.102a.75.75 0 0 1-.648.743l-.102.007-8.41.001a2.244 2.244 0 0 1-1.714-.655l-4.968-4.969a2.25 2.25 0 0 1 0-3.182l9.526-9.526a2.25 2.25 0 0 1 3.182 0ZM5.709 11.768l-1.487 1.488a.75.75 0 0 0 0 1.06l4.969 4.969c.146.146.338.22.53.22l.029-.005.038.002a.747.747 0 0 0 .463-.217l1.487-1.487-6.03-6.03Zm8.04-8.039-6.98 6.978 6.03 6.03 6.979-6.978a.75.75 0 0 0 0-1.061l-4.969-4.969a.75.75 0 0 0-1.06 0Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/right.svg b/assets/icons/right.svg
new file mode 100644
index 0000000..3d68582
--- /dev/null
+++ b/assets/icons/right.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 2.001c5.524 0 10 4.477 10 10s-4.476 10-10 10c-5.522 0-10-4.477-10-10s4.478-10 10-10Zm0 1.5a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Zm-.352 4.053.072-.084a.75.75 0 0 1 .977-.073l.084.073 4 4a.75.75 0 0 1 .073.977l-.072.085-4.002 4a.75.75 0 0 1-1.133-.977l.073-.084 2.722-2.721H7.75a.75.75 0 0 1-.743-.648L7 12a.75.75 0 0 1 .648-.743l.102-.007h6.69l-2.72-2.72a.75.75 0 0 1-.072-.976l.072-.084-.072.084Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/rules-old.svg b/assets/icons/rules-old.svg
new file mode 100644
index 0000000..35843b3
--- /dev/null
+++ b/assets/icons/rules-old.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M14.14 2.978a2.25 2.25 0 0 0-3.412-.267L7.264 6.176a2.25 2.25 0 0 0 .342 3.463l2.01 1.339-6.873 6.743a2.51 2.51 0 1 0 3.532 3.565l6.872-6.872 1.216 1.911a2.25 2.25 0 0 0 3.49.383l3.436-3.436a2.25 2.25 0 0 0-.268-3.411l-3.888-2.828a.75.75 0 0 1-.166-.166L14.14 2.978Zm-2.35.793a.75.75 0 0 1 1.136.09l.46.632L9.068 8.81l-.63-.42a.75.75 0 0 1-.114-1.154l3.465-3.465ZM10.34 9.66l3.939-3.938 1.475 2.028c.139.19.306.358.496.497L18.21 9.67l-3.852 3.851-1.054-1.657a2.25 2.25 0 0 0-.65-.664L10.34 9.66Zm4.842 5.159 4.255-4.255.702.51a.75.75 0 0 1 .09 1.138l-3.437 3.436a.75.75 0 0 1-1.163-.127l-.447-.702Zm-2.86-1.7-7.108 7.108a1.01 1.01 0 1 1-1.42-1.435l7.096-6.963.93.62c.088.058.161.134.217.222l.285.447ZM14.75 19a.75.75 0 1 0 0 1.5h-2a.75.75 0 1 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-2a.75.75 0 0 0 0-1.5h-4.5Z" fill="#000000" opacity=".5"/></svg> \ No newline at end of file
diff --git a/assets/icons/rules.svg b/assets/icons/rules.svg
new file mode 100644
index 0000000..1dcb80a
--- /dev/null
+++ b/assets/icons/rules.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M14.14 2.978a2.25 2.25 0 0 0-3.412-.267L7.264 6.176a2.25 2.25 0 0 0 .342 3.463l2.01 1.339-6.873 6.743a2.51 2.51 0 1 0 3.532 3.565l6.872-6.872 1.216 1.911a2.25 2.25 0 0 0 3.49.383l3.436-3.436a2.25 2.25 0 0 0-.268-3.411l-3.888-2.828a.75.75 0 0 1-.166-.166L14.14 2.978Zm-2.35.793a.75.75 0 0 1 1.136.09l.46.632L9.068 8.81l-.63-.42a.75.75 0 0 1-.114-1.154l3.465-3.465ZM10.34 9.66l3.939-3.938 1.475 2.028c.139.19.306.358.496.497L18.21 9.67l-3.852 3.851-1.054-1.657a2.25 2.25 0 0 0-.65-.664L10.34 9.66Zm4.842 5.159 4.255-4.255.702.51a.75.75 0 0 1 .09 1.138l-3.437 3.436a.75.75 0 0 1-1.163-.127l-.447-.702Zm-2.86-1.7-7.108 7.108a1.01 1.01 0 1 1-1.42-1.435l7.096-6.963.93.62c.088.058.161.134.217.222l.285.447ZM14.75 19a.75.75 0 1 0 0 1.5h-2a.75.75 0 1 0 0 1.5h8.5a.75.75 0 0 0 0-1.5h-2a.75.75 0 0 0 0-1.5h-4.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/save.svg b/assets/icons/save.svg
new file mode 100644
index 0000000..47d7166
--- /dev/null
+++ b/assets/icons/save.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M3 5.75A2.75 2.75 0 0 1 5.75 3h9.964a3.25 3.25 0 0 1 2.299.952l2.035 2.035c.61.61.952 1.437.952 2.299v9.964A2.75 2.75 0 0 1 18.25 21H5.75A2.75 2.75 0 0 1 3 18.25V5.75ZM5.75 4.5c-.69 0-1.25.56-1.25 1.25v12.5c0 .69.56 1.25 1.25 1.25H6v-5.25A2.25 2.25 0 0 1 8.25 12h7.5A2.25 2.25 0 0 1 18 14.25v5.25h.25c.69 0 1.25-.56 1.25-1.25V8.286c0-.465-.184-.91-.513-1.238l-2.035-2.035a1.75 1.75 0 0 0-.952-.49V7.25a2.25 2.25 0 0 1-2.25 2.25h-4.5A2.25 2.25 0 0 1 7 7.25V4.5H5.75Zm10.75 15v-5.25a.75.75 0 0 0-.75-.75h-7.5a.75.75 0 0 0-.75.75v5.25h9Zm-8-15v2.75c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75V4.5h-6Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/score.svg b/assets/icons/score.svg
new file mode 100644
index 0000000..fce0154
--- /dev/null
+++ b/assets/icons/score.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M16.749 2h4.554l.1.014.099.028.06.026c.08.034.153.085.219.15l.04.044.044.057.054.09.039.09.019.064.014.064.009.095v4.532a.75.75 0 0 1-1.493.102l-.007-.102V4.559l-6.44 6.44a.75.75 0 0 1-.976.073L13 11 9.97 8.09l-5.69 5.689a.75.75 0 0 1-1.133-.977l.073-.084 6.22-6.22a.75.75 0 0 1 .976-.072l.084.072 3.03 2.91L19.438 3.5h-2.69a.75.75 0 0 1-.742-.648l-.007-.102a.75.75 0 0 1 .648-.743L16.75 2ZM3.75 17a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5a.75.75 0 0 1 .75-.75Zm5.75-3.25a.75.75 0 0 0-1.5 0v7.5a.75.75 0 0 0 1.5 0v-7.5ZM13.75 15a.75.75 0 0 1 .75.75v5.5a.75.75 0 0 1-1.5 0v-5.5a.75.75 0 0 1 .75-.75Zm5.75-4.25a.75.75 0 0 0-1.5 0v10.5a.75.75 0 0 0 1.5 0v-10.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/search.svg b/assets/icons/search.svg
new file mode 100644
index 0000000..bbcd5f5
--- /dev/null
+++ b/assets/icons/search.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10 2.75a7.25 7.25 0 0 1 5.63 11.819l4.9 4.9a.75.75 0 0 1-.976 1.134l-.084-.073-4.901-4.9A7.25 7.25 0 1 1 10 2.75Zm0 1.5a5.75 5.75 0 1 0 0 11.5 5.75 5.75 0 0 0 0-11.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/shield.svg b/assets/icons/shield.svg
new file mode 100644
index 0000000..fe17693
--- /dev/null
+++ b/assets/icons/shield.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M3 5.75A.75.75 0 0 1 3.75 5c2.663 0 5.258-.943 7.8-2.85a.75.75 0 0 1 .9 0C14.992 4.057 17.587 5 20.25 5a.75.75 0 0 1 .75.75V11c0 5.001-2.958 8.676-8.725 10.948a.75.75 0 0 1-.55 0C5.958 19.676 3 16 3 11V5.75Zm1.5.728V11c0 4.256 2.453 7.379 7.5 9.442 5.047-2.063 7.5-5.186 7.5-9.442V6.478c-2.577-.152-5.08-1.09-7.5-2.8-2.42 1.71-4.923 2.648-7.5 2.8Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/stats.svg b/assets/icons/stats.svg
new file mode 100644
index 0000000..ed35af6
--- /dev/null
+++ b/assets/icons/stats.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M5 4.25a.75.75 0 0 0-1.5 0v14.5c0 .966.784 1.75 1.75 1.75h14.5a.75.75 0 0 0 0-1.5H5.25a.25.25 0 0 1-.25-.25V4.25Zm9 2.5a.75.75 0 0 1 .75-.75h5.002a.75.75 0 0 1 .75.75v5.005a.75.75 0 1 1-1.5 0V8.559L13.78 13.78a.75.75 0 0 1-1.06 0l-1.97-1.97-3.22 3.22a.75.75 0 0 1-1.06-1.06l3.75-3.75a.75.75 0 0 1 1.06 0l1.97 1.97 4.69-4.69h-3.19a.75.75 0 0 1-.75-.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/time.svg b/assets/icons/time.svg
new file mode 100644
index 0000000..5b1a6b2
--- /dev/null
+++ b/assets/icons/time.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 5a8.5 8.5 0 1 1 0 17 8.5 8.5 0 0 1 0-17Zm0 1.5a7 7 0 1 0 0 14 7 7 0 0 0 0-14ZM12 8a.75.75 0 0 1 .743.648l.007.102v4.5a.75.75 0 0 1-1.493.102l-.007-.102v-4.5A.75.75 0 0 1 12 8Zm7.147-2.886.083.06 1.158.964a.75.75 0 0 1-.877 1.212l-.082-.06-1.159-.964a.75.75 0 0 1 .877-1.212ZM14.25 2.5a.75.75 0 0 1 .102 1.493L14.25 4h-4.5a.75.75 0 0 1-.102-1.493L9.75 2.5h4.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/together.svg b/assets/icons/together.svg
new file mode 100644
index 0000000..8353168
--- /dev/null
+++ b/assets/icons/together.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m19.729 3.917.05.16.552 1.922a.75.75 0 0 1-.418.893l-.096.035L9.09 10.002h11.159a.75.75 0 0 1 .743.65l.007.1v8.499a2.75 2.75 0 0 1-2.583 2.745L18.25 22H5.75a2.75 2.75 0 0 1-2.745-2.582L3 19.25v-8.392l-.522-1.821a2.75 2.75 0 0 1 1.726-3.35l.16-.052 12.014-3.445a2.75 2.75 0 0 1 3.35 1.726Zm-.23 7.585H4.5v7.749c0 .604.429 1.108.998 1.224l.124.02.128.006H18.25a1.25 1.25 0 0 0 1.244-1.122l.006-.128v-7.749ZM6.272 6.649l-1.496.43a1.25 1.25 0 0 0-.886 1.42l.029.125.344 1.201.295-.085 1.714-3.09Zm4.756-1.363-2.717.779-1.714 3.09 2.718-.778 1.713-3.091Zm4.757-1.365-2.717.78-1.714 3.09 2.717-.778 1.714-3.092Zm1.848-.233-1.521 2.74 2.568-.737-.343-1.2a1.248 1.248 0 0 0-.704-.803Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/top.svg b/assets/icons/top.svg
new file mode 100644
index 0000000..ee8f6c3
--- /dev/null
+++ b/assets/icons/top.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 27.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve">
+<path d="M12.7,10.2L12.7,10.2c0.4,0.3,0.8,0.3,1.1,0l0.7-0.7v6.7l0,0.1c0.1,0.4,0.4,0.6,0.7,0.6l0.1,0c0.4-0.1,0.6-0.4,0.6-0.7V9.6
+ l0.7,0.7l0.1,0.1c0.3,0.2,0.8,0.2,1-0.2c0.2-0.3,0.2-0.7-0.1-1l-2-2l-0.1-0.1c-0.3-0.2-0.7-0.2-1,0.1l-2,2l-0.1,0.1
+ C12.5,9.6,12.5,10,12.7,10.2L12.7,10.2z M22,12c0-5.5-4.5-10-10-10S2,6.5,2,12c0,5.5,4.5,10,10,10S22,17.5,22,12z M3.5,12
+ c0-4.7,3.8-8.5,8.5-8.5s8.5,3.8,8.5,8.5s-3.8,8.5-8.5,8.5S3.5,16.7,3.5,12z M6.2,10.2L6.2,10.2c0.4,0.3,0.8,0.3,1.1,0L8,9.6v6.7
+ l0,0.1C8.1,16.7,8.4,17,8.7,17l0.1,0c0.4-0.1,0.6-0.4,0.6-0.7V9.6l0.7,0.7l0.1,0.1c0.3,0.2,0.8,0.2,1-0.2c0.2-0.3,0.2-0.7-0.1-1
+ l-2-2L9.2,7.1C8.9,6.9,8.5,7,8.2,7.2l-2,2L6.2,9.3C6,9.6,6,10,6.2,10.2L6.2,10.2z"/>
+</svg>
diff --git a/assets/icons/toys.svg b/assets/icons/toys.svg
new file mode 100644
index 0000000..f21b085
--- /dev/null
+++ b/assets/icons/toys.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 8a.75.75 0 0 1 .743.648l.007.102v10.705l2.22-2.218a.75.75 0 0 1 .976-.073l.084.072a.75.75 0 0 1 .073.977l-.073.084-3.5 3.5a.75.75 0 0 1-.976.073l-.084-.073-3.5-3.5a.75.75 0 0 1 .976-1.133l.084.072 2.22 2.219V8.75A.75.75 0 0 1 12 8Zm0-6a7 7 0 0 1 1.75 13.78v-1.564a5.5 5.5 0 1 0-3.5 0v1.563A7 7 0 0 1 12 2Zm0 2.5a4.5 4.5 0 0 1 1.751 8.647v-1.71a3 3 0 1 0-3.5 0l-.001 1.71A4.501 4.501 0 0 1 12 4.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/travel.svg b/assets/icons/travel.svg
new file mode 100644
index 0000000..c41a26b
--- /dev/null
+++ b/assets/icons/travel.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M8.707 7.084c-1.02-.407-2.03.604-1.624 1.624l1.606 4.028a4.75 4.75 0 0 0 2.541 2.607l4.325 1.854c1.038.445 2.086-.604 1.642-1.641l-1.854-4.326a4.75 4.75 0 0 0-2.607-2.541L8.707 7.084Zm1.375 5.096-1.39-3.488 3.488 1.39a3.25 3.25 0 0 1 1.784 1.74l1.608 3.75-3.751-1.607a3.25 3.25 0 0 1-1.739-1.785Z" fill="#212121"/><path d="M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2Zm-7.75 9h-.692A8.504 8.504 0 0 1 11 3.558v.692a.75.75 0 0 0 1.5 0v-.736A8.502 8.502 0 0 1 20.442 11h-.692a.75.75 0 0 0 0 1.5h.735a8.501 8.501 0 0 1-7.985 7.985v-.735a.75.75 0 0 0-1.5 0v.692A8.502 8.502 0 0 1 3.514 12.5h.736a.75.75 0 0 0 0-1.5Z" fill="#212121"/></svg> \ No newline at end of file
diff --git a/assets/icons/tree.svg b/assets/icons/tree.svg
new file mode 100644
index 0000000..9c675fe
--- /dev/null
+++ b/assets/icons/tree.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M7.25 16a1.25 1.25 0 1 1 0 2.499 1.25 1.25 0 0 1 0-2.499Zm3.5.5h10.5a.75.75 0 0 1 .102 1.493L21.25 18h-10.5a.75.75 0 0 1-.102-1.493l.102-.007ZM3.25 11a1.25 1.25 0 1 1 0 2.499 1.25 1.25 0 0 1 0-2.499Zm3.5.5h14.5a.75.75 0 0 1 .102 1.493L21.25 13H6.75a.75.75 0 0 1-.102-1.493l.102-.007ZM3.25 6a1.25 1.25 0 1 1 0 2.499A1.25 1.25 0 0 1 3.25 6Zm3.5.5h14.5a.75.75 0 0 1 .102 1.493L21.25 8H6.75a.75.75 0 0 1-.102-1.493L6.75 6.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/uncolored/computers.svg b/assets/icons/uncolored/computers.svg
new file mode 100644
index 0000000..30f5ff9
--- /dev/null
+++ b/assets/icons/uncolored/computers.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M8.254 8.003c.967 0 1.75.784 1.75 1.75v9.5a1.75 1.75 0 0 1-1.75 1.75H3.75A1.75 1.75 0 0 1 2 19.253v-9.5c0-.966.784-1.75 1.75-1.75h4.504Zm0 1.5H3.75a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h4.504a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25ZM6.252 17a.75.75 0 0 1 .102 1.493l-.102.007h-.5a.75.75 0 0 1-.102-1.493L5.752 17h.5Zm14.997-.5a.75.75 0 0 1 .102 1.493L21.25 18H11v-1.5h10.25ZM18.25 5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 18.25 16H11v-1.5h7.25a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25H5.75a.25.25 0 0 0-.25.25L5.499 7H4v-.25C4 5.784 4.784 5 5.75 5h12.5Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/up.svg b/assets/icons/up.svg
new file mode 100644
index 0000000..094d395
--- /dev/null
+++ b/assets/icons/up.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m7.47 12.281.084.073a.75.75 0 0 0 .977-.073l2.72-2.72v6.69l.006.102a.75.75 0 0 0 .743.648l.102-.006a.75.75 0 0 0 .648-.744V9.56l2.72 2.722.085.072a.75.75 0 0 0 .977-1.133l-4-4.001-.085-.073a.75.75 0 0 0-.976.073l-4.001 4-.073.085a.75.75 0 0 0 .073.976Z" fill="#000000"/><path d="M22 12.001c0-5.523-4.476-10-10-10-5.522 0-10 4.477-10 10s4.478 10 10 10c5.524 0 10-4.477 10-10Zm-18.5 0a8.5 8.5 0 1 1 17 0 8.5 8.5 0 0 1-17 0Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/user.svg b/assets/icons/user.svg
new file mode 100644
index 0000000..45d534d
--- /dev/null
+++ b/assets/icons/user.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17.754 14a2.249 2.249 0 0 1 2.25 2.249v.575c0 .894-.32 1.76-.902 2.438-1.57 1.834-3.957 2.739-7.102 2.739-3.146 0-5.532-.905-7.098-2.74a3.75 3.75 0 0 1-.898-2.435v-.577a2.249 2.249 0 0 1 2.249-2.25h11.501Zm0 1.5H6.253a.749.749 0 0 0-.75.749v.577c0 .536.192 1.054.54 1.461 1.253 1.468 3.219 2.214 5.957 2.214s4.706-.746 5.962-2.214a2.25 2.25 0 0 0 .541-1.463v-.575a.749.749 0 0 0-.749-.75ZM12 2.004a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 1.5a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/view.svg b/assets/icons/view.svg
new file mode 100644
index 0000000..f6cd4d3
--- /dev/null
+++ b/assets/icons/view.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M4.524 6.25a.75.75 0 0 1 .75-.75H18.73a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-.75.75H5.274a.75.75 0 0 1-.75-.75v-3.5Zm1.5.75v2H17.98V7H6.024ZM14.23 11.979a.75.75 0 0 0-.75.75v4.5c0 .414.335.75.75.75h4.5a.75.75 0 0 0 .75-.75v-4.5a.75.75 0 0 0-.75-.75h-4.5Zm.75 4.5v-3h3v3h-3ZM4.524 13.25a.75.75 0 0 1 .75-.75h5.976a.75.75 0 0 1 0 1.5H5.274a.75.75 0 0 1-.75-.75ZM5.274 16a.75.75 0 0 0 0 1.5h5.976a.75.75 0 0 0 0-1.5H5.274Z" fill="#000000"/><path d="M2 5.75A2.75 2.75 0 0 1 4.75 3h14.5A2.75 2.75 0 0 1 22 5.75v12.5A2.75 2.75 0 0 1 19.25 21H4.75A2.75 2.75 0 0 1 2 18.25V5.75ZM4.75 4.5c-.69 0-1.25.56-1.25 1.25v12.5c0 .69.56 1.25 1.25 1.25h14.5c.69 0 1.25-.56 1.25-1.25V5.75c0-.69-.56-1.25-1.25-1.25H4.75Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/visibility-depends.svg b/assets/icons/visibility-depends.svg
new file mode 100644
index 0000000..03aac83
--- /dev/null
+++ b/assets/icons/visibility-depends.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.75 2A2.25 2.25 0 0 1 22 4.25v5.462a3.25 3.25 0 0 1-.952 2.298l-.026.026a6.476 6.476 0 0 0-1.43-.692l.396-.395a1.75 1.75 0 0 0 .512-1.237V4.25a.75.75 0 0 0-.75-.75h-5.465c-.465 0-.91.185-1.239.513l-8.512 8.523a1.75 1.75 0 0 0 .015 2.462l4.461 4.454a1.755 1.755 0 0 0 2.33.13c.165.487.386.947.654 1.375a3.256 3.256 0 0 1-4.043-.443L3.489 16.06a3.25 3.25 0 0 1-.003-4.596l8.5-8.51A3.25 3.25 0 0 1 14.284 2h5.465Z" fill="#000000"/><path d="M17 5.502a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3ZM23 17.5a5.5 5.5 0 1 0-11 0 5.5 5.5 0 0 0 11 0Zm-6.125 3.005a.625.625 0 1 1 1.25 0 .625.625 0 0 1-1.25 0Zm-1.228-4.548c-.011-1.137.805-1.954 1.853-1.954 1.031 0 1.853.846 1.853 1.95 0 .566-.185.913-.663 1.447l-.265.29-.101.116c-.248.292-.324.462-.324.695a.5.5 0 1 1-1 0c0-.576.187-.926.671-1.468l.265-.29.1-.113c.242-.286.317-.453.317-.677 0-.558-.38-.95-.853-.95-.494 0-.859.366-.853.945a.5.5 0 1 1-1 .01Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/visibility-private.svg b/assets/icons/visibility-private.svg
new file mode 100644
index 0000000..5572b92
--- /dev/null
+++ b/assets/icons/visibility-private.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.75 2A2.25 2.25 0 0 1 22 4.25v5.462a3.25 3.25 0 0 1-.952 2.298l-.42.42a3.513 3.513 0 0 0-.95-1.17l.31-.31a1.75 1.75 0 0 0 .512-1.238V4.25a.75.75 0 0 0-.75-.75h-5.466c-.464 0-.91.185-1.238.513l-8.512 8.523a1.75 1.75 0 0 0 .015 2.462l4.461 4.454a1.755 1.755 0 0 0 2.477 0l.513-.513v2.014a3.256 3.256 0 0 1-4.05-.439L3.49 16.06a3.25 3.25 0 0 1-.005-4.596l8.5-8.51a3.25 3.25 0 0 1 2.3-.953h5.465ZM17 5.502a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3ZM15 15h-.5a1.5 1.5 0 0 0-1.5 1.5v5a1.5 1.5 0 0 0 1.5 1.5h6a1.5 1.5 0 0 0 1.5-1.5v-5a1.5 1.5 0 0 0-1.5-1.5H20v-1a2.5 2.5 0 0 0-5 0v1Zm1.5-1a1 1 0 1 1 2 0v1h-2v-1Zm2 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/icons/visibility-public.svg b/assets/icons/visibility-public.svg
new file mode 100644
index 0000000..426047e
--- /dev/null
+++ b/assets/icons/visibility-public.svg
@@ -0,0 +1 @@
+<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.75 2A2.25 2.25 0 0 1 22 4.25v5.462a3.25 3.25 0 0 1-.952 2.298l-8.5 8.503a3.255 3.255 0 0 1-4.597.001L3.489 16.06a3.25 3.25 0 0 1-.003-4.596l8.5-8.51A3.25 3.25 0 0 1 14.284 2h5.465Zm0 1.5h-5.465c-.465 0-.91.185-1.239.513l-8.512 8.523a1.75 1.75 0 0 0 .015 2.462l4.461 4.454a1.755 1.755 0 0 0 2.477 0l8.5-8.503a1.75 1.75 0 0 0 .513-1.237V4.25a.75.75 0 0 0-.75-.75ZM17 5.502a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Z" fill="#000000"/></svg> \ No newline at end of file
diff --git a/assets/logo/newlogo-template.png b/assets/logo/newlogo-template.png
new file mode 100644
index 0000000..14d8864
--- /dev/null
+++ b/assets/logo/newlogo-template.png
Binary files differ
diff --git a/assets/logo/newlogo.png b/assets/logo/newlogo.png
index 341fe94..540f36c 100644
--- a/assets/logo/newlogo.png
+++ b/assets/logo/newlogo.png
Binary files differ
diff --git a/assets/logo/newlogo3-template.png b/assets/logo/newlogo3-template.png
new file mode 100644
index 0000000..2f67b11
--- /dev/null
+++ b/assets/logo/newlogo3-template.png
Binary files differ
diff --git a/assets/logo/newlogo3.png b/assets/logo/newlogo3.png
index a59fe3f..ec7d40b 100644
--- a/assets/logo/newlogo3.png
+++ b/assets/logo/newlogo3.png
Binary files differ
diff --git a/assets/uploads/pt-twi.png b/assets/uploads/pt-twi.png
index c56fdc9..5c589bf 100644
--- a/assets/uploads/pt-twi.png
+++ b/assets/uploads/pt-twi.png
Binary files differ
diff --git a/includes/external/photo/5-2.png b/includes/external/photo/5-2.png
new file mode 100644
index 0000000..5319d67
--- /dev/null
+++ b/includes/external/photo/5-2.png
Binary files differ
diff --git a/includes/external/photo/5.png b/includes/external/photo/5.png
new file mode 100644
index 0000000..bc6d8d8
--- /dev/null
+++ b/includes/external/photo/5.png
Binary files differ
diff --git a/includes/external/photo/canvas.png b/includes/external/photo/canvas.png
new file mode 100644
index 0000000..a6e5e8f
--- /dev/null
+++ b/includes/external/photo/canvas.png
Binary files differ
diff --git a/includes/external/photo/index.js b/includes/external/photo/index.js
new file mode 100644
index 0000000..fda0163
--- /dev/null
+++ b/includes/external/photo/index.js
@@ -0,0 +1,162 @@
+const fs = require('fs');
+const cp = require('child_process');
+const child_process = require("child_process");
+const number = require('../../app.json')['signal']['raindrops'];
+
+let bottom = [
+ "jybgq",
+ "auvwc",
+ "mvaws",
+ "wnujv"
+];
+
+let ponies = [...require('../../data/gdapd/members.json').filter(i => {
+ return fs.existsSync("../../data/metadata/" + i.id + ".json") && !require("../../data/metadata/" + i.id + ".json").species.includes("human");
+}), ...require('../../data/ynmuc/members.json').filter(i => {
+ return fs.existsSync("../../data/metadata/" + i.id + ".json") && !require("../../data/metadata/" + i.id + ".json").species.includes("human");
+})];
+let columns = Math.ceil(Math.sqrt(ponies.length));
+console.log(ponies.length + " ponies, so the image will contain " + columns + "x" + columns + " ponies");
+
+let list = [];
+
+for (let pony of ponies) {
+ if (list.includes(pony.name) || bottom.includes(pony.id)) continue;
+
+ let metadata = require("../../data/metadata/" + pony.id + ".json");
+ let relations = [...(metadata.marefriends ?? []), ...(metadata.sisters ?? []), ...(metadata.caretakers ?? [])]
+
+ list.push(pony.name);
+
+ for (let relation of relations) {
+ let relationPony = ponies.filter(i => i.id === relation.split("/")[1])[0] ?? null;
+ if (relationPony) {
+ if (!list.includes(relationPony.name) && !bottom.includes(pony.id)) list.push(relationPony.name);
+ }
+ }
+}
+
+for (let id of bottom) {
+ let pony = ponies.filter(i => i.id === id)[0] ?? null;
+ if (list.includes(pony.name)) continue;
+
+ let metadata = require("../../data/metadata/" + pony.id + ".json");
+ let relations = [...(metadata.marefriends ?? []), ...(metadata.sisters ?? []), ...(metadata.caretakers ?? [])]
+
+ list.push(pony.name);
+
+ for (let relation of relations) {
+ let relationPony = ponies.filter(i => i.id === relation.split("/")[1])[0] ?? null;
+ if (relationPony) {
+ if (!list.includes(relationPony.name)) list.push(relationPony.name);
+ }
+ }
+}
+
+let lines = [];
+while (list.length > 0) lines.push(list.splice(0, columns));
+
+if (fs.existsSync("./output.png")) fs.unlinkSync("./output.png");
+
+for (let index1 in lines) {
+ process.stdout.write(index1 + ": ");
+ index1 = parseInt(index1);
+ let line = lines[index1];
+
+ let toRemove;
+
+ for (let index2 in line) {
+ index2 = parseInt(index2);
+ let cell = line[index2];
+
+ let pony = ponies.filter(i => i.name === cell)[0] ?? null;
+ process.stdout.write(pony.id);
+ if (pony) {
+ if (fs.existsSync("../../../assets/ponies/" + pony.id + ".png")) {
+ if (!fs.existsSync("./" + index1 + ".png")) {
+ cp.execFileSync("convert", ["../../../assets/ponies/" + pony.id + ".png", "-filter", "Point", "-resize", "x240", "./" + index1 + ".png"]);
+ process.stdout.write("...");
+
+ toRemove = parseInt(cp.execFileSync("identify", ["-format", "%w", "./" + index1 + ".png"]).toString()) / 2;
+ process.stdout.write("...");
+ } else {
+ let width1 = (index2 + 1) * 240;
+ let width2 = index2 * 120;
+
+ cp.execFileSync("convert", ["../../../assets/ponies/" + pony.id + ".png", "-filter", "Point", "-resize", "x240", "./temp.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["-size", width1 + "x240", "xc:transparent", "canvas.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["canvas.png", "-colorspace", "sRGB", "./temp.png", "-geometry", "+" + width2 + "+0", "-composite", "./temp.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["./" + index1 + ".png", "-background", "none", "-extent", width1 + "x240", "./" + index1 + "-2.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["./" + index1 + "-2.png", "./temp.png", "-background", "none", "-flatten", "-trim", "+repage", "./" + index1 + "-3.png"]);
+ process.stdout.write(".");
+
+ fs.unlinkSync("./" + index1 + "-2.png");
+ fs.unlinkSync("./" + index1 + ".png");
+ fs.renameSync("./" + index1 + "-3.png", "./" + index1 + ".png");
+ process.stdout.write(".");
+ }
+
+ process.stdout.write(", ");
+ }
+ }
+ }
+
+ if (!fs.existsSync("./output.png")) {
+ cp.execFileSync("convert", ["./" + index1 + ".png", "./output.png"]);
+ process.stdout.write("....");
+ fs.unlinkSync("./" + index1 + ".png");
+ process.stdout.write("...");
+ } else {
+ let height1 = (index1 + 1) * 480;
+ let height2 = index1 * 120;
+
+ cp.execFileSync("convert", ["./" + index1 + ".png", "-filter", "Point", "-resize", "x240", "./temp.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["-size", (columns * 240) + "x" + height1, "xc:transparent", "canvas.png"]);
+ process.stdout.write(".");
+
+ cp.execFileSync("convert", ["canvas.png", "-colorspace", "sRGB", "./temp.png", "-geometry", "+0+" + height2, "-composite", "./temp.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["./output.png", "-background", "none", "-extent", (columns * 240) + "x" + height1, "./output-2.png"]);
+ process.stdout.write(".");
+ cp.execFileSync("convert", ["./output-2.png", "./temp.png", "-background", "none", "-gravity", "Center", "-flatten", "-trim", "+repage", "./output-3.png"]);
+ process.stdout.write(".");
+
+ fs.unlinkSync("./output-2.png");
+ fs.unlinkSync("./output.png");
+ fs.unlinkSync("./temp.png");
+ fs.unlinkSync("./" + index1 + ".png");
+ fs.unlinkSync("./canvas.png");
+ process.stdout.write(".");
+
+ fs.renameSync("./output-3.png", "./output.png");
+ process.stdout.write(".");
+ }
+
+ process.stdout.write("\n");
+}
+
+
+process.stdout.write(".");
+let dimensions = cp.execFileSync("identify", ["-format", "%wx%h", "./output.png"]).toString();
+process.stdout.write(".");
+let highest = Math.max(...dimensions.split("x").map(i => parseInt(i))) + 200;
+cp.execFileSync("convert", ["./output.png", "-background", "none", "-gravity", "Center", "-extent", highest + "x" + highest, "./output-2.png"]);
+process.stdout.write(".");
+cp.execFileSync("magick", ["-size", highest + "x" + highest, "-define", "gradient:direction=North", "gradient:#6acc28-#72ace5", "-colorspace", "sRGB", "gradient.png"]);
+process.stdout.write(".");
+cp.execFileSync("convert", ["./gradient.png", "./output-2.png", "-colorspace", "sRGB", "-flatten", "./output.png"]);
+process.stdout.write(".");
+fs.unlinkSync("gradient.png");
+fs.unlinkSync("output-2.png");
+process.stdout.write(".");
+child_process.execFileSync("signal-cli", [ "-a", number, "updateGroup", "--group", "Im1iOlG3TxtiwAad+aVPJ6RsdSN3YCQauz1SmYiMqA8=", "--avatar", __dirname + "/output.png" ]);
+process.stdout.write(".");
+child_process.execFileSync("signal-cli", [ "-a", number, "sendSyncRequest" ]);
+process.stdout.write(".");
+
+console.log("\nComplete!"); \ No newline at end of file
diff --git a/includes/external/photo/output.png b/includes/external/photo/output.png
new file mode 100644
index 0000000..81e14c9
--- /dev/null
+++ b/includes/external/photo/output.png
Binary files differ
diff --git a/includes/external/photo/run.sh b/includes/external/photo/run.sh
new file mode 100644
index 0000000..19c9c11
--- /dev/null
+++ b/includes/external/photo/run.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+rm *.png
+nice -n 19 node index.js \ No newline at end of file
diff --git a/includes/external/photo/temp.png b/includes/external/photo/temp.png
new file mode 100644
index 0000000..ece0ab8
--- /dev/null
+++ b/includes/external/photo/temp.png
Binary files differ