complete the Linuxwochen 2018 talk in a first version
authorRobert Kaiser <kairo@kairo.at>
Sun, 29 Apr 2018 20:13:56 +0000 (22:13 +0200)
committerRobert Kaiser <kairo@kairo.at>
Sun, 29 Apr 2018 20:13:56 +0000 (22:13 +0200)
linuxwochen2018/index.html
linuxwochen2018/mozilla_iot_illustration.png [new file with mode: 0644]
linuxwochen2018/rust-logo.svg [new file with mode: 0644]
linuxwochen2018/servo.png [new file with mode: 0644]
linuxwochen2018/slides.css
linuxwochen2018/slides.js
linuxwochen2018/web-assembly-logo.svg [new file with mode: 0644]

index e370b55..dfea7a8 100755 (executable)
@@ -158,40 +158,83 @@ Example:
 </article>
 
 <article id="rust" data-title="Rust">
-<h1><span>Programmiersprache - Rust</span></h1>
+<h1><span>Rust Language</span></h1>
 
 <div class="simplebox">
+<img src="rust-logo.svg" class="slidepic" alt="Rust logo">
+<ul>
+  <li>Systems programming language</li>
+  <li>Focus on <mark>speed</mark>, <mark>memory safety</mark> and <mark>parallelism</mark></li>
+  <li>Low-level language but prevents segmentation faults and guarantees thread safety</li>
+  <li>Mozilla as founder and sponsor, active volunteer community</li>
+  <li>Used at Mozilla e.g. in Servo and Firefox Quantum</li>
+  <li><a href="https://www.rust-lang.org/">rust-lang.org</a></li>
+</ul>
+<p class="ensurepicinbox"></p>
 </div>
 </article>
 
-<article id="servo" data-title="Servo Web-Engine">
-<h1><span>Web-Engine - Servo</span></h1>
+<article id="servo" data-title="Servo">
+<h1><span>Servo Web Engine</span></h1>
 
 <div class="simplebox">
+<img src="servo.png" class="slidepic" alt="Servo logo">
+<ul>
+  <li>Experimental web engine, <mark>written in Rust</mark></li>
+  <li>Modular architecture, embeddable</li>
+  <li><mark>Memory safe</mark>: more stability &amp; security</li>
+  <li><mark>Fast</mark>: parallelism + newer algorithms</li>
+  <li>Mature modules can be integrated into Gecko (Firefox Quantum)</li>
+  <li>Possible base for a WebVR/XR runtime, etc.</li>
+  <li><a href="https://servo.org/">servo.org</a>,
+    <a href="https://research.mozilla.org/servo-engines/">research.mozilla.org/servo-engines</a></li>
+</ul>
+<p class="ensurepicinbox"></p>
 </div>
 </article>
 
 <article id="wasm" data-title="WebAssembly">
-<h1><span>WebAssembly</span></h1>
+<h1><span>WebAssembly (wasm)</span></h1>
 
 <div class="simplebox">
+<img src="web-assembly-logo.svg" class="slidepic" alt="WebAssembly logo">
+<ul>
+  <li>New, low-level, assembly-like language to run in browsers</li>
+  <li>Backward-compatible with <a href="http://asmjs.org/">asm.js</a></li>
+  <li>Good target to <mark>compile C/C++ or Rust</mark> (via
+    <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Emscripten">Emscripten</a>)
+    <mark>for the browser</mark></li>
+  <li>Enables <mark>fast compute-intensive applications</mark> (games et al.) on the web</li>
+  <li>Already supported in Firefox, Chrome, Edge, Safari</li>
+  <li><a href="http://webassembly.org/">webassembly.org</a></li>
 </div>
 </article>
 
-<article id="iot" data-title="Web of Things">
-<h1><span>IoT - Things Gateway</span></h1>
+<article id="iot" data-title="Project Things">
+<h1><span>IoT - Project Things</span></h1>
 
 <div class="simplebox">
+<img src="mozilla_iot_illustration.png" class="slidepic" alt="Project Things illustration">
+<ul>
+  <li>Experimental framework for connecting "things" to the web</li>
+  <li>Target: decentralized Internet of Things that is safe, open and interoperable</li>
+  <li><mark>Web Thing API: Proposed W3C standard</mark></li>
+  <li>Things Gateway connects existing things/protocols to the web</li>
+  <li>Cloud services are optional and configurable</li>
+  <li><mark>Giving control back to the user</mark></li>
+  <li><a href="https://iot.mozilla.org/">iot.mozilla.org</a></li>
+</ul>
+<p class="ensurepicinbox"></p>
 </div>
 </article>
 
-<article id="end" data-title="Ende">
+<article id="end" data-title="The End">
 
-<div class="simplebox">
-<h1 class="cent" style="position: relative; z-index: 3; color: #FFFFFF; font-size: 2.5em;">Fragen?</h1>
-<img src="mister_tricorder.jpg" class="sshot"
-     style="width: 100%; margin-top: -4.5em; position: relative; z-index: 1;"
-     alt="Data &amp; Mister Tricorder">
+<div class="simplebox endslidecontainer">
+<h1 class="cent endslidetext">Questions?</h1>
+<h2 class="cent endslidetext"><span><a href="https://www.mozilla.org/en-US/technology/">mozilla.org/technology</a></span></h2>
+<h3 class="cent endslidetext"><span>kairo@kairo.at</span></h3>
+<img src="mister_tricorder.jpg" class="sshot endslidepic" alt="Data &amp; Mister Tricorder">
 </div>
 </article>
 
diff --git a/linuxwochen2018/mozilla_iot_illustration.png b/linuxwochen2018/mozilla_iot_illustration.png
new file mode 100644 (file)
index 0000000..1c3cda9
Binary files /dev/null and b/linuxwochen2018/mozilla_iot_illustration.png differ
diff --git a/linuxwochen2018/rust-logo.svg b/linuxwochen2018/rust-logo.svg
new file mode 100644 (file)
index 0000000..7e589e0
--- /dev/null
@@ -0,0 +1 @@
+<svg width="348" height="348" viewBox="0 0 348 348" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><title>rust-logo-final-black</title><defs><path id="a" d="M173.993 347.904H.2V.11h347.587v347.794z"/></defs><g fill="none" fill-rule="evenodd"><mask id="b" fill="#fff"><use xlink:href="#a"/></mask><path d="M287.105 131.005c2.312-5.22 8.413-7.576 13.624-5.257 5.212 2.31 7.565 8.427 5.252 13.648-2.31 5.223-8.41 7.58-13.627 5.263-5.207-2.317-7.56-8.428-5.25-13.655zM166.22 33.72c4.122-3.943 10.658-3.79 14.6.337 3.936 4.137 3.787 10.68-.34 14.627-4.124 3.944-10.66 3.79-14.6-.34-3.94-4.13-3.79-10.675.34-14.623zM301.05 172.885c0 3.176-.117 6.323-.353 9.44H287.65c-1.303 0-1.828.857-1.828 2.137v5.99c0 14.1-7.952 17.168-14.923 17.952-6.637.744-13.994-2.778-14.9-6.838-3.915-22.018-10.438-26.72-20.74-34.844 12.78-8.118 26.082-20.094 26.082-36.12 0-17.31-11.866-28.215-19.95-33.558-11.35-7.48-23.915-8.978-27.3-8.978H79.17c18.295-20.42 43.09-34.88 71.136-40.144l15.903 16.684c3.597 3.765 9.55 3.908 13.31.31l17.797-17.024c37.286 6.945 68.853 30.155 87.046 61.995l-12.18 27.514c-2.105 4.764.042 10.333 4.794 12.443l23.45 10.414c.405 4.157.62 8.363.62 12.627zm-155.954-21.55v-23.94h42.912c2.216 0 15.65 2.56 15.65 12.61 0 8.34-10.303 11.33-18.777 11.33h-39.786zm-97.623 7.89l22.248-9.886c4.75-2.11 6.898-7.68 4.788-12.438l-4.582-10.36H87.94v81.22H51.585c-3.154-11.084-4.845-22.784-4.845-34.876 0-4.616.252-9.178.73-13.66zm12.116-28.72c2.31 5.223-.043 11.337-5.253 13.65-5.214 2.316-11.315-.043-13.628-5.263-2.312-5.223.04-11.334 5.254-13.65 5.213-2.313 11.313.04 13.626 5.264zM99.002 290.35c-5.576 1.204-11.065-2.35-12.264-7.937-1.193-5.596 2.355-11.09 7.928-12.29 5.576-1.198 11.068 2.36 12.265 7.944 1.197 5.585-2.352 11.088-7.928 12.284zm143.725-33.048c-5.087-1.09-10.09 2.15-11.18 7.244l-5.185 24.19c-15.996 7.26-33.76 11.298-52.468 11.298-19.137 0-37.287-4.236-53.57-11.803l-5.18-24.19c-1.09-5.09-6.097-8.333-11.177-7.24l-21.357 4.586c-3.964-4.08-7.652-8.427-11.042-13.016h103.917c1.173 0 1.958-.216 1.958-1.283v-36.76c0-1.074-.785-1.284-1.958-1.284h-30.39v-23.3h32.87c3 0 16.042.858 20.212 17.532 1.303 5.127 4.174 21.8 6.13 27.145 1.955 5.984 9.913 17.95 18.39 17.95h51.78c.586 0 1.217-.067 1.878-.186-3.592 4.88-7.533 9.503-11.776 13.82l-21.853-4.702zm4.958 33.554c-5.576-1.202-9.12-6.7-7.925-12.29 1.196-5.587 6.686-9.142 12.262-7.94 5.572 1.197 9.128 6.7 7.928 12.282-1.196 5.586-6.69 9.14-12.265 7.948zm97.723-121.122L330.81 160.7c-.122-1.424-.262-2.846-.415-4.258l12.548-11.703c1.276-1.187 1.847-2.95 1.502-4.657-.333-1.71-1.536-3.12-3.167-3.728l-16.04-5.998c-.402-1.39-.824-2.768-1.256-4.14l10.005-13.896c1.017-1.412 1.23-3.25.565-4.86-.668-1.606-2.116-2.755-3.838-3.035l-16.91-2.75c-.66-1.284-1.346-2.546-2.037-3.8l7.108-15.6c.728-1.588.578-3.436-.392-4.878-.967-1.45-2.605-2.296-4.353-2.23l-17.166.598c-.884-1.11-1.79-2.21-2.712-3.292l3.94-16.72c.4-1.7-.102-3.477-1.338-4.707-1.226-1.23-3.007-1.737-4.705-1.34l-16.72 3.942c-1.085-.92-2.185-1.824-3.298-2.71l.6-17.167c.068-1.737-.78-3.39-2.228-4.352-1.45-.967-3.29-1.117-4.875-.392l-15.6 7.107c-1.258-.69-2.52-1.375-3.794-2.033l-2.76-16.917c-.28-1.715-1.426-3.17-3.038-3.835-1.605-.668-3.446-.452-4.858.565l-13.903 10.01c-1.37-.437-2.745-.86-4.134-1.257l-5.998-16.043c-.604-1.632-2.017-2.83-3.728-3.174-1.708-.333-3.466.232-4.652 1.505L191.46 17.512c-1.414-.16-2.833-.3-4.255-.416l-9.038-14.604C177.253 1.01 175.635.11 173.894.11c-1.742 0-3.36.9-4.27 2.382l-9.038 14.604c-1.423.117-2.845.256-4.257.416L144.62 4.955c-1.183-1.273-2.944-1.838-4.652-1.506-1.71.342-3.12 1.54-3.728 3.173l-5.998 16.043c-1.39.398-2.764.82-4.134 1.256l-13.903-10.01c-1.412-1.016-3.253-1.232-4.86-.564-1.606.665-2.756 2.12-3.035 3.835L101.554 34.1c-1.276.658-2.538 1.342-3.798 2.033L82.16 29.026c-1.586-.725-3.434-.575-4.876.392-1.45.963-2.296 2.615-2.23 4.353l.598 17.167c-1.11.887-2.21 1.79-3.296 2.71l-16.717-3.94c-1.7-.395-3.48.11-4.707 1.34-1.236 1.23-1.738 3.007-1.34 4.705l3.936 16.72c-.912 1.084-1.82 2.184-2.706 3.293l-17.166-.598c-1.732-.05-3.383.78-4.353 2.23-.967 1.442-1.117 3.29-.392 4.878l7.107 15.6c-.69 1.254-1.376 2.516-2.033 3.8l-16.917 2.75c-1.715.28-3.167 1.43-3.835 3.034-.664 1.61-.45 3.448.565 4.86l10.01 13.897c-.44 1.372-.862 2.75-1.258 4.14l-16.046 5.998c-1.628.608-2.828 2.017-3.166 3.728-.34 1.708.23 3.47 1.505 4.656l12.55 11.702c-.16 1.412-.295 2.834-.415 4.257l-14.6 9.034C.9 170.647 0 172.266 0 174.007c0 1.74.9 3.36 2.38 4.27l14.6 9.038c.12 1.422.256 2.84.415 4.253l-12.55 11.71C3.57 204.465 3 206.222 3.34 207.93c.338 1.712 1.538 3.12 3.166 3.73l16.046 5.996c.396 1.39.818 2.768 1.257 4.14l-10.01 13.9c-1.014 1.413-1.23 3.25-.565 4.855.668 1.616 2.12 2.762 3.838 3.038l16.914 2.755c.657 1.28 1.335 2.542 2.033 3.8l-7.107 15.6c-.725 1.58-.575 3.428.392 4.874.97 1.452 2.62 2.302 4.353 2.23l17.162-.6c.89 1.114 1.79 2.21 2.71 3.298l-3.936 16.724c-.4 1.693.103 3.464 1.34 4.697 1.225 1.24 3.007 1.735 4.705 1.336l16.716-3.934c1.087.922 2.186 1.82 3.296 2.704l-.598 17.17c-.066 1.74.78 3.385 2.23 4.355 1.442.966 3.29 1.112 4.875.388l15.596-7.108c1.26.698 2.522 1.376 3.798 2.04l2.758 16.904c.28 1.72 1.43 3.177 3.034 3.84 1.608.67 3.45.45 4.86-.56l13.898-10.012c1.372.435 2.75.86 4.14 1.26l5.998 16.036c.608 1.628 2.017 2.834 3.728 3.166 1.708.346 3.47-.226 4.652-1.502l11.707-12.55c1.41.163 2.833.3 4.255.425l9.04 14.598c.91 1.475 2.527 2.38 4.27 2.38 1.74 0 3.358-.905 4.272-2.38l9.038-14.598c1.422-.126 2.84-.262 4.254-.425l11.705 12.55c1.186 1.276 2.944 1.848 4.652 1.502 1.71-.332 3.124-1.538 3.728-3.166l5.998-16.037c1.39-.397 2.768-.823 4.14-1.258l13.897 10.012c1.412 1.01 3.253 1.23 4.858.56 1.612-.663 2.758-2.12 3.037-3.84l2.76-16.903c1.274-.664 2.537-1.352 3.796-2.04l15.6 7.108c1.584.724 3.43.578 4.874-.39 1.448-.97 2.296-2.614 2.23-4.355l-.6-17.17c1.11-.883 2.21-1.78 3.297-2.704l16.72 3.933c1.697.4 3.478-.096 4.704-1.336 1.236-1.233 1.738-3.004 1.34-4.698l-3.935-16.725c.916-1.087 1.82-2.184 2.704-3.297l17.166.598c1.734.073 3.386-.777 4.353-2.23.97-1.445 1.12-3.292.392-4.874l-7.108-15.598c.695-1.26 1.376-2.522 2.037-3.8l16.91-2.756c1.722-.276 3.17-1.422 3.838-3.037.665-1.604.452-3.44-.565-4.854l-10.005-13.9c.432-1.372.854-2.75 1.256-4.14l16.04-5.997c1.63-.61 2.834-2.018 3.167-3.73.345-1.708-.226-3.465-1.502-4.652l-12.548-11.71c.153-1.412.293-2.83.416-4.253l14.598-9.038c1.482-.91 2.38-2.53 2.38-4.27 0-1.74-.898-3.36-2.38-4.273z" fill="#A81D14" style="mix-blend-mode:multiply" mask="url(#b)"/></g></svg>
\ No newline at end of file
diff --git a/linuxwochen2018/servo.png b/linuxwochen2018/servo.png
new file mode 100644 (file)
index 0000000..e2e9b67
Binary files /dev/null and b/linuxwochen2018/servo.png differ
index 384a529..af56611 100644 (file)
@@ -356,12 +356,6 @@ mark a:hover, mark a:active { color: #005E5E; }
 
 pre { margin: 0; }
 
-.ccinline {
-  border-width: 0;
-  vertical-align: bottom;
-  height: 1.75em;
-}
-
 /***** small stuff *****/
 
 .small,
@@ -385,3 +379,63 @@ ul.small > li
 
 /***** specific slides *****/
 
+/* start slide */
+.ccinline {
+  border-width: 0;
+  vertical-align: bottom;
+  height: 1.75em;
+}
+
+/* end slide */
+.endslidecontainer {
+  position: relative;
+}
+
+.endslidepic {
+  width: 100%;
+  z-index: 1;
+}
+
+.endslidetext {
+  position: absolute;
+  width: calc(100% - 2rem);
+  z-index: 3;
+}
+
+h1.endslidetext {
+  color: white;
+  font-size: 2.5em;
+}
+
+h2.endslidetext,
+h3.endslidetext {
+  font-size: 2em;
+}
+
+h2.endslidetext > span,
+h3.endslidetext > span {
+  background-color: white;
+  padding: 0 10px;
+}
+
+.endslidetext:first-child {
+  top: 1rem;
+}
+
+.endslidetext:nth-child(2) {
+  top: 11rem;
+}
+
+.endslidetext:nth-child(3) {
+  top: 21rem;
+}
+
+@media (min-resolution: 1.3dppx) {
+  .endslidetext:nth-child(2) {
+    top: 6rem;
+  }
+
+  .endslidetext:nth-child(3) {
+    top: 11rem;
+  }
+}
index cd9035c..3107289 100644 (file)
@@ -193,10 +193,21 @@ function timerFired() {
   function handleKeyPress(e) {
     e = e || event;
     switch (e.keyCode) {
+      // See https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#Constants_for_keyCode_value
       case e.DOM_VK_LEFT:
+      case e.DOM_VK_DOWN:
+      case e.DOM_VK_PAGE_DOWN:
+      case e.DOM_VK_H: //8bitdo Zero "X"
         go("prev"); break;
       case e.DOM_VK_RIGHT:
+      case e.DOM_VK_UP:
+      case e.DOM_VK_PAGE_UP:
+      case e.DOM_VK_J: //8bitdo Zero "B"
         go("next"); break;
+      case e.DOM_VK_HOME:
+        go("start"); break;
+      case e.DOM_VK_END:
+        go("toc"); break;
     }
   }
 
diff --git a/linuxwochen2018/web-assembly-logo.svg b/linuxwochen2018/web-assembly-logo.svg
new file mode 100644 (file)
index 0000000..241ff2b
--- /dev/null
@@ -0,0 +1,35 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 302.69 157.03">
+  <defs>
+    <style>
+      .cls-1 {
+        fill: #393939;
+      }
+
+      .cls-2 {
+        fill: #654ff0;
+      }
+    </style>
+  </defs>
+  <title>web-assembly-logo</title>
+  <g id="Layer_2" data-name="Layer 2">
+    <g id="Notch_-_Purple" data-name="Notch - Purple">
+      <g>
+        <path class="cls-1" d="M27,156.68H22.41l-4.34-15.24q-.28-1-.7-2.88t-.51-2.61q-.18,1.12-.57,2.9t-.66,2.66l-4.23,15.17H6.87l-3.3-12.8L.21,131.12H4.48L8.13,146a64.24,64.24,0,0,1,1.22,6.33q.19-1.49.58-3.32t.7-3l4.16-14.93h4.14l4.27,15a56.12,56.12,0,0,1,1.29,6.22A45.58,45.58,0,0,1,25.75,146l3.64-14.86h4.23Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M54.91,156.68H40.46V131.12H54.91v3.53H44.63v7h9.63v3.5H44.63v8H54.91Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M63.66,131.12h7.59q5.28,0,7.63,1.54a5.39,5.39,0,0,1,2.35,4.86,5.89,5.89,0,0,1-1.15,3.72,5.16,5.16,0,0,1-3.32,1.87v.17a6.6,6.6,0,0,1,4,2,6.06,6.06,0,0,1,1.27,4,6.56,6.56,0,0,1-2.4,5.39,10.34,10.34,0,0,1-6.69,1.95H63.66Zm4.18,10.56h4a6.88,6.88,0,0,0,3.83-.83A3.18,3.18,0,0,0,76.89,138a2.83,2.83,0,0,0-1.3-2.6,8.14,8.14,0,0,0-4.13-.8H67.84Zm0,3.39v8.09h4.44a6.54,6.54,0,0,0,4-1A3.71,3.71,0,0,0,77.57,149a3.37,3.37,0,0,0-1.36-3,7.22,7.22,0,0,0-4.14-1Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M108.87,156.68l-3.18-8.13H95.44l-3.15,8.13h-3L99.39,131h2.5l10.05,25.66Zm-4.11-10.8-3-7.92q-.58-1.5-1.19-3.69A33.24,33.24,0,0,1,99.5,138l-3,7.92Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M135.25,149.88a6.27,6.27,0,0,1-2.45,5.26,10.61,10.61,0,0,1-6.64,1.89,16.64,16.64,0,0,1-7-1.17V153a18.33,18.33,0,0,0,3.43,1,18,18,0,0,0,3.67.38,7.41,7.41,0,0,0,4.48-1.13,3.7,3.7,0,0,0,1.5-3.14,4,4,0,0,0-.53-2.18,5,5,0,0,0-1.78-1.57,24.92,24.92,0,0,0-3.8-1.62,12.14,12.14,0,0,1-5.1-3,6.68,6.68,0,0,1-1.53-4.56,5.67,5.67,0,0,1,2.22-4.7,9.23,9.23,0,0,1,5.87-1.75,17.31,17.31,0,0,1,7,1.4l-.93,2.59a15.84,15.84,0,0,0-6.15-1.33,6,6,0,0,0-3.69,1,3.34,3.34,0,0,0-1.33,2.81,4.31,4.31,0,0,0,.49,2.18,4.6,4.6,0,0,0,1.65,1.56,20.48,20.48,0,0,0,3.56,1.57,14.08,14.08,0,0,1,5.53,3.08A6.05,6.05,0,0,1,135.25,149.88Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M160.27,149.88a6.27,6.27,0,0,1-2.45,5.26,10.61,10.61,0,0,1-6.64,1.89,16.64,16.64,0,0,1-7-1.17V153a18.33,18.33,0,0,0,3.43,1,18,18,0,0,0,3.67.38,7.41,7.41,0,0,0,4.48-1.13,3.7,3.7,0,0,0,1.5-3.14,4,4,0,0,0-.53-2.18,5,5,0,0,0-1.78-1.57,24.92,24.92,0,0,0-3.8-1.62,12.14,12.14,0,0,1-5.1-3,6.68,6.68,0,0,1-1.53-4.56,5.67,5.67,0,0,1,2.22-4.7,9.23,9.23,0,0,1,5.87-1.75,17.31,17.31,0,0,1,7,1.4l-.93,2.59a15.84,15.84,0,0,0-6.15-1.33,6,6,0,0,0-3.69,1,3.34,3.34,0,0,0-1.33,2.81,4.31,4.31,0,0,0,.49,2.18,4.6,4.6,0,0,0,1.65,1.56,20.48,20.48,0,0,0,3.56,1.57,14.08,14.08,0,0,1,5.53,3.08A6.05,6.05,0,0,1,160.27,149.88Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M185.11,156.68H170.87V131.12h14.25v2.64H173.84V142h10.59v2.62H173.84V154h11.28Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M207.46,156.68,198.79,134h-.14q.24,2.69.25,6.4v16.26h-2.74V131.12h4.48l8.09,21.08h.14L217,131.12h4.44v25.56h-3V140.21q0-2.83.25-6.15h-.14l-8.74,22.62Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M233.84,131.12h7.22q5.09,0,7.36,1.52a5.37,5.37,0,0,1,2.27,4.81,5.55,5.55,0,0,1-1.27,3.75,6.1,6.1,0,0,1-3.7,1.91v.17q5.82,1,5.82,6.12a6.57,6.57,0,0,1-2.32,5.35,9.86,9.86,0,0,1-6.48,1.92h-8.92Zm3,10.94h4.89a8,8,0,0,0,4.53-1,3.81,3.81,0,0,0,1.38-3.33,3.37,3.37,0,0,0-1.54-3.1,9.61,9.61,0,0,0-4.9-1h-4.37Zm0,2.52v9.56h5.33a7.59,7.59,0,0,0,4.66-1.2,4.42,4.42,0,0,0,1.56-3.75,4,4,0,0,0-1.6-3.5,8.55,8.55,0,0,0-4.87-1.12Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M262.41,156.68V131.12h3V154h11.28v2.69Z" transform="translate(-0.21)"/>
+        <path class="cls-1" d="M292.86,143.9l6.82-12.78h3.22l-8.53,15.64v9.91h-3v-9.77l-8.51-15.79h3.25Z" transform="translate(-0.21)"/>
+      </g>
+      <g id="icon">
+        <path class="cls-2" d="M163.76,0c0,.19,0,.38,0,.58a12.34,12.34,0,0,1-24.68,0c0-.2,0-.39,0-.58H97.64V107.62H205.26V0ZM149,96.1l-5.24-25.93h-.09L138,96.1h-7.22L122.6,58h7.13l4.88,25.93h.09L140.58,58h6.67l5.28,26.25h.09L158.19,58h7L156.1,96.1Zm39.26,0-2.43-8.48H173l-1.87,8.48H164L173.22,58h11.25l11.21,38.1Z" transform="translate(-0.21)"/>
+        <polygon class="cls-2" points="177.3 67.39 174.19 81.37 183.87 81.37 180.3 67.39 177.3 67.39"/>
+      </g>
+    </g>
+  </g>
+</svg>
\ No newline at end of file