Repository: Textualize/textual

Issue:
Placeholder width can't be set to `auto`
Because of the (convoluted 🤪) way in which I implemented `Placeholder`, turns out you can't set its width to `auto`, otherwise the placeholder collapses.

E.g., if you run the app below, you will have an empty screen:

```py
from textual.app import App
from textual.widgets import Placeholder

class MyApp(App):
    CSS = """
    Placeholder { width: auto; }
    """

    def compose(self):
        yield Placeholder()
```


Discussion:
We found the following entry in the [FAQ](https://github.com/textualize/textual/blob/main/FAQ.md) which you may find helpful:


- [How do I center a widget in a screen?](https://github.com/textualize/textual/blob/main/FAQ.md#how-do-i-center-a-widget-in-a-screen)

Feel free to close this issue if you found an answer in the FAQ. Otherwise, please give us a little time to review.

This is an automated reply, generated by [FAQtory](https://github.com/willmcgugan/faqtory)

Resolving patch:
diff --git a/src/textual/widgets/_placeholder.py b/src/textual/widgets/_placeholder.py
--- a/src/textual/widgets/_placeholder.py
+++ b/src/textual/widgets/_placeholder.py
@@ -3,7 +3,6 @@
 from itertools import cycle
 
 from .. import events
-from ..containers import Container
 from ..css._error_tools import friendly_list
 from ..reactive import Reactive, reactive
 from ..widget import Widget, RenderResult
@@ -36,19 +35,10 @@
 
 
 class InvalidPlaceholderVariant(Exception):
-    pass
+    """Raised when an invalid Placeholder variant is set."""
 
 
-class _PlaceholderLabel(Widget):
-    def __init__(self, content, classes) -> None:
-        super().__init__(classes=classes)
-        self._content = content
-
-    def render(self) -> RenderResult:
-        return self._content
-
-
-class Placeholder(Container):
+class Placeholder(Widget):
     """A simple placeholder widget to use before you build your custom widgets.
 
     This placeholder has a couple of variants that show different data.
@@ -63,44 +53,24 @@ class Placeholder(Container):
 
     DEFAULT_CSS = """
     Placeholder {
-        align: center middle;
+        content-align: center middle;
         overflow: hidden;
+        color: $text;
     }
 
     Placeholder.-text {
         padding: 1;
     }
-
-    _PlaceholderLabel {
-        height: auto;
-        color: $text;
-    }
-
-    Placeholder > _PlaceholderLabel {
-        content-align: center middle;
-    }
-
-    Placeholder.-default > _PlaceholderLabel.-size,
-    Placeholder.-default > _PlaceholderLabel.-text,
-    Placeholder.-size    > _PlaceholderLabel.-default,
-    Placeholder.-size    > _PlaceholderLabel.-text,
-    Placeholder.-text    > _PlaceholderLabel.-default,
-    Placeholder.-text    > _PlaceholderLabel.-size {
-        display: none;
-    }
-
-    Placeholder.-default > _PlaceholderLabel.-default,
-    Placeholder.-size    > _PlaceholderLabel.-size,
-    Placeholder.-text    > _PlaceholderLabel.-text {
-        display: block;
-    }
     """
+
     # Consecutive placeholders get assigned consecutive colors.
     _COLORS = cycle(_PLACEHOLDER_BACKGROUND_COLORS)
     _SIZE_RENDER_TEMPLATE = "[b]{} x {}[/b]"
 
     variant: Reactive[PlaceholderVariant] = reactive("default")
 
+    _renderables: dict[PlaceholderVariant, RenderResult]
+
     @classmethod
     def reset_color_cycle(cls) -> None:
         """Reset the placeholder background color cycle."""
@@ -128,27 +98,14 @@ def __init__(
             classes (str | None, optional): A space separated string with the CSS classes
                 of the placeholder, if any. Defaults to None.
         """
-        # Create and cache labels for all the variants.
-        self._default_label = _PlaceholderLabel(
-            label if label else f"#{id}" if id else "Placeholder",
-            "-default",
-        )
-        self._size_label = _PlaceholderLabel(
-            "",
-            "-size",
-        )
-        self._text_label = _PlaceholderLabel(
-            "\n\n".join(_LOREM_IPSUM_PLACEHOLDER_TEXT for _ in range(5)),
-            "-text",
-        )
-        super().__init__(
-            self._default_label,
-            self._size_label,
-            self._text_label,
-            name=name,
-            id=id,
-            classes=classes,
-        )
+        # Create and cache renderables for all the variants.
+        self._renderables = {
+            "default": label if label else f"#{id}" if id else "Placeholder",
+            "size": "",
+            "text": "\n\n".join(_LOREM_IPSUM_PLACEHOLDER_TEXT for _ in range(5)),
+        }
+
+        super().__init__(name=name, id=id, classes=classes)
 
         self.styles.background = f"{next(Placeholder._COLORS)} 50%"
 
@@ -158,6 +115,9 @@ def __init__(
         while next(self._variants_cycle) != self.variant:
             pass
 
+    def render(self) -> RenderResult:
+        return self._renderables[self.variant]
+
     def cycle_variant(self) -> None:
         """Get the next variant in the cycle."""
         self.variant = next(self._variants_cycle)
@@ -183,6 +143,6 @@ def on_click(self) -> None:
 
     def on_resize(self, event: events.Resize) -> None:
         """Update the placeholder "size" variant with the new placeholder size."""
-        self._size_label._content = self._SIZE_RENDER_TEMPLATE.format(*self.size)
+        self._renderables["size"] = self._SIZE_RENDER_TEMPLATE.format(*self.size)
         if self.variant == "size":
-            self._size_label.refresh(layout=True)
+            self.refresh(layout=True)


Test patch:
diff --git a/tests/snapshot_tests/__snapshots__/test_snapshots.ambr b/tests/snapshot_tests/__snapshots__/test_snapshots.ambr
--- a/tests/snapshot_tests/__snapshots__/test_snapshots.ambr
+++ b/tests/snapshot_tests/__snapshots__/test_snapshots.ambr
@@ -7800,145 +7800,142 @@
           font-weight: 700;
       }
   
-      .terminal-2023815619-matrix {
+      .terminal-1570661136-matrix {
           font-family: Fira Code, monospace;
           font-size: 20px;
           line-height: 24.4px;
           font-variant-east-asian: full-width;
       }
   
-      .terminal-2023815619-title {
+      .terminal-1570661136-title {
           font-size: 18px;
           font-weight: bold;
           font-family: arial;
       }
   
-      .terminal-2023815619-r1 { fill: #e8e0e7 }
-  .terminal-2023815619-r2 { fill: #c5c8c6 }
-  .terminal-2023815619-r3 { fill: #eae3e5 }
-  .terminal-2023815619-r4 { fill: #ede6e6 }
-  .terminal-2023815619-r5 { fill: #efe9e4 }
-  .terminal-2023815619-r6 { fill: #efeedf }
-  .terminal-2023815619-r7 { fill: #e9eee5 }
-  .terminal-2023815619-r8 { fill: #e4eee8 }
-  .terminal-2023815619-r9 { fill: #dfebed }
-  .terminal-2023815619-r10 { fill: #e2edeb }
-  .terminal-2023815619-r11 { fill: #e4eee8;font-weight: bold }
-  .terminal-2023815619-r12 { fill: #dfebed;font-weight: bold }
-  .terminal-2023815619-r13 { fill: #e3e6eb }
-  .terminal-2023815619-r14 { fill: #dfe9ed }
-  .terminal-2023815619-r15 { fill: #e3e6eb;font-weight: bold }
-  .terminal-2023815619-r16 { fill: #e6e3e9 }
+      .terminal-1570661136-r1 { fill: #c5c8c6 }
+  .terminal-1570661136-r2 { fill: #eae3e5 }
+  .terminal-1570661136-r3 { fill: #e8e0e7 }
+  .terminal-1570661136-r4 { fill: #efe9e4 }
+  .terminal-1570661136-r5 { fill: #ede6e6 }
+  .terminal-1570661136-r6 { fill: #efeedf }
+  .terminal-1570661136-r7 { fill: #e9eee5 }
+  .terminal-1570661136-r8 { fill: #e2edeb }
+  .terminal-1570661136-r9 { fill: #e4eee8;font-weight: bold }
+  .terminal-1570661136-r10 { fill: #dfebed;font-weight: bold }
+  .terminal-1570661136-r11 { fill: #dfe9ed }
+  .terminal-1570661136-r12 { fill: #e3e6eb;font-weight: bold }
+  .terminal-1570661136-r13 { fill: #e6e3e9 }
       </style>
   
       <defs>
-      <clipPath id="terminal-2023815619-clip-terminal">
+      <clipPath id="terminal-1570661136-clip-terminal">
         <rect x="0" y="0" width="975.0" height="584.5999999999999" />
       </clipPath>
-      <clipPath id="terminal-2023815619-line-0">
+      <clipPath id="terminal-1570661136-line-0">
       <rect x="0" y="1.5" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-1">
+  <clipPath id="terminal-1570661136-line-1">
       <rect x="0" y="25.9" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-2">
+  <clipPath id="terminal-1570661136-line-2">
       <rect x="0" y="50.3" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-3">
+  <clipPath id="terminal-1570661136-line-3">
       <rect x="0" y="74.7" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-4">
+  <clipPath id="terminal-1570661136-line-4">
       <rect x="0" y="99.1" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-5">
+  <clipPath id="terminal-1570661136-line-5">
       <rect x="0" y="123.5" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-6">
+  <clipPath id="terminal-1570661136-line-6">
       <rect x="0" y="147.9" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-7">
+  <clipPath id="terminal-1570661136-line-7">
       <rect x="0" y="172.3" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-8">
+  <clipPath id="terminal-1570661136-line-8">
       <rect x="0" y="196.7" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-9">
+  <clipPath id="terminal-1570661136-line-9">
       <rect x="0" y="221.1" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-10">
+  <clipPath id="terminal-1570661136-line-10">
       <rect x="0" y="245.5" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-11">
+  <clipPath id="terminal-1570661136-line-11">
       <rect x="0" y="269.9" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-12">
+  <clipPath id="terminal-1570661136-line-12">
       <rect x="0" y="294.3" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-13">
+  <clipPath id="terminal-1570661136-line-13">
       <rect x="0" y="318.7" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-14">
+  <clipPath id="terminal-1570661136-line-14">
       <rect x="0" y="343.1" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-15">
+  <clipPath id="terminal-1570661136-line-15">
       <rect x="0" y="367.5" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-16">
+  <clipPath id="terminal-1570661136-line-16">
       <rect x="0" y="391.9" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-17">
+  <clipPath id="terminal-1570661136-line-17">
       <rect x="0" y="416.3" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-18">
+  <clipPath id="terminal-1570661136-line-18">
       <rect x="0" y="440.7" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-19">
+  <clipPath id="terminal-1570661136-line-19">
       <rect x="0" y="465.1" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-20">
+  <clipPath id="terminal-1570661136-line-20">
       <rect x="0" y="489.5" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-21">
+  <clipPath id="terminal-1570661136-line-21">
       <rect x="0" y="513.9" width="976" height="24.65"/>
               </clipPath>
-  <clipPath id="terminal-2023815619-line-22">
+  <clipPath id="terminal-1570661136-line-22">
       <rect x="0" y="538.3" width="976" height="24.65"/>
               </clipPath>
       </defs>
   
-      <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="992" height="633.6" rx="8"/><text class="terminal-2023815619-title" fill="#c5c8c6" text-anchor="middle" x="496" y="27">PlaceholderApp</text>
+      <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="992" height="633.6" rx="8"/><text class="terminal-1570661136-title" fill="#c5c8c6" text-anchor="middle" x="496" y="27">PlaceholderApp</text>
               <g transform="translate(26,22)">
               <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
               <circle cx="22" cy="0" r="7" fill="#febc2e"/>
               <circle cx="44" cy="0" r="7" fill="#28c840"/>
               </g>
           
-      <g transform="translate(9, 41)" clip-path="url(#terminal-2023815619-clip-terminal)">
-      <rect fill="#53174a" x="0" y="1.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="1.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="1.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="1.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="25.9" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="25.9" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="610" y="25.9" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="854" y="25.9" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="50.3" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="61" y="50.3" width="366" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="427" y="50.3" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="50.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="74.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="74.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="74.7" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="732" y="74.7" width="97.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="829.6" y="74.7" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="866.2" y="74.7" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="99.1" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="99.1" width="97.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="585.6" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="622.2" y="99.1" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="732" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="768.6" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="805.2" y="99.1" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="99.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="99.1" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="123.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="123.5" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="732" y="123.5" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="123.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="123.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="866.2" y="123.5" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="147.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="147.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="147.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="147.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="147.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="172.3" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="172.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="172.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="172.3" width="268.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="597.8" y="172.3" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="172.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="172.3" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="122" y="196.7" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="195.2" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="196.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="196.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="196.7" width="219.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="549" y="196.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="196.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="768.6" y="196.7" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="841.8" y="196.7" width="134.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="221.1" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="221.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="221.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="221.1" width="280.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="610" y="221.1" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="221.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="221.1" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="245.5" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="245.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="245.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="245.5" width="305" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="245.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="245.5" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="269.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="269.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="269.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="294.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="294.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="294.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="318.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="318.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="318.7" width="341.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="353.8" y="318.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="318.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="318.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="343.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="343.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="343.1" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="343.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="343.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="343.1" width="207.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="695.4" y="343.1" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="768.6" y="343.1" width="207.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="367.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="367.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="367.5" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="367.5" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="367.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="367.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="391.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="391.9" width="451.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="463.6" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="391.9" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="416.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="416.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="416.3" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="416.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="416.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="440.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="440.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="440.7" width="402.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="414.8" y="440.7" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="440.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="440.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="465.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="465.1" width="402.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="414.8" y="465.1" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="465.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="465.1" width="341.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="841.8" y="465.1" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="489.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="489.5" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="489.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="489.5" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="927.2" y="489.5" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="513.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="513.9" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="513.9" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="513.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="513.9" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="927.2" y="513.9" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="538.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="538.3" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="538.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="538.3" width="451.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="951.6" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="562.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="562.7" width="488" height="24.65" shape-rendering="crispEdges"/>
-      <g class="terminal-2023815619-matrix">
-      <text class="terminal-2023815619-r2" x="976" y="20" textLength="12.2" clip-path="url(#terminal-2023815619-line-0)">
-  </text><text class="terminal-2023815619-r3" x="610" y="44.4" textLength="244" clip-path="url(#terminal-2023815619-line-1)">Placeholder&#160;p2&#160;here!</text><text class="terminal-2023815619-r2" x="976" y="44.4" textLength="12.2" clip-path="url(#terminal-2023815619-line-1)">
-  </text><text class="terminal-2023815619-r1" x="61" y="68.8" textLength="366" clip-path="url(#terminal-2023815619-line-2)">This&#160;is&#160;a&#160;custom&#160;label&#160;for&#160;p1.</text><text class="terminal-2023815619-r2" x="976" y="68.8" textLength="12.2" clip-path="url(#terminal-2023815619-line-2)">
-  </text><text class="terminal-2023815619-r5" x="829.6" y="93.2" textLength="36.6" clip-path="url(#terminal-2023815619-line-3)">#p4</text><text class="terminal-2023815619-r2" x="976" y="93.2" textLength="12.2" clip-path="url(#terminal-2023815619-line-3)">
-  </text><text class="terminal-2023815619-r4" x="585.6" y="117.6" textLength="36.6" clip-path="url(#terminal-2023815619-line-4)">#p3</text><text class="terminal-2023815619-r6" x="768.6" y="117.6" textLength="36.6" clip-path="url(#terminal-2023815619-line-4)">#p5</text><text class="terminal-2023815619-r7" x="854" y="117.6" textLength="122" clip-path="url(#terminal-2023815619-line-4)">Placeholde</text><text class="terminal-2023815619-r2" x="976" y="117.6" textLength="12.2" clip-path="url(#terminal-2023815619-line-4)">
-  </text><text class="terminal-2023815619-r7" x="854" y="142" textLength="12.2" clip-path="url(#terminal-2023815619-line-5)">r</text><text class="terminal-2023815619-r2" x="976" y="142" textLength="12.2" clip-path="url(#terminal-2023815619-line-5)">
-  </text><text class="terminal-2023815619-r2" x="976" y="166.4" textLength="12.2" clip-path="url(#terminal-2023815619-line-6)">
-  </text><text class="terminal-2023815619-r10" x="329.4" y="190.8" textLength="268.4" clip-path="url(#terminal-2023815619-line-7)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;</text><text class="terminal-2023815619-r2" x="976" y="190.8" textLength="12.2" clip-path="url(#terminal-2023815619-line-7)">
-  </text><text class="terminal-2023815619-r11" x="122" y="215.2" textLength="73.2" clip-path="url(#terminal-2023815619-line-8)">26&#160;x&#160;6</text><text class="terminal-2023815619-r10" x="329.4" y="215.2" textLength="219.6" clip-path="url(#terminal-2023815619-line-8)">amet,&#160;consectetur&#160;</text><text class="terminal-2023815619-r12" x="768.6" y="215.2" textLength="73.2" clip-path="url(#terminal-2023815619-line-8)">27&#160;x&#160;6</text><text class="terminal-2023815619-r2" x="976" y="215.2" textLength="12.2" clip-path="url(#terminal-2023815619-line-8)">
-  </text><text class="terminal-2023815619-r10" x="329.4" y="239.6" textLength="280.6" clip-path="url(#terminal-2023815619-line-9)">adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-2023815619-r2" x="976" y="239.6" textLength="12.2" clip-path="url(#terminal-2023815619-line-9)">
-  </text><text class="terminal-2023815619-r10" x="329.4" y="264" textLength="305" clip-path="url(#terminal-2023815619-line-10)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;</text><text class="terminal-2023815619-r2" x="976" y="264" textLength="12.2" clip-path="url(#terminal-2023815619-line-10)">
-  </text><text class="terminal-2023815619-r2" x="976" y="288.4" textLength="12.2" clip-path="url(#terminal-2023815619-line-11)">
-  </text><text class="terminal-2023815619-r2" x="976" y="312.8" textLength="12.2" clip-path="url(#terminal-2023815619-line-12)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="337.2" textLength="341.6" clip-path="url(#terminal-2023815619-line-13)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;amet,&#160;</text><text class="terminal-2023815619-r2" x="976" y="337.2" textLength="12.2" clip-path="url(#terminal-2023815619-line-13)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="361.6" textLength="427" clip-path="url(#terminal-2023815619-line-14)">consectetur&#160;adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-2023815619-r15" x="695.4" y="361.6" textLength="73.2" clip-path="url(#terminal-2023815619-line-14)">40&#160;x&#160;6</text><text class="terminal-2023815619-r2" x="976" y="361.6" textLength="12.2" clip-path="url(#terminal-2023815619-line-14)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="386" textLength="427" clip-path="url(#terminal-2023815619-line-15)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;accumsan.&#160;</text><text class="terminal-2023815619-r2" x="976" y="386" textLength="12.2" clip-path="url(#terminal-2023815619-line-15)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="410.4" textLength="451.4" clip-path="url(#terminal-2023815619-line-16)">Suspendisse&#160;bibendum&#160;nec&#160;libero&#160;quis&#160;</text><text class="terminal-2023815619-r2" x="976" y="410.4" textLength="12.2" clip-path="url(#terminal-2023815619-line-16)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="434.8" textLength="463.6" clip-path="url(#terminal-2023815619-line-17)">gravida.&#160;Phasellus&#160;id&#160;eleifend&#160;ligula.</text><text class="terminal-2023815619-r2" x="976" y="434.8" textLength="12.2" clip-path="url(#terminal-2023815619-line-17)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="459.2" textLength="402.6" clip-path="url(#terminal-2023815619-line-18)">Nullam&#160;imperdiet&#160;sem&#160;tellus,&#160;sed&#160;</text><text class="terminal-2023815619-r2" x="976" y="459.2" textLength="12.2" clip-path="url(#terminal-2023815619-line-18)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="483.6" textLength="402.6" clip-path="url(#terminal-2023815619-line-19)">vehicula&#160;nisl&#160;faucibus&#160;sit&#160;amet.&#160;</text><text class="terminal-2023815619-r16" x="500.2" y="483.6" textLength="341.6" clip-path="url(#terminal-2023815619-line-19)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;amet,&#160;</text><text class="terminal-2023815619-r2" x="976" y="483.6" textLength="12.2" clip-path="url(#terminal-2023815619-line-19)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="508" textLength="463.6" clip-path="url(#terminal-2023815619-line-20)">Praesent&#160;iaculis&#160;tempor&#160;ultricies.&#160;Sed</text><text class="terminal-2023815619-r16" x="500.2" y="508" textLength="427" clip-path="url(#terminal-2023815619-line-20)">consectetur&#160;adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-2023815619-r2" x="976" y="508" textLength="12.2" clip-path="url(#terminal-2023815619-line-20)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="532.4" textLength="427" clip-path="url(#terminal-2023815619-line-21)">lacinia,&#160;tellus&#160;id&#160;rutrum&#160;lacinia,&#160;</text><text class="terminal-2023815619-r16" x="500.2" y="532.4" textLength="427" clip-path="url(#terminal-2023815619-line-21)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;accumsan.&#160;</text><text class="terminal-2023815619-r2" x="976" y="532.4" textLength="12.2" clip-path="url(#terminal-2023815619-line-21)">
-  </text><text class="terminal-2023815619-r14" x="12.2" y="556.8" textLength="463.6" clip-path="url(#terminal-2023815619-line-22)">sapien&#160;sapien&#160;congue&#160;mauris,&#160;sit&#160;amet&#160;</text><text class="terminal-2023815619-r16" x="500.2" y="556.8" textLength="451.4" clip-path="url(#terminal-2023815619-line-22)">Suspendisse&#160;bibendum&#160;nec&#160;libero&#160;quis&#160;</text><text class="terminal-2023815619-r2" x="976" y="556.8" textLength="12.2" clip-path="url(#terminal-2023815619-line-22)">
+      <g transform="translate(9, 41)" clip-path="url(#terminal-1570661136-clip-terminal)">
+      <rect fill="#53174a" x="0" y="1.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="1.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="25.9" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="25.9" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="610" y="25.9" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="854" y="25.9" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="50.3" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="61" y="50.3" width="366" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="427" y="50.3" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#642839" x="488" y="50.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="74.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="74.7" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="732" y="74.7" width="97.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="829.6" y="74.7" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#865b31" x="866.2" y="74.7" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="99.1" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="99.1" width="97.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="585.6" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="622.2" y="99.1" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="732" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="768.6" y="99.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="805.2" y="99.1" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="99.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="99.1" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#53174a" x="0" y="123.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#754242" x="488" y="123.5" width="244" height="24.65" shape-rendering="crispEdges"/><rect fill="#867d0f" x="732" y="123.5" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="123.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="854" y="123.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#5b7d39" x="866.2" y="123.5" width="109.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="147.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="147.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="147.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="172.3" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="172.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="172.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="172.3" width="268.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="597.8" y="172.3" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="172.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="172.3" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="122" y="196.7" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="195.2" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="196.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="196.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="196.7" width="219.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="549" y="196.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="196.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="196.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="768.6" y="196.7" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="841.8" y="196.7" width="134.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="221.1" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="221.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="221.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="221.1" width="280.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="610" y="221.1" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="221.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="221.1" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="245.5" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="245.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="245.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="329.4" y="245.5" width="305" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="634.4" y="245.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="245.5" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#317d53" x="0" y="269.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#20756c" x="317.2" y="269.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f6c75" x="646.6" y="269.9" width="329.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="294.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="294.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="318.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="318.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="318.7" width="341.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="353.8" y="318.7" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="318.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="318.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="343.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="343.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="343.1" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="343.1" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="343.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="343.1" width="207.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="695.4" y="343.1" width="73.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="768.6" y="343.1" width="207.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="367.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="367.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="367.5" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="367.5" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="367.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="367.5" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="391.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="391.9" width="451.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="463.6" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="391.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="391.9" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="416.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="416.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="416.3" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="416.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#28426c" x="488" y="416.3" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="440.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="440.7" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="440.7" width="402.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="414.8" y="440.7" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="440.7" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="440.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="465.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="465.1" width="402.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="414.8" y="465.1" width="61" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="465.1" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="465.1" width="341.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="841.8" y="465.1" width="122" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="465.1" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="489.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="489.5" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="489.5" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="489.5" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="927.2" y="489.5" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="489.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="513.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="513.9" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="439.2" y="513.9" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="513.9" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="513.9" width="427" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="927.2" y="513.9" width="36.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="513.9" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="538.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="12.2" y="538.3" width="463.6" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="475.8" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="538.3" width="0" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="500.2" y="538.3" width="451.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="951.6" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="963.8" y="538.3" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#0f5b75" x="0" y="562.7" width="488" height="24.65" shape-rendering="crispEdges"/><rect fill="#42285b" x="488" y="562.7" width="488" height="24.65" shape-rendering="crispEdges"/>
+      <g class="terminal-1570661136-matrix">
+      <text class="terminal-1570661136-r1" x="976" y="20" textLength="12.2" clip-path="url(#terminal-1570661136-line-0)">
+  </text><text class="terminal-1570661136-r2" x="610" y="44.4" textLength="244" clip-path="url(#terminal-1570661136-line-1)">Placeholder&#160;p2&#160;here!</text><text class="terminal-1570661136-r1" x="976" y="44.4" textLength="12.2" clip-path="url(#terminal-1570661136-line-1)">
+  </text><text class="terminal-1570661136-r3" x="61" y="68.8" textLength="366" clip-path="url(#terminal-1570661136-line-2)">This&#160;is&#160;a&#160;custom&#160;label&#160;for&#160;p1.</text><text class="terminal-1570661136-r1" x="976" y="68.8" textLength="12.2" clip-path="url(#terminal-1570661136-line-2)">
+  </text><text class="terminal-1570661136-r4" x="829.6" y="93.2" textLength="36.6" clip-path="url(#terminal-1570661136-line-3)">#p4</text><text class="terminal-1570661136-r1" x="976" y="93.2" textLength="12.2" clip-path="url(#terminal-1570661136-line-3)">
+  </text><text class="terminal-1570661136-r5" x="585.6" y="117.6" textLength="36.6" clip-path="url(#terminal-1570661136-line-4)">#p3</text><text class="terminal-1570661136-r6" x="768.6" y="117.6" textLength="36.6" clip-path="url(#terminal-1570661136-line-4)">#p5</text><text class="terminal-1570661136-r7" x="854" y="117.6" textLength="122" clip-path="url(#terminal-1570661136-line-4)">Placeholde</text><text class="terminal-1570661136-r1" x="976" y="117.6" textLength="12.2" clip-path="url(#terminal-1570661136-line-4)">
+  </text><text class="terminal-1570661136-r7" x="854" y="142" textLength="12.2" clip-path="url(#terminal-1570661136-line-5)">r</text><text class="terminal-1570661136-r1" x="976" y="142" textLength="12.2" clip-path="url(#terminal-1570661136-line-5)">
+  </text><text class="terminal-1570661136-r1" x="976" y="166.4" textLength="12.2" clip-path="url(#terminal-1570661136-line-6)">
+  </text><text class="terminal-1570661136-r8" x="329.4" y="190.8" textLength="268.4" clip-path="url(#terminal-1570661136-line-7)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;</text><text class="terminal-1570661136-r1" x="976" y="190.8" textLength="12.2" clip-path="url(#terminal-1570661136-line-7)">
+  </text><text class="terminal-1570661136-r9" x="122" y="215.2" textLength="73.2" clip-path="url(#terminal-1570661136-line-8)">26&#160;x&#160;6</text><text class="terminal-1570661136-r8" x="329.4" y="215.2" textLength="219.6" clip-path="url(#terminal-1570661136-line-8)">amet,&#160;consectetur&#160;</text><text class="terminal-1570661136-r10" x="768.6" y="215.2" textLength="73.2" clip-path="url(#terminal-1570661136-line-8)">27&#160;x&#160;6</text><text class="terminal-1570661136-r1" x="976" y="215.2" textLength="12.2" clip-path="url(#terminal-1570661136-line-8)">
+  </text><text class="terminal-1570661136-r8" x="329.4" y="239.6" textLength="280.6" clip-path="url(#terminal-1570661136-line-9)">adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-1570661136-r1" x="976" y="239.6" textLength="12.2" clip-path="url(#terminal-1570661136-line-9)">
+  </text><text class="terminal-1570661136-r8" x="329.4" y="264" textLength="305" clip-path="url(#terminal-1570661136-line-10)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;</text><text class="terminal-1570661136-r1" x="976" y="264" textLength="12.2" clip-path="url(#terminal-1570661136-line-10)">
+  </text><text class="terminal-1570661136-r1" x="976" y="288.4" textLength="12.2" clip-path="url(#terminal-1570661136-line-11)">
+  </text><text class="terminal-1570661136-r1" x="976" y="312.8" textLength="12.2" clip-path="url(#terminal-1570661136-line-12)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="337.2" textLength="341.6" clip-path="url(#terminal-1570661136-line-13)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;amet,&#160;</text><text class="terminal-1570661136-r1" x="976" y="337.2" textLength="12.2" clip-path="url(#terminal-1570661136-line-13)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="361.6" textLength="427" clip-path="url(#terminal-1570661136-line-14)">consectetur&#160;adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-1570661136-r12" x="695.4" y="361.6" textLength="73.2" clip-path="url(#terminal-1570661136-line-14)">40&#160;x&#160;6</text><text class="terminal-1570661136-r1" x="976" y="361.6" textLength="12.2" clip-path="url(#terminal-1570661136-line-14)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="386" textLength="427" clip-path="url(#terminal-1570661136-line-15)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;accumsan.&#160;</text><text class="terminal-1570661136-r1" x="976" y="386" textLength="12.2" clip-path="url(#terminal-1570661136-line-15)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="410.4" textLength="451.4" clip-path="url(#terminal-1570661136-line-16)">Suspendisse&#160;bibendum&#160;nec&#160;libero&#160;quis&#160;</text><text class="terminal-1570661136-r1" x="976" y="410.4" textLength="12.2" clip-path="url(#terminal-1570661136-line-16)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="434.8" textLength="463.6" clip-path="url(#terminal-1570661136-line-17)">gravida.&#160;Phasellus&#160;id&#160;eleifend&#160;ligula.</text><text class="terminal-1570661136-r1" x="976" y="434.8" textLength="12.2" clip-path="url(#terminal-1570661136-line-17)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="459.2" textLength="402.6" clip-path="url(#terminal-1570661136-line-18)">Nullam&#160;imperdiet&#160;sem&#160;tellus,&#160;sed&#160;</text><text class="terminal-1570661136-r1" x="976" y="459.2" textLength="12.2" clip-path="url(#terminal-1570661136-line-18)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="483.6" textLength="402.6" clip-path="url(#terminal-1570661136-line-19)">vehicula&#160;nisl&#160;faucibus&#160;sit&#160;amet.&#160;</text><text class="terminal-1570661136-r13" x="500.2" y="483.6" textLength="341.6" clip-path="url(#terminal-1570661136-line-19)">Lorem&#160;ipsum&#160;dolor&#160;sit&#160;amet,&#160;</text><text class="terminal-1570661136-r1" x="976" y="483.6" textLength="12.2" clip-path="url(#terminal-1570661136-line-19)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="508" textLength="463.6" clip-path="url(#terminal-1570661136-line-20)">Praesent&#160;iaculis&#160;tempor&#160;ultricies.&#160;Sed</text><text class="terminal-1570661136-r13" x="500.2" y="508" textLength="427" clip-path="url(#terminal-1570661136-line-20)">consectetur&#160;adipiscing&#160;elit.&#160;Etiam&#160;</text><text class="terminal-1570661136-r1" x="976" y="508" textLength="12.2" clip-path="url(#terminal-1570661136-line-20)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="532.4" textLength="427" clip-path="url(#terminal-1570661136-line-21)">lacinia,&#160;tellus&#160;id&#160;rutrum&#160;lacinia,&#160;</text><text class="terminal-1570661136-r13" x="500.2" y="532.4" textLength="427" clip-path="url(#terminal-1570661136-line-21)">feugiat&#160;ac&#160;elit&#160;sit&#160;amet&#160;accumsan.&#160;</text><text class="terminal-1570661136-r1" x="976" y="532.4" textLength="12.2" clip-path="url(#terminal-1570661136-line-21)">
+  </text><text class="terminal-1570661136-r11" x="12.2" y="556.8" textLength="463.6" clip-path="url(#terminal-1570661136-line-22)">sapien&#160;sapien&#160;congue&#160;mauris,&#160;sit&#160;amet&#160;</text><text class="terminal-1570661136-r13" x="500.2" y="556.8" textLength="451.4" clip-path="url(#terminal-1570661136-line-22)">Suspendisse&#160;bibendum&#160;nec&#160;libero&#160;quis&#160;</text><text class="terminal-1570661136-r1" x="976" y="556.8" textLength="12.2" clip-path="url(#terminal-1570661136-line-22)">
   </text>
       </g>
       </g>