sethmlarson.dev_werkzeug.atom.xml - sfeed_tests - sfeed tests and RSS and Atom files
 (HTM) git clone git://git.codemadness.org/sfeed_tests
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       sethmlarson.dev_werkzeug.atom.xml (458966B)
       ---
            1 <?xml version="1.0" encoding="utf-8"?>
            2 <feed xmlns="http://www.w3.org/2005/Atom">
            3   <title type="text">sethmlarson.dev - Last 5 Blog Posts</title>
            4   <id>http://sethmlarson.dev/feed</id>
            5   <updated>2022-02-08T00:00:00Z</updated>
            6   <link href="http://sethmlarson.dev/" />
            7   <link href="http://sethmlarson.dev/feed" rel="self" />
            8   <generator>Werkzeug</generator>
            9   <entry xml:base="http://sethmlarson.dev/feed">
           10     <title type="text">How does UTF-8 turn “😂” into “F09F9882”?</title>
           11     <id>http://sethmlarson.dev/blog/utf-8?date=2022-02-08</id>
           12     <updated>2022-02-08T00:00:00Z</updated>
           13     <published>2022-02-08T00:00:00Z</published>
           14     <link href="http://sethmlarson.dev/blog/utf-8?date=2022-02-08" />
           15     <author>
           16       <name>Seth Michael Larson</name>
           17     </author>
           18     <content type="html">&lt;!DOCTYPE html&gt;
           19 &lt;html lang=&quot;en&quot;&gt;
           20 &lt;head&gt;
           21     &lt;meta charset=&quot;utf-8&quot;&gt;
           22     &lt;title&gt;How does UTF-8 turn “😂” into “F09F9882”?&lt;/title&gt;
           23     &lt;meta name=&quot;description&quot; content=&quot;Blogging about Python and the Internet&quot;&gt;
           24     &lt;meta name=&quot;keywords&quot; content=&quot;blog python open source http networking security&quot;&gt;
           25     &lt;meta name=&quot;author&quot; content=&quot;Seth Michael Larson&quot;&gt;
           26     &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;
           27     &lt;meta name=&quot;format-detection&quot; content=&quot;telephone=no&quot;/&gt;
           28     &lt;link rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot; title=&quot;RSS Feed&quot; href=&quot;/feed&quot;/&gt;
           29     &lt;link rel=&quot;icon&quot; href=&quot;/static/favicon.ico&quot;&gt;
           30     &lt;link rel=&quot;stylesheet&quot; href=&quot;/static/style.css&quot;&gt;
           31 
           32     &lt;meta property=&quot;og:site_name&quot; content=&quot;Seth Michael Larson&quot;/&gt;
           33     &lt;meta property=&quot;og:author&quot; content=&quot;Seth Michael Larson&quot;/&gt;
           34     &lt;meta property=&quot;og:type&quot; content=&quot;article&quot;/&gt;
           35     &lt;meta property=&quot;og:title&quot; content=&quot;How does UTF-8 turn “😂” into “F09F9882”?&quot;/&gt;
           36     &lt;meta property=&quot;og:description&quot; content=&quot;If you&amp;#39;re anything like me, you love emojis! Emojis appear like an image on the screen, but they aren&amp;#39;t an image like a PNG or JPEG. What do emojis look like to computers?
           37 
           38 
           39 &amp;amp;#xa;&amp;amp;#xa;0x820x820x980...&quot;/&gt;
           40     &lt;meta property=&quot;og:image&quot; content=&quot;http://sethmlarson.dev/static/avatar.jpeg&quot;/&gt;
           41     &lt;meta name=&quot;twitter:card&quot; content=&quot;summary&quot;/&gt;
           42     &lt;meta name=&quot;twitter:site&quot; content=&quot;@sethmlarson&quot;/&gt;
           43     &lt;meta name=&quot;twitter:creator&quot; content=&quot;@sethmlarson&quot;/&gt;
           44     &lt;meta name=&quot;twitter:title&quot; content=&quot;How does UTF-8 turn “😂” into “F09F9882”?&quot;/&gt;
           45     &lt;meta name=&quot;twitter:description&quot; content=&quot;If you&amp;#39;re anything like me, you love emojis! Emojis appear like an image on the screen, but they aren&amp;#39;t an image like a PNG or JPEG. What do emojis look like to computers?
           46 
           47 
           48 &amp;amp;#xa;&amp;amp;#xa;0x820x820x980...&quot;/&gt;
           49     &lt;meta property=&quot;og:image&quot; content=&quot;http://sethmlarson.dev/static/avatar.jpeg&quot;/&gt;
           50 
           51 &lt;/head&gt;
           52 &lt;body&gt;
           53 &lt;div class=&quot;container&quot;&gt;
           54     &lt;div class=&quot;row&quot;&gt;
           55         &lt;div class=&quot;col-6&quot;&gt;
           56             &lt;center&gt;
           57                 &lt;h1 style=&quot;margin-bottom: 0.1em; font-size: 1.8em;&quot;&gt;Seth Michael Larson&lt;/h1&gt;
           58                 &lt;span style=&quot;font-style: italic;&quot;&gt;Blogging about Python and the Internet&lt;/span&gt;
           59             &lt;/center&gt;
           60         &lt;/div&gt;
           61         &lt;div class=&quot;col-6&quot;&gt;
           62             &lt;div class=&quot;navbar-outer&quot;&gt;
           63                 &lt;div class=&quot;navbar-inner&quot;&gt;
           64                     &lt;a class=&quot;icon&quot; href=&quot;/about&quot;&gt;
           65                         &lt;svg width=&quot;2em&quot; height=&quot;2em&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 576 512&quot;&gt;
           66                             &lt;title&gt;About&lt;/title&gt;&lt;path d=&quot;M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-352 96c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H86.4C74 384 64 375.4 64 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2zM512 312c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z&quot;/&gt;
           67                         &lt;/svg&gt;
           68                     &lt;/a&gt;
           69                     &lt;a class=&quot;icon&quot; href=&quot;/blog&quot;&gt;
           70                         &lt;svg width=&quot;2em&quot; height=&quot;2em&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 512 512&quot;&gt;
           71                             &lt;title&gt;Blog&lt;/title&gt;&lt;path d=&quot;M172.2 226.8c-14.6-2.9-28.2 8.9-28.2 23.8V301c0 10.2 7.1 18.4 16.7 22 18.2 6.8 31.3 24.4 31.3 45 0 26.5-21.5 48-48 48s-48-21.5-48-48V120c0-13.3-10.7-24-24-24H24c-13.3 0-24 10.7-24 24v248c0 89.5 82.1 160.2 175 140.7 54.4-11.4 98.3-55.4 109.7-109.7 17.4-82.9-37-157.2-112.5-172.2zM209 0c-9.2-.5-17 6.8-17 16v31.6c0 8.5 6.6 15.5 15 15.9 129.4 7 233.4 112 240.9 241.5.5 8.4 7.5 15 15.9 15h32.1c9.2 0 16.5-7.8 16-17C503.4 139.8 372.2 8.6 209 0zm.3 96c-9.3-.7-17.3 6.7-17.3 16.1v32.1c0 8.4 6.5 15.3 14.8 15.9 76.8 6.3 138 68.2 144.9 145.2.8 8.3 7.6 14.7 15.9 14.7h32.2c9.3 0 16.8-8 16.1-17.3-8.4-110.1-96.5-198.2-206.6-206.7z&quot;/&gt;
           72                         &lt;/svg&gt;
           73                     &lt;/a&gt;
           74                     &lt;a class=&quot;icon&quot; href=&quot;https://twitter.com/sethmlarson&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener noreferrer&quot;&gt;
           75                         &lt;svg width=&quot;2em&quot; height=&quot;2em&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 512 512&quot;&gt;
           76                             &lt;title&gt;Twitter&lt;/title&gt;&lt;path d=&quot;M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z&quot;/&gt;
           77                         &lt;/svg&gt;
           78                     &lt;/a&gt;
           79                     &lt;a class=&quot;icon&quot; href=&quot;https://github.com/sethmlarson&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener noreferrer&quot;&gt;
           80                         &lt;svg width=&quot;2em&quot; height=&quot;2em&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 496 512&quot;&gt;
           81                             &lt;title&gt;GitHub&lt;/title&gt;&lt;path d=&quot;M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z&quot;/&gt;
           82                         &lt;/svg&gt;
           83                     &lt;/a&gt;
           84                     &lt;a class=&quot;icon&quot; href=&quot;https://linkedin.com/in/sethmlarson&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener noreferrer&quot;&gt;
           85                         &lt;svg width=&quot;2em&quot; height=&quot;2em&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 448 512&quot;&gt;
           86                             &lt;title&gt;LinkedIn&lt;/title&gt;&lt;path d=&quot;M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z&quot;/&gt;
           87                         &lt;/svg&gt;
           88                     &lt;/a&gt;
           89                 &lt;/div&gt;
           90             &lt;/div&gt;
           91         &lt;/div&gt;
           92     &lt;/div&gt;   
           93 
           94 &lt;div class=&quot;row&quot;&gt;
           95     &lt;div class=&quot;col-12&quot;&gt;
           96         &lt;h2 class=&quot;blog-title&quot; style=&quot;text-align: center&quot;&gt;How does UTF-8 turn “😂” into “F09F9882”?&lt;/h2&gt;
           97         &lt;p&gt;&lt;center&gt;Published 2022-02-08 — &lt;span class=&quot;heart&quot;&gt;❤&amp;#xFE0E&lt;/span&gt; Subscribe for more via &lt;a href=&quot;https://tinyletter.com/sethmlarson&quot;&gt;the newsletter&lt;/a&gt; or &lt;a href=&quot;/feed&quot;&gt;RSS&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;
           98     &lt;/div&gt;
           99 &lt;/div&gt;
          100 &lt;div class=&quot;row&quot;&gt;
          101     &lt;div class=&quot;col-12&quot;&gt;
          102         &lt;p&gt;If you're anything like me, you love emojis! Emojis appear like an image on the screen, but they aren't an image like a PNG or JPEG. &lt;strong&gt;What do emojis look like to computers?&lt;/strong&gt;&lt;/p&gt;
          103 
          104 &lt;p&gt;&lt;center&gt;
          105 &lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; version=&quot;1.1&quot; width=&quot;561px&quot; viewBox=&quot;-0.5 -0.5 561 121&quot; style=&quot;max-width:100%;max-height:121px;&quot;&gt;&lt;defs/&gt;&lt;g&gt;&lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;120&quot; height=&quot;120&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 60)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 60px; margin-left: -52px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;80&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;&amp;#xa;&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;280&quot; y=&quot;0&quot; width=&quot;280&quot; height=&quot;120&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 287 60)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 60px; margin-left: 228px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;287&quot; y=&quot;80&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;&amp;#xa;&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;480&quot; y=&quot;20&quot; width=&quot;60&quot; height=&quot;80&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 60px; margin-left: 481px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;82&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;510&quot; y=&quot;66&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x82&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;420&quot; y=&quot;20&quot; width=&quot;60&quot; height=&quot;80&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 60px; margin-left: 421px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;98&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;450&quot; y=&quot;66&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x98&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;360&quot; y=&quot;20&quot; width=&quot;60&quot; height=&quot;80&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 60px; margin-left: 361px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;9F&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;390&quot; y=&quot;66&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x9F&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;300&quot; y=&quot;20&quot; width=&quot;60&quot; height=&quot;80&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 60px; margin-left: 301px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;F0&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;330&quot; y=&quot;66&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0xF0&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;20&quot; y=&quot;20&quot; width=&quot;80&quot; height=&quot;80&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 60px; margin-left: 21px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 36px&quot;&gt;😂&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;60&quot; y=&quot;64&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;😂&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;140&quot; y=&quot;0&quot; width=&quot;120&quot; height=&quot;120&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 147 60)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 60px; margin-left: 88px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;147&quot; y=&quot;80&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;&amp;#xa;&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;160&quot; y=&quot;20&quot; width=&quot;80&quot; height=&quot;80&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 60px; margin-left: 161px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 24px&quot;&gt;???&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;200&quot; y=&quot;64&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;???&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 100 60 L 153.63 60&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 158.88 60 L 151.88 63.5 L 153.63 60 L 151.88 56.5 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 240 60 L 293.63 60&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 298.88 60 L 291.88 63.5 L 293.63 60 L 291.88 56.5 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;/g&gt;&lt;switch&gt;&lt;g requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;/&gt;&lt;a transform=&quot;translate(0,-5)&quot; xlink:href=&quot;https://www.diagrams.net/doc/faq/svg-export-text-problems&quot; target=&quot;_blank&quot;&gt;&lt;text text-anchor=&quot;middle&quot; font-size=&quot;10px&quot; x=&quot;50%&quot; y=&quot;100%&quot;&gt;Text is not SVG - cannot display&lt;/text&gt;&lt;/a&gt;&lt;/switch&gt;&lt;/svg&gt;
          106 &lt;/center&gt;&lt;/p&gt;
          107 
          108 &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://w3techs.com/technologies/overview/character_encoding&quot;&gt;More often than not&lt;/a&gt; the mechanism being used to turn bytes into characters and emojis on your computer is &quot;UTF-8&quot;&lt;/strong&gt;.&lt;/p&gt;
          109 
          110 &lt;p&gt;I recently learned how UTF-8 works and felt that the definition lended itself perfectly to creating diagrams explaining the implementation. I created these diagrams for my own enjoyment and wanted to share them. Hopefully this will inspire you to learn how other low-level protocols work too! &lt;a href=&quot;https://github.com/sethmlarson/utf-8-diagrams&quot;&gt;All diagrams are available on GitHub&lt;/a&gt;.&lt;/p&gt;
          111 
          112 &lt;h2&gt;What is UTF-8?&lt;/h2&gt;
          113 
          114 &lt;p&gt;UTF-8 is an encoding currently defined in &lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc3629.html&quot;&gt;RFC 3629&lt;/a&gt; (&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc2044.html&quot;&gt;first published in 1996 in RFC 2044&lt;/a&gt;) describes encoding Unicode characters into bytes. Unicode uses a concept called a &quot;&lt;a href=&quot;https://en.wikipedia.org/wiki/Code_point&quot;&gt;codepoint&lt;/a&gt;&quot; which is essentially a number that maps to a single &quot;character&quot; within the Unicode standard. Unicode codepoints are often written as hex with a &lt;code&gt;U+&lt;/code&gt; prefix. For example, the character &quot;😂&quot; is codepoint &lt;code&gt;0x1F602&lt;/code&gt; (128,514 in decimal) and would be written as &lt;code&gt;U+1F602&lt;/code&gt;.&lt;/p&gt;
          115 
          116 &lt;div class=&quot;row&quot;&gt;
          117 &lt;div class=&quot;col-6&quot;&gt;
          118 
          119 &lt;h2&gt;The 5 octets of UTF-8&lt;/h2&gt;
          120 
          121 &lt;blockquote&gt;
          122   &lt;p&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; I use the term &quot;octet&quot; in this article which means &quot;a grouping of 8 bits&quot;. Today's computers consider 8 bits to be 1 byte, but previously there were systems which used a different number of bits per &quot;byte&quot; hence the distinction. For our purposes an octet and a byte are the same thing.&lt;/p&gt;
          123 &lt;/blockquote&gt;
          124 
          125 &lt;p&gt;
          126 Every octet that can be produced using UTF-8 will fall into one of five types. The octet will either be a &quot;header&quot; octet specifying a length of 1, 2, 3, or 4 octets or a &quot;tail&quot; octet which only holds onto data. You can determine what type each individual octet is by examining the high-order bits (in this representation these bits are left-most in a block and colored green).
          127 &lt;/p&gt;
          128 
          129 &lt;p&gt;
          130 Each octet also has &quot;empty&quot; spaces for bits (visualized as &lt;code&gt;X&lt;/code&gt; in blue) which we'll eventually fill with data. You can also see the 4 unique layouts that a UTF-8 encoded codepoint can use to store different amounts of data (between 7-21 bits).
          131 &lt;/p&gt;
          132 
          133 &lt;/div&gt;
          134 
          135 &lt;div class=&quot;col-6&quot;&gt;
          136 
          137 &lt;center&gt;
          138 &lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; version=&quot;1.1&quot; width=&quot;391px&quot; viewBox=&quot;-0.5 -0.5 391 621&quot; style=&quot;max-width:100%;max-height:621px;&quot;&gt;&lt;defs/&gt;&lt;g&gt;&lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;390&quot; height=&quot;340&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 170)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 338px; height: 1px; padding-top: 170px; margin-left: -162px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;UTF-8 OCTETS&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;190&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UTF-8 OCTETS&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;40&quot; y=&quot;0&quot; width=&quot;350&quot; height=&quot;260&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 47 130)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 258px; height: 1px; padding-top: 130px; margin-left: -82px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;UTF-8 HEADER OCTETS&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;47&quot; y=&quot;150&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UTF-8 HEADER OCTETS&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;20&quot; width=&quot;10&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 8px; height: 1px; padding-top: 40px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;0&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;95&quot; y=&quot;44&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;0&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;80&quot; width=&quot;30&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 100px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;105&quot; y=&quot;104&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;140&quot; width=&quot;40&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 160px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;1110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;164&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;1110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;200&quot; width=&quot;50&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 220px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;11110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;115&quot; y=&quot;224&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;11110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;100&quot; y=&quot;20&quot; width=&quot;70&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 40px; margin-left: 101px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;135&quot; y=&quot;44&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;120&quot; y=&quot;80&quot; width=&quot;50&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 100px; margin-left: 121px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;145&quot; y=&quot;104&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;130&quot; y=&quot;140&quot; width=&quot;40&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 160px; margin-left: 131px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;150&quot; y=&quot;164&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;140&quot; y=&quot;200&quot; width=&quot;30&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 220px; margin-left: 141px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;155&quot; y=&quot;224&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;280&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 300px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;100&quot; y=&quot;304&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;110&quot; y=&quot;280&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 300px; margin-left: 111px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;140&quot; y=&quot;304&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;180&quot; y=&quot;20&quot; width=&quot;170&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 168px; height: 1px; padding-top: 40px; margin-left: 182px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: left;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;U+0000–U+007F&lt;br /&gt;1 octet header&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;182&quot; y=&quot;45&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot;&gt;U+0000–U+007F...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;180&quot; y=&quot;80&quot; width=&quot;170&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 168px; height: 1px; padding-top: 100px; margin-left: 182px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: left;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;U+0080–U+07FF&lt;br /&gt;2 octet header&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;182&quot; y=&quot;105&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot;&gt;U+0080–U+07FF...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;180&quot; y=&quot;140&quot; width=&quot;170&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 168px; height: 1px; padding-top: 160px; margin-left: 182px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: left;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;U+0800–U+FFFF&lt;br /&gt;3 octet header&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;182&quot; y=&quot;165&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot;&gt;U+0800–U+FFFF...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;180&quot; y=&quot;200&quot; width=&quot;170&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 168px; height: 1px; padding-top: 220px; margin-left: 182px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: left;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;U+10000–U+10FFFF&lt;br /&gt;4 octet header&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;182&quot; y=&quot;225&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot;&gt;U+10000–U+10FFFF...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;180&quot; y=&quot;280&quot; width=&quot;170&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 168px; height: 1px; padding-top: 300px; margin-left: 182px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: left;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;Tail/data octet&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;182&quot; y=&quot;305&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot;&gt;Tail/data octet&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;0&quot; y=&quot;360&quot; width=&quot;390&quot; height=&quot;260&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;10&quot; y=&quot;380&quot; width=&quot;10&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 8px; height: 1px; padding-top: 400px; margin-left: 11px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;0&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;15&quot; y=&quot;404&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;0&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;10&quot; y=&quot;440&quot; width=&quot;30&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 460px; margin-left: 11px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;25&quot; y=&quot;464&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;10&quot; y=&quot;500&quot; width=&quot;40&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 520px; margin-left: 11px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;1110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;30&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;1110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;10&quot; y=&quot;560&quot; width=&quot;50&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 580px; margin-left: 11px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;11110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;35&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;11110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;20&quot; y=&quot;380&quot; width=&quot;70&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 400px; margin-left: 21px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;55&quot; y=&quot;404&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;40&quot; y=&quot;440&quot; width=&quot;50&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 460px; margin-left: 41px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;65&quot; y=&quot;464&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;50&quot; y=&quot;500&quot; width=&quot;40&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 520px; margin-left: 51px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;70&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;60&quot; y=&quot;560&quot; width=&quot;30&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 580px; margin-left: 61px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;75&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;440&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 460px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;100&quot; y=&quot;464&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;110&quot; y=&quot;440&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 460px; margin-left: 111px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;140&quot; y=&quot;464&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;500&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 520px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;100&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;110&quot; y=&quot;500&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 520px; margin-left: 111px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;140&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;560&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 580px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;100&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;110&quot; y=&quot;560&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 580px; margin-left: 111px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;140&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;170&quot; y=&quot;560&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 580px; margin-left: 171px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;180&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;190&quot; y=&quot;560&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 580px; margin-left: 191px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;220&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;250&quot; y=&quot;560&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 580px; margin-left: 251px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;260&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;270&quot; y=&quot;560&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 580px; margin-left: 271px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;300&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;170&quot; y=&quot;500&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 520px; margin-left: 171px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;180&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;190&quot; y=&quot;500&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 520px; margin-left: 191px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;xxxxxx&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;220&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;xxxxxx&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;330&quot; y=&quot;560&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 580px; margin-left: 331px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font face=&quot;Courier New&quot;&gt;21 data bits&lt;br /&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;360&quot; y=&quot;584&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;Helvetica&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;21 data bi...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;170&quot; y=&quot;440&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 460px; margin-left: 171px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font face=&quot;Courier New&quot;&gt;11 data bits&lt;br /&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;200&quot; y=&quot;464&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;Helvetica&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;11 data bi...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;250&quot; y=&quot;500&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 520px; margin-left: 251px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font face=&quot;Courier New&quot;&gt;16 data bits&lt;br /&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;280&quot; y=&quot;524&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;Helvetica&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;16 data bi...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;90&quot; y=&quot;380&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 400px; margin-left: 91px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font face=&quot;Courier New&quot;&gt;7 data bits&lt;br /&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;120&quot; y=&quot;404&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;Helvetica&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;7 data bit...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;240&quot; y=&quot;370&quot; width=&quot;140&quot; height=&quot;40&quot; fill=&quot;none&quot; stroke=&quot;none&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 390px; margin-left: 241px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 16px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div style=&quot;font-size: 19px&quot; align=&quot;center&quot;&gt;&lt;font style=&quot;font-size: 19px&quot;&gt;UTF-8 OCTET LAYOUTS&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;310&quot; y=&quot;395&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;16px&quot; text-anchor=&quot;middle&quot;&gt;UTF-8 OCTET LAYOU...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;/g&gt;&lt;switch&gt;&lt;g requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;/&gt;&lt;a transform=&quot;translate(0,-5)&quot; xlink:href=&quot;https://www.diagrams.net/doc/faq/svg-export-text-problems&quot; target=&quot;_blank&quot;&gt;&lt;text text-anchor=&quot;middle&quot; font-size=&quot;10px&quot; x=&quot;50%&quot; y=&quot;100%&quot;&gt;Text is not SVG - cannot display&lt;/text&gt;&lt;/a&gt;&lt;/switch&gt;&lt;/svg&gt;
          139 &lt;/center&gt;
          140 
          141 &lt;/div&gt;
          142 
          143 &lt;p&gt;&lt;/div&gt;&lt;/p&gt;
          144 
          145 &lt;h2&gt;What are bit prefixes?&lt;/h2&gt;
          146 
          147 &lt;p&gt;Bit prefixes is a common technique that allows for encoding information while still leaving room in the octet for other information. Bit prefixing works by choosing a list of prefixes such that when each bit is read from left to right you eventually know unambiguously which prefix has been used.&lt;/p&gt;
          148 
          149 &lt;p&gt;&lt;strong&gt;Bit prefixing is useful to maximize the extra space on prefixes that are more commonly used.&lt;/strong&gt;&lt;/p&gt;
          150 
          151 &lt;p&gt;In the case of UTF-8 the shortest prefixes are &lt;code&gt;0&lt;/code&gt; and &lt;code&gt;10&lt;/code&gt; where &lt;code&gt;10&lt;/code&gt; is for the tail octet which is used between 1-3 times per characters for higher codepoint characters. The &lt;code&gt;0&lt;/code&gt; prefix was likely selected more for its utility rather than its frequency when desiging UTF-8 to maintain compatibility with US-ASCII, more on this later!&lt;/p&gt;
          152 
          153 &lt;p&gt;Looking at the prefixes for UTF-8 octets the possibilities are &lt;code&gt;0&lt;/code&gt;, &lt;code&gt;10&lt;/code&gt;, &lt;code&gt;110&lt;/code&gt;, &lt;code&gt;1110&lt;/code&gt;, and &lt;code&gt;11110&lt;/code&gt;. If I start reading an octet from left to right and encounter the bits &lt;code&gt;1&lt;/code&gt;, &lt;code&gt;1&lt;/code&gt;, and &lt;code&gt;0&lt;/code&gt; I immediately know without reading further that this octet is a &quot;2 octet header&quot; and can't possibly be any other octet type.&lt;/p&gt;
          154 
          155 &lt;div class=&quot;row&quot;&gt;
          156 &lt;div class=&quot;col-6&quot;&gt;
          157 
          158 &lt;h2&gt;Following the flow of bits&lt;/h2&gt;
          159 
          160 &lt;p&gt;Using Python we're able to see that our target output is &lt;code&gt;\xf0\x9f\x98\x82&lt;/code&gt;:&lt;/p&gt;
          161 
          162 &lt;div class=&quot;codehilite&quot;&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;emoji&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;😂&quot;&lt;/span&gt;
          163 &lt;span class=&quot;o&quot;&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;emoji&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;encode&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
          164 &lt;span class=&quot;sa&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\xf0\x9f\x98\x82&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;'&lt;/span&gt;
          165 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
          166 
          167 &lt;p&gt;
          168 Encoding a Unicode codepoint into bytes is a multi-step process. The first step is determining the number of octets required to encode the codepoint. The codepoint value for &quot;Face with Tears of Joy&quot; ( 😂 ) is &lt;code&gt;0x1F602&lt;/code&gt;. From the previous diagram the value &lt;code&gt;0x1F602&lt;/code&gt; falls in the range for a 4 octets header (between &lt;code&gt;0x10000&lt;/code&gt; and &lt;code&gt;0x10FFFF&lt;/code&gt;).
          169 &lt;/p&gt;
          170 
          171 &lt;p&gt;
          172 Next step is converting the codepoint value &lt;code&gt;0x1F602&lt;/code&gt; into binary. In Python you can do &lt;code&gt;f&quot;{0x1F602:b}&quot;&lt;/code&gt; which will return &lt;code&gt;'111‍1101100‍0000010'&lt;/code&gt; as a string. This value is padded with zeroes until there are 21 bits to fit the layout for 4 octets. This padded value can be seen on the top of the &quot;UTF-8 encoding&quot; section in the diagram as &quot;&lt;code&gt;000 011‍111 011‍000 000‍010&lt;/code&gt;&quot;.
          173 &lt;/p&gt;
          174 
          175 &lt;/div&gt;
          176 
          177 &lt;div class=&quot;col-6&quot;&gt;
          178 
          179 &lt;center&gt;
          180 &lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; version=&quot;1.1&quot; width=&quot;401px&quot; viewBox=&quot;-0.5 -0.5 401 441&quot; style=&quot;max-width:100%;max-height:441px;&quot;&gt;&lt;defs/&gt;&lt;g&gt;&lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;400&quot; height=&quot;140&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 70)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 70px; margin-left: -62px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;UNICODE CODEPOINT&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;90&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UNICODE CODEPO...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;0&quot; y=&quot;160&quot; width=&quot;400&quot; height=&quot;180&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 250)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: -82px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;UTF-8 ENCODING&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;270&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UTF-8 ENCODING&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;0&quot; y=&quot;360&quot; width=&quot;400&quot; height=&quot;80&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 400)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: -32px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;BYTES&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;420&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;BYTES&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;310&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 311px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;82&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;350&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x82&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;230&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 231px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;98&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;270&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x98&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;9F&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;190&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x9F&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;F0&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0xF0&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;260&quot; width=&quot;50&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 280px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;11110&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;95&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;11110&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;120&quot; y=&quot;260&quot; width=&quot;30&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 280px; margin-left: 121px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;135&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;260&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 280px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;160&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;170&quot; y=&quot;260&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 280px; margin-left: 171px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;011‍111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;200&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;011‍111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;230&quot; y=&quot;260&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 280px; margin-left: 231px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;240&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;250&quot; y=&quot;260&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 280px; margin-left: 251px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;011‍000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;280&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;011‍000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;180&quot; width=&quot;320&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 318px; height: 1px; padding-top: 190px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;000 011‍111 011‍000 000‍010&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;230&quot; y=&quot;194&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;000 011‍111 011‍000 000‍010&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;310&quot; y=&quot;260&quot; width=&quot;20&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 18px; height: 1px; padding-top: 280px; margin-left: 311px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;10&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;320&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;10&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;330&quot; y=&quot;260&quot; width=&quot;60&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 280px; margin-left: 331px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;000‍010&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;360&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;000‍010&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;90&quot; width=&quot;160&quot; height=&quot;30&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 105px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 20px&quot;&gt;U+1F602&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;230&quot; y=&quot;109&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;U+1F602&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;20&quot; width=&quot;160&quot; height=&quot;70&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 55px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 36px&quot;&gt;😂&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;230&quot; y=&quot;59&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;😂&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 310 120 L 390 180&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 230 120 L 230 173.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 230 178.88 L 226.5 171.88 L 230 173.63 L 233.5 171.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;70&quot; y=&quot;200&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 210px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;214&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;200&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 210px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;011‍111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;190&quot; y=&quot;214&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;011‍111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;230&quot; y=&quot;200&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 210px; margin-left: 231px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;011‍000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;270&quot; y=&quot;214&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;011‍000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;310&quot; y=&quot;200&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 210px; margin-left: 311px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;000‍010&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;350&quot; y=&quot;214&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;000‍010&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 110 220 L 131.62 254.6&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 134.41 259.05 L 127.73 254.97 L 131.62 254.6 L 133.67 251.26 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 190 220 L 198.46 253.82&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 199.73 258.92 L 194.64 252.97 L 198.46 253.82 L 201.43 251.28 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 270 220 L 278.46 253.82&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 279.73 258.92 L 274.64 252.97 L 278.46 253.82 L 281.43 251.28 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 350 220 L 358.46 253.82&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 359.73 258.92 L 354.64 252.97 L 358.46 253.82 L 361.43 251.28 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;70&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 310px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;111‍10000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;314&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;111‍10000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;150&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 310px; margin-left: 151px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;100‍11111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;190&quot; y=&quot;314&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;100‍11111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;230&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 310px; margin-left: 231px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;100‍11000&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;270&quot; y=&quot;314&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;100‍11000&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;310&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 310px; margin-left: 311px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;100‍00010&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;350&quot; y=&quot;314&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;100‍00010&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 99.5 320 L 99.5 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 99.5 378.88 L 96 371.88 L 99.5 373.63 L 103 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 179.5 320 L 179.5 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 179.5 378.88 L 176 371.88 L 179.5 373.63 L 183 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 260 320 L 260 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 260 378.88 L 256.5 371.88 L 260 373.63 L 263.5 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 339 320 L 339 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 339 378.88 L 335.5 371.88 L 339 373.63 L 342.5 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 70 260 L 70 220&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 70 320 L 70 380&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 70 180 L 150 120&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;/g&gt;&lt;switch&gt;&lt;g requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;/&gt;&lt;a transform=&quot;translate(0,-5)&quot; xlink:href=&quot;https://www.diagrams.net/doc/faq/svg-export-text-problems&quot; target=&quot;_blank&quot;&gt;&lt;text text-anchor=&quot;middle&quot; font-size=&quot;10px&quot; x=&quot;50%&quot; y=&quot;100%&quot;&gt;Text is not SVG - cannot display&lt;/text&gt;&lt;/a&gt;&lt;/switch&gt;&lt;/svg&gt;&lt;/center&gt;
          181 
          182 &lt;/div&gt;
          183 
          184 &lt;p&gt;&lt;/div&gt;&lt;/p&gt;
          185 
          186 &lt;p&gt;From there we lay out our four octets, 1 header and 3 tail octets for a total of 4 octets. There are 21 empty bits to fill with data. Starting with the third tail octet from right to left we begin filling the empty bits in each octet. You can follow where each bit ends up with the arrows.&lt;/p&gt;
          187 
          188 &lt;p&gt;After that we turn each 8 bit grouping into a byte which we display in hexadecimal at the bottom of the diagram. This value matches what we expected to receive from UTF-8 encoding this character: &lt;strong&gt;Success!&lt;/strong&gt; ✨&lt;/p&gt;
          189 
          190 &lt;p&gt;Decoding a Unicode codepoint from bytes only requires reversing the above process. Each byte will be examined first for the header type and then individual bits will be extracted from each octet and added together to reproduce the codepoint. &lt;/p&gt;
          191 
          192 &lt;blockquote&gt;
          193   &lt;p&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; You can always find a codepoint boundary from an arbitrary point in a stream of octets by moving left an octet each time the current octet starts with the bit prefix &lt;code&gt;10&lt;/code&gt; which indicates a tail octet. At most you'll have to move left 3 octets to find the nearest header octet.&lt;/p&gt;
          194 &lt;/blockquote&gt;
          195 
          196 &lt;div class=&quot;row&quot;&gt;
          197 &lt;div class=&quot;col-6&quot;&gt;
          198 
          199 &lt;h2&gt;Why is UTF-8 everywhere?&lt;/h2&gt;
          200 
          201 &lt;p&gt;
          202 Back when UTF-8 was first introduced there were many systems that didn't understand any character encoding beyond &quot;&lt;a href=&quot;https://datatracker.ietf.org/doc/html/rfc20&quot;&gt;US-ASCII&lt;/a&gt;&quot;. This meant whenever data encoded with another Unicode encoding was used then that system would produce garbage, even if the characters were within the US-ASCII range.
          203 &lt;/p&gt;
          204 
          205 &lt;p&gt;
          206 UTF-8's use of byte prefixing &lt;code&gt;0&lt;/code&gt; to be identical to the US-ASCII range in &lt;code&gt;0x00-0x7F&lt;/code&gt; means that all characters within the US-ASCII range are encoded exactly as they would had they been explicitly encoded using US-ASCII instead of UTF-8.
          207 &lt;/p&gt;
          208 
          209 &lt;p&gt;
          210 This was a big win for compatibility as it &lt;strong&gt;meant many systems could start using UTF-8 as an encoding immediately&lt;/strong&gt;. As long as input data wasn't outside of the US-ASCII range the encoded bytes would not change which allowed for incremental adoption within a group of systems instead of having to switch &quot;all at once&quot; to a new encoding.
          211 &lt;/p&gt;
          212 
          213 &lt;/div&gt;
          214 
          215 &lt;div class=&quot;col-6&quot;&gt;
          216 
          217 &lt;center&gt;
          218 &lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; version=&quot;1.1&quot; width=&quot;341px&quot; viewBox=&quot;-0.5 -0.5 341 441&quot; style=&quot;max-width:100%;max-height:441px;&quot;&gt;&lt;defs/&gt;&lt;g&gt;&lt;rect x=&quot;90&quot; y=&quot;0&quot; width=&quot;160&quot; height=&quot;140&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 97 70)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 70px; margin-left: 28px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;UNICODE CODEPOINT&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;97&quot; y=&quot;90&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UNICODE CODEPO...&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;0&quot; y=&quot;160&quot; width=&quot;160&quot; height=&quot;180&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 250)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: -82px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;UTF-8 ENCODING&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;270&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;UTF-8 ENCODING&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;0&quot; y=&quot;360&quot; width=&quot;160&quot; height=&quot;80&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 7 400)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: -32px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;BYTES&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;7&quot; y=&quot;420&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;BYTES&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;160&quot; y=&quot;20&quot; width=&quot;80&quot; height=&quot;70&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 55px; margin-left: 161px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 36px&quot;&gt;a&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;200&quot; y=&quot;59&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;a&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;160&quot; y=&quot;90&quot; width=&quot;80&quot; height=&quot;30&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 105px; margin-left: 161px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font style=&quot;font-size: 20px&quot;&gt;U+57&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;200&quot; y=&quot;111&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;U+57&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;180&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 190px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;101‍0111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;194&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;101‍0111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;260&quot; width=&quot;10&quot; height=&quot;40&quot; fill=&quot;#d5e8d4&quot; stroke=&quot;#82b366&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 8px; height: 1px; padding-top: 280px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;0&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;75&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;0&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;80&quot; y=&quot;260&quot; width=&quot;70&quot; height=&quot;40&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 280px; margin-left: 81px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;101‍0111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;115&quot; y=&quot;284&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;101‍0111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;70&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;57&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x57&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 110 220 L 114.21 253.68&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 114.86 258.89 L 110.52 252.38 L 114.21 253.68 L 117.47 251.51 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;70&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 310px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;010‍10111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;314&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;010‍10111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 110 320 L 110 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 110 378.88 L 106.5 371.88 L 110 373.63 L 113.5 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;70&quot; y=&quot;200&quot; width=&quot;80&quot; height=&quot;20&quot; fill=&quot;#dae8fc&quot; stroke=&quot;#6c8ebf&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 210px; margin-left: 71px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;101‍0111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;110&quot; y=&quot;214&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;101‍0111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 70 380 L 70 320&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 150 380 L 150 320&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 150 220 L 150 260&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 70 220 L 70 260&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 160 120 L 70 180&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 200 140 L 150 180&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;rect x=&quot;180&quot; y=&quot;160&quot; width=&quot;160&quot; height=&quot;180&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 187 250)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: 98px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;ASCII ENCODING&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;187&quot; y=&quot;270&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;ASCII ENCODING&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;250&quot; y=&quot;180&quot; width=&quot;80&quot; height=&quot;140&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 250px; margin-left: 251px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 12px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;010‍10111&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;290&quot; y=&quot;254&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;12px&quot; text-anchor=&quot;middle&quot;&gt;010‍10111&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 240 120 L 330 180&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 202 140 L 250 180&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 200 120 L 284.7 176.47&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 289.07 179.38 L 281.3 178.41 L 284.7 176.47 L 285.19 172.58 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 200 120 L 115.3 176.47&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 110.93 179.38 L 114.81 172.58 L 115.3 176.47 L 118.7 178.41 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;rect x=&quot;180&quot; y=&quot;360&quot; width=&quot;160&quot; height=&quot;80&quot; fill=&quot;#f5f5f5&quot; stroke=&quot;#666666&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)rotate(-90 187 400)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 148px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: #333333; &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;div&gt;BYTES&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;187&quot; y=&quot;420&quot; fill=&quot;#333333&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;BYTES&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;rect x=&quot;250&quot; y=&quot;380&quot; width=&quot;80&quot; height=&quot;40&quot; fill=&quot;rgb(255, 255, 255)&quot; stroke=&quot;rgb(0, 0, 0)&quot; pointer-events=&quot;all&quot;/&gt;&lt;g transform=&quot;translate(-0.5 -0.5)&quot;&gt;&lt;switch&gt;&lt;foreignObject style=&quot;overflow: visible; text-align: left;&quot; pointer-events=&quot;none&quot; width=&quot;100%&quot; height=&quot;100%&quot; requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot; style=&quot;display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 400px; margin-left: 251px;&quot;&gt;&lt;div style=&quot;box-sizing: border-box; font-size: 0px; text-align: center;&quot; data-drawio-colors=&quot;color: rgb(0, 0, 0); &quot;&gt;&lt;div style=&quot;display: inline-block; font-size: 20px; font-family: monospace; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;&quot;&gt;&lt;font color=&quot;#808080&quot;&gt;0x&lt;/font&gt;57&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/foreignObject&gt;&lt;text x=&quot;290&quot; y=&quot;406&quot; fill=&quot;rgb(0, 0, 0)&quot; font-family=&quot;monospace&quot; font-size=&quot;20px&quot; text-anchor=&quot;middle&quot;&gt;0x57&lt;/text&gt;&lt;/switch&gt;&lt;/g&gt;&lt;path d=&quot;M 290 320 L 290 373.63&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 290 378.88 L 286.5 371.88 L 290 373.63 L 293.5 371.88 Z&quot; fill=&quot;rgb(0, 0, 0)&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; pointer-events=&quot;all&quot;/&gt;&lt;path d=&quot;M 250 320 L 250 380&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;path d=&quot;M 330 320 L 330 380&quot; fill=&quot;none&quot; stroke=&quot;rgb(0, 0, 0)&quot; stroke-miterlimit=&quot;10&quot; stroke-dasharray=&quot;3 3&quot; pointer-events=&quot;stroke&quot;/&gt;&lt;/g&gt;&lt;switch&gt;&lt;g requiredFeatures=&quot;http://www.w3.org/TR/SVG11/feature#Extensibility&quot;/&gt;&lt;a transform=&quot;translate(0,-5)&quot; xlink:href=&quot;https://www.diagrams.net/doc/faq/svg-export-text-problems&quot; target=&quot;_blank&quot;&gt;&lt;text text-anchor=&quot;middle&quot; font-size=&quot;10px&quot; x=&quot;50%&quot; y=&quot;100%&quot;&gt;Text is not SVG - cannot display&lt;/text&gt;&lt;/a&gt;&lt;/switch&gt;&lt;/svg&gt;&lt;/center&gt;
          219 
          220 &lt;/div&gt;
          221 
          222 &lt;p&gt;&lt;/div&gt;&lt;/p&gt;
          223 
          224 &lt;h2&gt;Giant reference card&lt;/h2&gt;
          225 
          226 &lt;p&gt;Below is a diagram which shows how all the different possible headers that a codepoint could be encoded to in UTF-8. You can use it for your reference or just admire all the time I spent in &lt;a href=&quot;https://www.diagrams.net&quot;&gt;diagrams.net&lt;/a&gt; 😅.&lt;/p&gt;
          227 
          228 &lt;p&gt;Grapheme clusters are mentioned in the diagram, simply put they are multiple codepoints that when placed together will &quot;combine&quot; into a single &quot;thing&quot; drawn on the screen (that &quot;thing&quot; being a &quot;&lt;a href=&quot;https://en.wikipedia.org/wiki/Grapheme&quot;&gt;grapheme&lt;/a&gt;&quot;). Maybe I'll write about these in the future!&lt;/p&gt;
          229 
          230 &lt;p&gt;&lt;center&gt;