Updated theme

+2 -2
public/404.html
··· 10 10 11 11 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 12 12 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 13 - <link rel="stylesheet" href="https://vylion.com/css/style.css?h=3fa91ff65b7ab435cd3b"> 13 + <link rel="stylesheet" href="https://vylion.com/css/style.css?h=1949a104ef3ba3e2d605"> 14 14 <script src="https://vylion.com/js/auto-close-popover-on-resize.js?h=4ef87d6fc7b98b22e044" defer></script> 15 15 <script src="https://vylion.com/js/copy-code-to-clipboard.js?h=6aac77c47d552a0ac847" defer></script> 16 16 ··· 21 21 22 22 <meta property="og:type" content="website"> 23 23 <meta property="og:site_name" content="Guillermo Serrahima"> 24 - <meta property="og:updated_time" content="2025-12-15T21:27:08.342029285+01:00"> 24 + <meta property="og:updated_time" content="2025-12-30T21:37:57.165170828+01:00"> 25 25 <meta name="fediverse:creator" content="@me.vylion.com@bsky.brid.gy"> 26 26 </head> 27 27
+1 -1
public/css/style.css
··· 1 - @font-face{font-family:"Fira Code";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/FiraCode-Regular.woff2") format("woff2")}@font-face{font-family:"Fira Code";font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/FiraCode-Bold.woff2") format("woff2")}:root{--font-size: 1rem;--line-height: 1.54em;--radius: 0}@media (max-width: 684px){:root{--font-size: 0.95rem}}:root,[data-theme=terminus]{--background-color: #1e1e2e;--text-color: #c6d0f5;--accent-color: #a6e3a1;--footnote-color: rgba(255, 255, 255, 0.5)}[data-theme=tokyo-night]{--background-color: #1a1b26;--text-color: #c0caf5;--accent-color: #7aa2f7;--footnote-color: rgba(192, 202, 245, 0.6)}[data-theme=solarized-dark]{--background-color: #002b36;--text-color: #839496;--accent-color: #268bd2;--footnote-color: rgba(131, 148, 150, 0.6)}[data-theme=nord]{--background-color: #2e3440;--text-color: #d8dee9;--accent-color: #5e81ac;--footnote-color: rgba(216, 222, 233, 0.6)}[data-theme=one-dark]{--background-color: #282c34;--text-color: #abb2bf;--accent-color: #61afef;--footnote-color: rgba(171, 178, 191, 0.6)}[data-theme=gruvbox-dark]{--background-color: #282828;--text-color: #ebdbb2;--accent-color: #fe8019;--footnote-color: rgba(235, 219, 178, 0.6)}[data-theme=oled-abyss]{--background-color: #000000;--text-color: #ffffff;--accent-color: #00d4ff;--footnote-color: rgba(255, 255, 255, 0.7)}[data-theme=solar-flare]{--background-color: #ffffff;--text-color: #1a1a1a;--accent-color: #ff4500;--footnote-color: rgba(26, 26, 26, 0.6)}html{box-sizing:border-box;accent-color:var(--accent-color);scrollbar-color:var(--accent-color) rgba(0,0,0,0)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace;font-size:var(--font-size);line-height:var(--line-height);background:var(--background-color);color:var(--text-color);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;text-size-adjust:100%;font-feature-settings:"liga"}body.layout-left,body.layout-center,body.layout-full-width{display:flex;flex-direction:column;padding:40px;max-width:864px;min-height:100vh;border-right:1px solid color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0))}@media (max-width: 684px){body.layout-left,body.layout-center,body.layout-full-width{padding:20px}}body.layout-center,body.layout-full-width{border:none;margin:0 auto}body.layout-full-width{max-width:100%}main{overflow-wrap:break-word}h1{font-size:calc(var(--font-size)*1.45);letter-spacing:0}h2{font-size:calc(var(--font-size)*1.35);letter-spacing:0}h3{font-size:calc(var(--font-size)*1.15);letter-spacing:0}h4,h5,h6{font-size:calc(var(--font-size)*1);letter-spacing:0}h1,h2,h3,h4,h5,h6,p,ul,ol,img,figure,video,table{margin:25px 0}a{color:var(--accent-color);outline:none}a.read-more{text-decoration:none}button{position:relative;font:inherit;font-weight:bold;text-decoration:none;text-align:center;align-items:center;background:rgba(0,0,0,0);color:var(--accent-color);padding:5px 18px;border:4px solid var(--accent-color);border-radius:var(--radius);transition:background .15s linear;appearance:none;cursor:pointer;outline:none}button:hover{background:color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0))}a:focus-visible,button:focus-visible,input:focus-visible{outline:1px solid var(--accent-color);outline-offset:2px}input{border:1px solid var(--text-color);border-radius:var(--radius);padding:10px;background:rgba(0,0,0,0);color:var(--text-color);appearance:none}input[type=checkbox]{padding:10px;vertical-align:middle;box-shadow:inset 0 0 0 3px var(--background-color)}input[type=checkbox]:active{box-shadow:none}input[type=checkbox]:checked{background:var(--accent-color)}img,video{display:block;max-inline-size:100%;block-size:auto}figure{margin:0 auto;width:fit-content}figure img,figure video{margin:0 auto}figure:not(.mastodon-post) figcaption{background:var(--accent-color);color:var(--background-color);text-align:center;font-size:var(--font-size);font-weight:normal;margin-top:5px;padding:5px 8px;border-radius:0 0 var(--radius) var(--radius)}figure:not(.mastodon-post) figcaption a{color:var(--background-color)}figure:not(.mastodon-post) figcaption p:first-child{margin:0}ul,ol{margin-inline-start:4ch;padding:0}ul ul,ul ol,ol ul,ol ol{margin-block:5px}ul li,ol li{position:relative}ul li::marker,ol li::marker{color:var(--accent-color)}code{font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace !important;font-feature-settings:normal;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));border:1px solid var(--code-border);padding:1px 6px;margin:0 2px;font-size:calc(var(--font-size)*.95);color:var(--accent-color)}code code{background:rgba(0,0,0,0);padding:0;margin:0}kbd{font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace !important;font-feature-settings:normal;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));border:1px solid var(--code-border);padding:1px 6px;margin:0 2px;font-size:calc(var(--font-size)*.95);border-top:1px solid color-mix(in srgb, var(--accent-color) 25%, rgba(0,0,0,0));border-left:1px solid var(--accent-color);border-right:1px solid var(--accent-color);border-bottom:4px solid var(--accent-color);border-radius:4px}pre{tab-size:4;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));color:var(--text-color);padding:10px;font-size:calc(var(--font-size)*.95) !important;overflow:auto;border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--text-color) 10%, rgba(0,0,0,0))}pre code{background:unset;color:unset;margin:0;padding:0;border:none}pre code mark{display:block;min-width:fit-content}abbr{position:relative;text-decoration-style:dotted;text-decoration-color:var(--accent-color);cursor:help}sub{bottom:-.25em}sup{line-height:0;top:-.25em}mark{background:color-mix(in srgb, var(--accent-color) 45%, rgba(0,0,0,0));color:var(--text-color)}blockquote{position:relative;border-top:1px solid var(--accent-color);border-bottom:1px solid var(--accent-color);margin:0;padding:25px}blockquote::before{content:">";display:block;position:absolute;left:0;color:var(--accent-color)}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}table{border-collapse:collapse}table th,table td{border:2px solid var(--text-color);padding:10px}table th{border-style:solid;color:var(--text-color);text-align:left;text-transform:uppercase;letter-spacing:.04em}hr{width:100%;height:2px;border:none;background:color-mix(in srgb, var(--text-color) 50%, rgba(0,0,0,0))}details{position:relative;margin:25px 0;width:100%;border:1px solid var(--accent-color)}details>summary{padding:3px 10px;color:var(--accent-color);transition:background .15s linear}details>summary:hover{background:color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0))}details>summary::marker{content:none}details>summary::before{display:inline-block;content:"";border:.35rem solid rgba(0,0,0,0);border-top-color:var(--accent-color);margin-inline-start:.3em;margin-inline-end:.75rem;transform:rotate(-90deg);transition:transform .1s ease-out}details[open]>summary::before{transform:translateY(.15rem)}details>:not(img,pre>code,summary){margin-inline:15px}details>:not(img,pre>code,summary):first-of-type{margin-top:15px}details>:not(img,pre>code,summary):last-child{margin-bottom:15px}.header{display:flex;flex-direction:column}@media (max-width: 684px){.header{flex-direction:row}}.header-container{display:flex;align-items:center;justify-content:space-between;flex:1}.header-logo-container{display:flex;flex:1}.header-logo-container::after{content:"";display:block;margin-inline-start:8px;width:100%;background:repeating-linear-gradient(90deg, var(--accent-color), var(--accent-color) 2px, rgba(0,0,0,0) 0, rgba(0,0,0,0) 10px)}.header-logo-container a{flex:0 0 auto;max-width:100%;text-decoration:none}.logo{display:flex;align-items:center;padding:5px 10px;background:var(--accent-color);color:var(--background-color);font-weight:bold;text-decoration:none}@media print{.header{display:none}}.main-menu{display:flex;align-items:flex-start;justify-content:space-between;margin:20px 1px}@media (max-width: 684px){.main-menu{margin:0}}.main-menu-items{position:static;display:flex;flex-wrap:wrap;gap:10px 20px;overflow:visible;border:none;margin:0;padding-bottom:10px;width:100%;background:unset;list-style:none}@media (max-width: 684px){.main-menu-items{display:none}.main-menu-items:popover-open{--shadow-color: rgb(from var(--accent-color) r g b / 70%);color:var(--accent-color);background:var(--background-color);border:2px solid var(--accent-color);box-shadow:0 10px var(--shadow-color),-10px 10px var(--shadow-color),10px 10px var(--shadow-color);padding:10px;display:flex;column-gap:10px;flex-direction:column;margin-top:calc(40px + var(--line-height));margin-inline:auto 20px;max-width:33vw;width:fit-content}.main-menu-items>li>a{display:block;padding:5px}}.main-menu-dropdown-button{display:none;border:2px solid;margin-inline-start:10px;padding:3px 8px;height:100%}@media (max-width: 684px){.main-menu-dropdown-button{display:flex}}.main-menu-dropdown-button:after{content:"";border:.35rem solid rgba(0,0,0,0);border-top-color:var(--accent-color);margin-inline-start:.5em;transform:translateY(.15em)}.skip-to-content{--shadow-color: rgb(from var(--accent-color) r g b / 70%);color:var(--accent-color);background:var(--background-color);border:2px solid var(--accent-color);box-shadow:0 10px var(--shadow-color),-10px 10px var(--shadow-color),10px 10px var(--shadow-color);padding:10px;position:fixed;top:40px;left:-1vw;z-index:99;transform:translateX(-100vw);text-align:center}@media (max-width: 684px){.skip-to-content{top:20px}}.skip-to-content:focus{left:50%;transform:translateX(-50%);outline:none}.footer{padding:40px 0}.footer a{color:inherit}.footer .socials{padding-bottom:25px}@media print{.footer .socials{display:none}}.footer .socials ul{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin:0;list-style:none}.footer .socials .social-link{display:flex;padding:.66rem}.footer .socials .social-link>svg{aspect-ratio:1/1;width:1.5rem;height:auto;margin:0 auto;fill:var(--footnote-color)}.footer .socials .social-link:hover{background:var(--accent-color)}.footer .socials .social-link:hover>svg{fill:var(--background-color)}.footer .copyright{text-align:center;margin:0;color:color-mix(in srgb, var(--text-color) 65%, rgba(0,0,0,0))}.footer .copyright>*{text-wrap:nowrap}.footer .copyright>*:not(:first-child)::before{content:":: "}.content ul:not(.post-meta){list-style:none}.content ul:not(.post-meta) li:not(:last-of-type){margin-bottom:3px}.content ul:not(.post-meta) li:not(:has(input))::before{content:"⦿";position:absolute;left:-20px;color:var(--accent-color)}.content ul:not(.post-meta) li>input{margin-inline-start:-4ch}.content ul:not(.post-meta) ul li:not(:has(input))::before{content:"■"}.content ul:not(.post-meta) ul ul li:not(:has(input))::before{content:"►"}.framed{border:1px solid var(--accent-color);padding:20px;margin:25px 0}.framed *:first-child{margin-top:0}.framed *:last-child{margin-bottom:0}.post{padding:30px 0;width:100%;text-align:left}.post:not(:last-of-type){border-bottom:1px solid color-mix(in srgb, var(--text-color) 10%, rgba(0,0,0,0))}.post-title{position:relative;margin-block:0 15px;padding-bottom:15px;border-bottom:3px dotted var(--accent-color);color:var(--accent-color)}.post-title::after{content:"";position:absolute;bottom:2px;display:block;width:100%;border-bottom:3px dotted var(--accent-color)}.post-title a{text-decoration:none}ul.post-meta{list-style:none;display:block;margin:0 0 8px;color:color-mix(in srgb, var(--text-color) 65%, rgba(0,0,0,0))}ul.post-meta>li{display:inline}ul.post-meta>li::before{content:""}ul.post-meta>li[role=separator]{user-select:none}ul.post-meta>li.draft-label{display:block;float:right;margin-top:-2px;padding-block:2px;padding-inline:8px;background-color:var(--accent-color);color:var(--background-color)}.post-tags{display:flex;flex-wrap:wrap;column-gap:8px;margin-bottom:20px;color:var(--accent-color)}.post-tags>[role=separator]{user-select:none}h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{margin-inline-start:10px;opacity:0%;color:var(--accent-color);text-decoration:none;user-select:none}@media screen and (max-width: 684px){h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{opacity:100%}}@media print{h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{display:none}}h1:focus-within .post-anchor,h1:hover .post-anchor,h2:focus-within .post-anchor,h2:hover .post-anchor,h3:focus-within .post-anchor,h3:hover .post-anchor,h4:focus-within .post-anchor,h4:hover .post-anchor,h5:focus-within .post-anchor,h5:hover .post-anchor,h6:focus-within .post-anchor,h6:hover .post-anchor{opacity:100%}.footnote-reference{font-family:var(--serif-font);font-size:.7rem}.footnote-definition{color:var(--footnote-color);margin-block-end:.6rem}.footnote-definition sup{color:var(--accent-color);margin-inline-end:.15rem;font-size:.75rem}.footnote-definition p{display:inline}.footnotes{border-top:2px solid var(--footnote-color)}.footnotes .footnotes-list p{color:var(--footnote-color);text-align:start}@media print{.post-navigation{display:none}}.post-navigation-title{display:flex;text-align:center;position:relative;margin:45px 0 20px}.post-navigation-title h2{text-align:center;margin:0 auto;padding:5px 10px;background:var(--background-color);color:color-mix(in srgb var(--text-color) 30%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);font-weight:normal;text-transform:uppercase;text-decoration:none;letter-spacing:.1em;z-index:1}.post-navigation-title hr{background:var(--accent-color);position:absolute;left:0;right:0;width:100%;margin-top:15px;z-index:0}.post-navigation-buttons{display:flex;align-items:center;justify-content:center;flex-flow:row wrap;gap:10px;padding-bottom:30px}.post-navigation-buttons>a{display:inline;text-align:center;text-decoration:none}:root{--code-border: color-mix(in srgb, var(--text-color) 10%, transparent)}.copy-button{position:absolute;top:6px;right:10px;padding:3px 8px;width:4.5rem;border:1px solid color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);font-weight:normal;line-height:1em}@media print{.copy-button{display:none}}pre[data-lang]{display:block;position:relative;padding:0;overflow-y:hidden}pre[data-lang]::before{content:attr(data-lang);display:block;padding:6px 10px;border-bottom:1px solid var(--code-border);color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);text-transform:uppercase;line-height:21px}pre[data-lang] code[data-lang]{display:block;overflow-x:auto;padding:10px}pre[data-lang] code[data-lang][data-name]::before{content:attr(data-name);position:absolute;top:0;right:0;display:block;padding:6px 10px;max-width:60%;color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);line-height:21px;overflow:hidden;text-overflow:ellipsis}@media screen{pre[data-lang] code[data-lang]:has(.copy-button)::before{right:calc(4.5rem + 10px)}}pre[data-lang] code[data-lang] mark{margin-inline:-10px;padding-inline:10px;color:unset}pre[data-lang] code[data-lang] table{margin-block:0;width:100%;border-collapse:collapse}pre[data-lang] code[data-lang] table td,pre[data-lang] code[data-lang] table th,pre[data-lang] code[data-lang] table tr{border:none;padding:0}pre[data-lang] code[data-lang] table tr td:first-child{color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));text-align:end;user-select:none;padding-inline-end:20px}.pagination{margin-top:50px}@media print{.pagination{display:none}}.pagination ul{display:flex;align-items:center;justify-content:center;flex-flow:row wrap;padding-bottom:30px;list-style:none;margin:0}.pagination ul>*:not(:first-child)::before{content:"::";margin:0 10px}.pagination ul li{display:inline-flex}.pagination ul li a{display:inline-flex;text-wrap:nowrap;text-decoration:none}ul.taxonomy-list{list-style:none}ul.taxonomy-list>li{margin-block-end:1rem}.three-column{column-count:3}.two-column{column-count:2}:root{--alert-note-border: #F5F5F5;--alert-note-bg: #696969;--alert-note-code: #707070;--alert-tip-border: #A6E22E;--alert-tip-bg: #405A0C;--alert-tip-code: #50700F;--alert-info-border: #66D9EF;--alert-info-bg: #0B5666;--alert-info-code: #0D687D;--alert-important-border: var(--alert-info-border);--alert-important-bg: var(--alert-info-bg);--alert-important-code: var(--alert-info-code);--alert-warning-border: #EEC35E;--alert-warning-bg: #61470A;--alert-warning-code: #78580D;--alert-danger-border: #FD2774;--alert-danger-bg: #2D0111;--alert-danger-code: #5F0224;--alert-caution-border: var(--alert-danger-border);--alert-caution-bg: var(--alert-danger-bg);--alert-caution-code: var(--alert-danger-code)}.alert,.markdown-alert-caution,.markdown-alert-warning,.markdown-alert-important,.markdown-alert-tip,.markdown-alert-note{display:flex;align-items:flex-start;margin-block:25px;border-radius:var(--radius);border:1px solid;padding:25px}.alert-content,.markdown-alert-caution>p,.markdown-alert-warning>p,.markdown-alert-important>p,.markdown-alert-tip>p,.markdown-alert-note>p{flex:1;margin-inline-start:-2rem}.alert-content>:not(:first-child),.markdown-alert-caution>p>:not(:first-child),.markdown-alert-warning>p>:not(:first-child),.markdown-alert-important>p>:not(:first-child),.markdown-alert-tip>p>:not(:first-child),.markdown-alert-note>p>:not(:first-child){margin-block:1rem 0}.alert-content code,.markdown-alert-caution>p code,.markdown-alert-warning>p code,.markdown-alert-important>p code,.markdown-alert-tip>p code,.markdown-alert-note>p code{color:inherit}.alert-content strong,.markdown-alert-caution>p strong,.markdown-alert-warning>p strong,.markdown-alert-important>p strong,.markdown-alert-tip>p strong,.markdown-alert-note>p strong{font-weight:580}.alert-icon,.markdown-alert-caution::before,.markdown-alert-warning::before,.markdown-alert-important::before,.markdown-alert-tip::before,.markdown-alert-note::before{display:flex;align-items:center;margin-inline-end:.5rem;background-size:contain;background-repeat:no-repeat;aspect-ratio:1/1;width:1.5rem}.alert-title,.markdown-alert-caution>p::before,.markdown-alert-warning>p::before,.markdown-alert-important>p::before,.markdown-alert-tip>p::before,.markdown-alert-note>p::before{display:flex;align-items:center;margin-inline-start:2rem;font-weight:bold}.alert-icon-note,.markdown-alert-note::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M440-280h80v-240h-80v240Zm40-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z'/%3E%3C/svg%3E")}.alert-icon-tip,.markdown-alert-tip::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M480-78.258q-33.718 0-56.974-22.166-23.256-22.167-23.59-55.885h161.128q-.334 33.718-23.59 55.885Q513.718-78.258 480-78.258ZM318.257-210.515v-67.588h323.486v67.588H318.257Zm7.846-121.128q-67.692-42.487-106.896-109.134-39.205-66.648-39.205-147.479 0-123.769 88.149-211.884 88.149-88.115 211.967-88.115 123.817 0 211.849 88.115 88.031 88.115 88.031 211.884 0 80.831-38.999 147.479-39 66.647-107.102 109.134H326.103Zm21.927-67.588h264.351q46.311-32 73.17-81.681 26.859-49.68 26.859-107.144 0-96.918-68-164.765-68-67.846-164.564-67.846t-164.41 67.713q-67.846 67.712-67.846 164.725 0 57.52 26.859 107.259t73.581 81.739Zm131.97 0Z'/%3E%3C/svg%3E")}.alert-icon-info,.alert-icon-important,.markdown-alert-important::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M479.789-288Q495-288 505.5-298.289q10.5-10.29 10.5-25.5Q516-339 505.711-349.5q-10.29-10.5-25.5-10.5Q465-360 454.5-349.711q-10.5 10.29-10.5 25.5Q444-309 454.289-298.5q10.29 10.5 25.5 10.5ZM444-432h72v-240h-72v240Zm36.276 336Q401-96 331-126q-70-30-122.5-82.5T126-330.958q-30-69.959-30-149.5Q96-560 126-629.5t82.5-122Q261-804 330.958-834q69.959-30 149.5-30Q560-864 629.5-834t122 82.5Q804-699 834-629.276q30 69.725 30 149Q864-401 834-331q-30 70-82.5 122.5T629.276-126q-69.725 30-149 30ZM480-168q130 0 221-91t91-221q0-130-91-221t-221-91q-130 0-221 91t-91 221q0 130 91 221t221 91Zm0-312Z'/%3E%3C/svg%3E")}.alert-icon-warning,.markdown-alert-warning::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm69-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Zm0-100Z'/%3E%3C/svg%3E")}.alert-icon-danger,.alert-icon-caution,.markdown-alert-caution::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M239.256-400q0 58.091 27.975 108.995t76.13 81.237q-5.616-8.513-8.487-18.398-2.872-9.885-2.872-19.167 1.333-26.436 12.153-50.307 10.821-23.872 31.41-43.461L480-443.921l105.819 102.82q18.923 19.311 29.885 43.321 10.961 24.011 12.294 50.447 0 9.282-2.872 19.167-2.871 9.885-7.82 18.398 47.488-30.333 75.796-81.237Q721.41-341.909 721.41-400q0-47.622-19.258-93.169-19.259-45.547-53.998-82.549-19.951 13.41-42.202 19.859Q583.7-549.41 561-549.41q-62.448 0-105.108-38.039-42.661-38.038-51.225-98.628v-9.744q-39.385 31.949-69.898 67.68-30.513 35.73-51.987 74.166t-32.5 77.464Q239.256-437.483 239.256-400ZM480-349.539l-57.436 56.436q-12.154 11.821-17.731 26.029-5.577 14.208-5.577 29.074 0 32.769 23.498 55.757 23.497 22.987 57.246 22.987 33.432 0 57.421-22.906 23.989-22.906 23.989-55.561 0-16.162-6.116-30.162-6.116-13.999-17.454-25.154l-57.84-56.5Zm-11.002-469.022V-708q0 38.637 26.832 64.819 26.831 26.183 65.17 26.183 15.609 0 30.818-5.923 15.208-5.923 28.131-17.718l22.615-24.102q67.564 44.128 106.999 114.917 39.435 70.79 39.435 150.156 0 128.206-89.846 218.103Q609.307-91.668 480-91.668q-129.027 0-218.68-89.652-89.652-89.653-89.652-218.68 0-119.178 79.371-232.447t217.959-186.114Z'/%3E%3C/svg%3E")}.alert.note,.note.markdown-alert-caution,.note.markdown-alert-warning,.note.markdown-alert-important,.note.markdown-alert-tip,.note.markdown-alert-note{border-color:var(--alert-note-border);background-color:color-mix(in srgb, var(--alert-note-bg) 15%, rgba(0,0,0,0))}.alert.note>.alert-content>p>code,.note.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.note>p>p>code,.note.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.note>p>p>code,.note.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.note>p>p>code,.note.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.note>p>p>code,.note.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.note>p>p>code{background-color:var(--alert-note-code)}.alert.note a,.note.markdown-alert-caution a,.note.markdown-alert-warning a,.note.markdown-alert-important a,.note.markdown-alert-tip a,.note.markdown-alert-note a{color:var(--alert-note-border)}.alert.note a code,.note.markdown-alert-caution a code,.note.markdown-alert-warning a code,.note.markdown-alert-important a code,.note.markdown-alert-tip a code,.note.markdown-alert-note a code{background-color:var(--alert-note-bg)}.alert.note .alert-title,.alert.note .markdown-alert-caution>p::before,.note.markdown-alert-caution .alert-title,.note.markdown-alert-caution .markdown-alert-caution>p::before,.alert.note .markdown-alert-warning>p::before,.note.markdown-alert-caution .markdown-alert-warning>p::before,.note.markdown-alert-warning .alert-title,.note.markdown-alert-warning .markdown-alert-caution>p::before,.note.markdown-alert-warning .markdown-alert-warning>p::before,.alert.note .markdown-alert-important>p::before,.note.markdown-alert-caution .markdown-alert-important>p::before,.note.markdown-alert-warning .markdown-alert-important>p::before,.note.markdown-alert-important .alert-title,.note.markdown-alert-important .markdown-alert-caution>p::before,.note.markdown-alert-important .markdown-alert-warning>p::before,.note.markdown-alert-important .markdown-alert-important>p::before,.alert.note .markdown-alert-tip>p::before,.note.markdown-alert-caution .markdown-alert-tip>p::before,.note.markdown-alert-warning .markdown-alert-tip>p::before,.note.markdown-alert-important .markdown-alert-tip>p::before,.note.markdown-alert-tip .alert-title,.note.markdown-alert-tip .markdown-alert-caution>p::before,.note.markdown-alert-tip .markdown-alert-warning>p::before,.note.markdown-alert-tip .markdown-alert-important>p::before,.note.markdown-alert-tip .markdown-alert-tip>p::before,.alert.note .markdown-alert-note>p::before,.note.markdown-alert-caution .markdown-alert-note>p::before,.note.markdown-alert-warning .markdown-alert-note>p::before,.note.markdown-alert-important .markdown-alert-note>p::before,.note.markdown-alert-tip .markdown-alert-note>p::before,.note.markdown-alert-note .alert-title,.note.markdown-alert-note .markdown-alert-caution>p::before,.note.markdown-alert-note .markdown-alert-warning>p::before,.note.markdown-alert-note .markdown-alert-important>p::before,.note.markdown-alert-note .markdown-alert-tip>p::before,.note.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-note-border)}.alert.note .alert-icon,.alert.note .markdown-alert-caution::before,.note.markdown-alert-caution .alert-icon,.note.markdown-alert-caution .markdown-alert-caution::before,.alert.note .markdown-alert-warning::before,.note.markdown-alert-caution .markdown-alert-warning::before,.note.markdown-alert-warning .alert-icon,.note.markdown-alert-warning .markdown-alert-caution::before,.note.markdown-alert-warning .markdown-alert-warning::before,.alert.note .markdown-alert-important::before,.note.markdown-alert-caution .markdown-alert-important::before,.note.markdown-alert-warning .markdown-alert-important::before,.note.markdown-alert-important .alert-icon,.note.markdown-alert-important .markdown-alert-caution::before,.note.markdown-alert-important .markdown-alert-warning::before,.note.markdown-alert-important .markdown-alert-important::before,.alert.note .markdown-alert-tip::before,.note.markdown-alert-caution .markdown-alert-tip::before,.note.markdown-alert-warning .markdown-alert-tip::before,.note.markdown-alert-important .markdown-alert-tip::before,.note.markdown-alert-tip .alert-icon,.note.markdown-alert-tip .markdown-alert-caution::before,.note.markdown-alert-tip .markdown-alert-warning::before,.note.markdown-alert-tip .markdown-alert-important::before,.note.markdown-alert-tip .markdown-alert-tip::before,.alert.note .markdown-alert-note::before,.note.markdown-alert-caution .markdown-alert-note::before,.note.markdown-alert-warning .markdown-alert-note::before,.note.markdown-alert-important .markdown-alert-note::before,.note.markdown-alert-tip .markdown-alert-note::before,.note.markdown-alert-note .alert-icon,.note.markdown-alert-note .markdown-alert-caution::before,.note.markdown-alert-note .markdown-alert-warning::before,.note.markdown-alert-note .markdown-alert-important::before,.note.markdown-alert-note .markdown-alert-tip::before,.note.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-note-border)}.alert.tip,.tip.markdown-alert-caution,.tip.markdown-alert-warning,.tip.markdown-alert-important,.tip.markdown-alert-tip,.tip.markdown-alert-note{border-color:var(--alert-tip-border);background-color:color-mix(in srgb, var(--alert-tip-bg) 15%, rgba(0,0,0,0))}.alert.tip>.alert-content>p>code,.tip.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.tip>p>p>code,.tip.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.tip>p>p>code,.tip.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.tip>p>p>code,.tip.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.tip>p>p>code,.tip.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.tip>p>p>code{background-color:var(--alert-tip-code)}.alert.tip a,.tip.markdown-alert-caution a,.tip.markdown-alert-warning a,.tip.markdown-alert-important a,.tip.markdown-alert-tip a,.tip.markdown-alert-note a{color:var(--alert-tip-border)}.alert.tip a code,.tip.markdown-alert-caution a code,.tip.markdown-alert-warning a code,.tip.markdown-alert-important a code,.tip.markdown-alert-tip a code,.tip.markdown-alert-note a code{background-color:var(--alert-tip-bg)}.alert.tip .alert-title,.alert.tip .markdown-alert-caution>p::before,.tip.markdown-alert-caution .alert-title,.tip.markdown-alert-caution .markdown-alert-caution>p::before,.alert.tip .markdown-alert-warning>p::before,.tip.markdown-alert-caution .markdown-alert-warning>p::before,.tip.markdown-alert-warning .alert-title,.tip.markdown-alert-warning .markdown-alert-caution>p::before,.tip.markdown-alert-warning .markdown-alert-warning>p::before,.alert.tip .markdown-alert-important>p::before,.tip.markdown-alert-caution .markdown-alert-important>p::before,.tip.markdown-alert-warning .markdown-alert-important>p::before,.tip.markdown-alert-important .alert-title,.tip.markdown-alert-important .markdown-alert-caution>p::before,.tip.markdown-alert-important .markdown-alert-warning>p::before,.tip.markdown-alert-important .markdown-alert-important>p::before,.alert.tip .markdown-alert-tip>p::before,.tip.markdown-alert-caution .markdown-alert-tip>p::before,.tip.markdown-alert-warning .markdown-alert-tip>p::before,.tip.markdown-alert-important .markdown-alert-tip>p::before,.tip.markdown-alert-tip .alert-title,.tip.markdown-alert-tip .markdown-alert-caution>p::before,.tip.markdown-alert-tip .markdown-alert-warning>p::before,.tip.markdown-alert-tip .markdown-alert-important>p::before,.tip.markdown-alert-tip .markdown-alert-tip>p::before,.alert.tip .markdown-alert-note>p::before,.tip.markdown-alert-caution .markdown-alert-note>p::before,.tip.markdown-alert-warning .markdown-alert-note>p::before,.tip.markdown-alert-important .markdown-alert-note>p::before,.tip.markdown-alert-tip .markdown-alert-note>p::before,.tip.markdown-alert-note .alert-title,.tip.markdown-alert-note .markdown-alert-caution>p::before,.tip.markdown-alert-note .markdown-alert-warning>p::before,.tip.markdown-alert-note .markdown-alert-important>p::before,.tip.markdown-alert-note .markdown-alert-tip>p::before,.tip.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-tip-border)}.alert.tip .alert-icon,.alert.tip .markdown-alert-caution::before,.tip.markdown-alert-caution .alert-icon,.tip.markdown-alert-caution .markdown-alert-caution::before,.alert.tip .markdown-alert-warning::before,.tip.markdown-alert-caution .markdown-alert-warning::before,.tip.markdown-alert-warning .alert-icon,.tip.markdown-alert-warning .markdown-alert-caution::before,.tip.markdown-alert-warning .markdown-alert-warning::before,.alert.tip .markdown-alert-important::before,.tip.markdown-alert-caution .markdown-alert-important::before,.tip.markdown-alert-warning .markdown-alert-important::before,.tip.markdown-alert-important .alert-icon,.tip.markdown-alert-important .markdown-alert-caution::before,.tip.markdown-alert-important .markdown-alert-warning::before,.tip.markdown-alert-important .markdown-alert-important::before,.alert.tip .markdown-alert-tip::before,.tip.markdown-alert-caution .markdown-alert-tip::before,.tip.markdown-alert-warning .markdown-alert-tip::before,.tip.markdown-alert-important .markdown-alert-tip::before,.tip.markdown-alert-tip .alert-icon,.tip.markdown-alert-tip .markdown-alert-caution::before,.tip.markdown-alert-tip .markdown-alert-warning::before,.tip.markdown-alert-tip .markdown-alert-important::before,.tip.markdown-alert-tip .markdown-alert-tip::before,.alert.tip .markdown-alert-note::before,.tip.markdown-alert-caution .markdown-alert-note::before,.tip.markdown-alert-warning .markdown-alert-note::before,.tip.markdown-alert-important .markdown-alert-note::before,.tip.markdown-alert-tip .markdown-alert-note::before,.tip.markdown-alert-note .alert-icon,.tip.markdown-alert-note .markdown-alert-caution::before,.tip.markdown-alert-note .markdown-alert-warning::before,.tip.markdown-alert-note .markdown-alert-important::before,.tip.markdown-alert-note .markdown-alert-tip::before,.tip.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-tip-border)}.alert.info,.info.markdown-alert-caution,.info.markdown-alert-warning,.info.markdown-alert-important,.info.markdown-alert-tip,.info.markdown-alert-note{border-color:var(--alert-info-border);background-color:color-mix(in srgb, var(--alert-info-bg) 15%, rgba(0,0,0,0))}.alert.info>.alert-content>p>code,.info.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.info>p>p>code,.info.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.info>p>p>code,.info.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.info>p>p>code,.info.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.info>p>p>code,.info.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.info>p>p>code{background-color:var(--alert-info-code)}.alert.info a,.info.markdown-alert-caution a,.info.markdown-alert-warning a,.info.markdown-alert-important a,.info.markdown-alert-tip a,.info.markdown-alert-note a{color:var(--alert-info-border)}.alert.info a code,.info.markdown-alert-caution a code,.info.markdown-alert-warning a code,.info.markdown-alert-important a code,.info.markdown-alert-tip a code,.info.markdown-alert-note a code{background-color:var(--alert-info-bg)}.alert.info .alert-title,.alert.info .markdown-alert-caution>p::before,.info.markdown-alert-caution .alert-title,.info.markdown-alert-caution .markdown-alert-caution>p::before,.alert.info .markdown-alert-warning>p::before,.info.markdown-alert-caution .markdown-alert-warning>p::before,.info.markdown-alert-warning .alert-title,.info.markdown-alert-warning .markdown-alert-caution>p::before,.info.markdown-alert-warning .markdown-alert-warning>p::before,.alert.info .markdown-alert-important>p::before,.info.markdown-alert-caution .markdown-alert-important>p::before,.info.markdown-alert-warning .markdown-alert-important>p::before,.info.markdown-alert-important .alert-title,.info.markdown-alert-important .markdown-alert-caution>p::before,.info.markdown-alert-important .markdown-alert-warning>p::before,.info.markdown-alert-important .markdown-alert-important>p::before,.alert.info .markdown-alert-tip>p::before,.info.markdown-alert-caution .markdown-alert-tip>p::before,.info.markdown-alert-warning .markdown-alert-tip>p::before,.info.markdown-alert-important .markdown-alert-tip>p::before,.info.markdown-alert-tip .alert-title,.info.markdown-alert-tip .markdown-alert-caution>p::before,.info.markdown-alert-tip .markdown-alert-warning>p::before,.info.markdown-alert-tip .markdown-alert-important>p::before,.info.markdown-alert-tip .markdown-alert-tip>p::before,.alert.info .markdown-alert-note>p::before,.info.markdown-alert-caution .markdown-alert-note>p::before,.info.markdown-alert-warning .markdown-alert-note>p::before,.info.markdown-alert-important .markdown-alert-note>p::before,.info.markdown-alert-tip .markdown-alert-note>p::before,.info.markdown-alert-note .alert-title,.info.markdown-alert-note .markdown-alert-caution>p::before,.info.markdown-alert-note .markdown-alert-warning>p::before,.info.markdown-alert-note .markdown-alert-important>p::before,.info.markdown-alert-note .markdown-alert-tip>p::before,.info.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-info-border)}.alert.info .alert-icon,.alert.info .markdown-alert-caution::before,.info.markdown-alert-caution .alert-icon,.info.markdown-alert-caution .markdown-alert-caution::before,.alert.info .markdown-alert-warning::before,.info.markdown-alert-caution .markdown-alert-warning::before,.info.markdown-alert-warning .alert-icon,.info.markdown-alert-warning .markdown-alert-caution::before,.info.markdown-alert-warning .markdown-alert-warning::before,.alert.info .markdown-alert-important::before,.info.markdown-alert-caution .markdown-alert-important::before,.info.markdown-alert-warning .markdown-alert-important::before,.info.markdown-alert-important .alert-icon,.info.markdown-alert-important .markdown-alert-caution::before,.info.markdown-alert-important .markdown-alert-warning::before,.info.markdown-alert-important .markdown-alert-important::before,.alert.info .markdown-alert-tip::before,.info.markdown-alert-caution .markdown-alert-tip::before,.info.markdown-alert-warning .markdown-alert-tip::before,.info.markdown-alert-important .markdown-alert-tip::before,.info.markdown-alert-tip .alert-icon,.info.markdown-alert-tip .markdown-alert-caution::before,.info.markdown-alert-tip .markdown-alert-warning::before,.info.markdown-alert-tip .markdown-alert-important::before,.info.markdown-alert-tip .markdown-alert-tip::before,.alert.info .markdown-alert-note::before,.info.markdown-alert-caution .markdown-alert-note::before,.info.markdown-alert-warning .markdown-alert-note::before,.info.markdown-alert-important .markdown-alert-note::before,.info.markdown-alert-tip .markdown-alert-note::before,.info.markdown-alert-note .alert-icon,.info.markdown-alert-note .markdown-alert-caution::before,.info.markdown-alert-note .markdown-alert-warning::before,.info.markdown-alert-note .markdown-alert-important::before,.info.markdown-alert-note .markdown-alert-tip::before,.info.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-info-border)}.alert.warning,.warning.markdown-alert-caution,.warning.markdown-alert-warning,.warning.markdown-alert-important,.warning.markdown-alert-tip,.warning.markdown-alert-note{border-color:var(--alert-warning-border);background-color:color-mix(in srgb, var(--alert-warning-bg) 15%, rgba(0,0,0,0))}.alert.warning>.alert-content>p>code,.warning.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.warning>p>p>code,.warning.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.warning>p>p>code,.warning.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.warning>p>p>code,.warning.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.warning>p>p>code,.warning.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.warning>p>p>code{background-color:var(--alert-warning-code)}.alert.warning a,.warning.markdown-alert-caution a,.warning.markdown-alert-warning a,.warning.markdown-alert-important a,.warning.markdown-alert-tip a,.warning.markdown-alert-note a{color:var(--alert-warning-border)}.alert.warning a code,.warning.markdown-alert-caution a code,.warning.markdown-alert-warning a code,.warning.markdown-alert-important a code,.warning.markdown-alert-tip a code,.warning.markdown-alert-note a code{background-color:var(--alert-warning-bg)}.alert.warning .alert-title,.alert.warning .markdown-alert-caution>p::before,.warning.markdown-alert-caution .alert-title,.warning.markdown-alert-caution .markdown-alert-caution>p::before,.alert.warning .markdown-alert-warning>p::before,.warning.markdown-alert-caution .markdown-alert-warning>p::before,.warning.markdown-alert-warning .alert-title,.warning.markdown-alert-warning .markdown-alert-caution>p::before,.warning.markdown-alert-warning .markdown-alert-warning>p::before,.alert.warning .markdown-alert-important>p::before,.warning.markdown-alert-caution .markdown-alert-important>p::before,.warning.markdown-alert-warning .markdown-alert-important>p::before,.warning.markdown-alert-important .alert-title,.warning.markdown-alert-important .markdown-alert-caution>p::before,.warning.markdown-alert-important .markdown-alert-warning>p::before,.warning.markdown-alert-important .markdown-alert-important>p::before,.alert.warning .markdown-alert-tip>p::before,.warning.markdown-alert-caution .markdown-alert-tip>p::before,.warning.markdown-alert-warning .markdown-alert-tip>p::before,.warning.markdown-alert-important .markdown-alert-tip>p::before,.warning.markdown-alert-tip .alert-title,.warning.markdown-alert-tip .markdown-alert-caution>p::before,.warning.markdown-alert-tip .markdown-alert-warning>p::before,.warning.markdown-alert-tip .markdown-alert-important>p::before,.warning.markdown-alert-tip .markdown-alert-tip>p::before,.alert.warning .markdown-alert-note>p::before,.warning.markdown-alert-caution .markdown-alert-note>p::before,.warning.markdown-alert-warning .markdown-alert-note>p::before,.warning.markdown-alert-important .markdown-alert-note>p::before,.warning.markdown-alert-tip .markdown-alert-note>p::before,.warning.markdown-alert-note .alert-title,.warning.markdown-alert-note .markdown-alert-caution>p::before,.warning.markdown-alert-note .markdown-alert-warning>p::before,.warning.markdown-alert-note .markdown-alert-important>p::before,.warning.markdown-alert-note .markdown-alert-tip>p::before,.warning.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-warning-border)}.alert.warning .alert-icon,.alert.warning .markdown-alert-caution::before,.warning.markdown-alert-caution .alert-icon,.warning.markdown-alert-caution .markdown-alert-caution::before,.alert.warning .markdown-alert-warning::before,.warning.markdown-alert-caution .markdown-alert-warning::before,.warning.markdown-alert-warning .alert-icon,.warning.markdown-alert-warning .markdown-alert-caution::before,.warning.markdown-alert-warning .markdown-alert-warning::before,.alert.warning .markdown-alert-important::before,.warning.markdown-alert-caution .markdown-alert-important::before,.warning.markdown-alert-warning .markdown-alert-important::before,.warning.markdown-alert-important .alert-icon,.warning.markdown-alert-important .markdown-alert-caution::before,.warning.markdown-alert-important .markdown-alert-warning::before,.warning.markdown-alert-important .markdown-alert-important::before,.alert.warning .markdown-alert-tip::before,.warning.markdown-alert-caution .markdown-alert-tip::before,.warning.markdown-alert-warning .markdown-alert-tip::before,.warning.markdown-alert-important .markdown-alert-tip::before,.warning.markdown-alert-tip .alert-icon,.warning.markdown-alert-tip .markdown-alert-caution::before,.warning.markdown-alert-tip .markdown-alert-warning::before,.warning.markdown-alert-tip .markdown-alert-important::before,.warning.markdown-alert-tip .markdown-alert-tip::before,.alert.warning .markdown-alert-note::before,.warning.markdown-alert-caution .markdown-alert-note::before,.warning.markdown-alert-warning .markdown-alert-note::before,.warning.markdown-alert-important .markdown-alert-note::before,.warning.markdown-alert-tip .markdown-alert-note::before,.warning.markdown-alert-note .alert-icon,.warning.markdown-alert-note .markdown-alert-caution::before,.warning.markdown-alert-note .markdown-alert-warning::before,.warning.markdown-alert-note .markdown-alert-important::before,.warning.markdown-alert-note .markdown-alert-tip::before,.warning.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-warning-border)}.alert.danger,.danger.markdown-alert-caution,.danger.markdown-alert-warning,.danger.markdown-alert-important,.danger.markdown-alert-tip,.danger.markdown-alert-note{border-color:var(--alert-danger-border);background-color:color-mix(in srgb, var(--alert-danger-bg) 15%, rgba(0,0,0,0))}.alert.danger>.alert-content>p>code,.danger.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.danger>p>p>code,.danger.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.danger>p>p>code,.danger.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.danger>p>p>code,.danger.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.danger>p>p>code,.danger.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.danger>p>p>code{background-color:var(--alert-danger-code)}.alert.danger a,.danger.markdown-alert-caution a,.danger.markdown-alert-warning a,.danger.markdown-alert-important a,.danger.markdown-alert-tip a,.danger.markdown-alert-note a{color:var(--alert-danger-border)}.alert.danger a code,.danger.markdown-alert-caution a code,.danger.markdown-alert-warning a code,.danger.markdown-alert-important a code,.danger.markdown-alert-tip a code,.danger.markdown-alert-note a code{background-color:var(--alert-danger-bg)}.alert.danger .alert-title,.alert.danger .markdown-alert-caution>p::before,.danger.markdown-alert-caution .alert-title,.danger.markdown-alert-caution .markdown-alert-caution>p::before,.alert.danger .markdown-alert-warning>p::before,.danger.markdown-alert-caution .markdown-alert-warning>p::before,.danger.markdown-alert-warning .alert-title,.danger.markdown-alert-warning .markdown-alert-caution>p::before,.danger.markdown-alert-warning .markdown-alert-warning>p::before,.alert.danger .markdown-alert-important>p::before,.danger.markdown-alert-caution .markdown-alert-important>p::before,.danger.markdown-alert-warning .markdown-alert-important>p::before,.danger.markdown-alert-important .alert-title,.danger.markdown-alert-important .markdown-alert-caution>p::before,.danger.markdown-alert-important .markdown-alert-warning>p::before,.danger.markdown-alert-important .markdown-alert-important>p::before,.alert.danger .markdown-alert-tip>p::before,.danger.markdown-alert-caution .markdown-alert-tip>p::before,.danger.markdown-alert-warning .markdown-alert-tip>p::before,.danger.markdown-alert-important .markdown-alert-tip>p::before,.danger.markdown-alert-tip .alert-title,.danger.markdown-alert-tip .markdown-alert-caution>p::before,.danger.markdown-alert-tip .markdown-alert-warning>p::before,.danger.markdown-alert-tip .markdown-alert-important>p::before,.danger.markdown-alert-tip .markdown-alert-tip>p::before,.alert.danger .markdown-alert-note>p::before,.danger.markdown-alert-caution .markdown-alert-note>p::before,.danger.markdown-alert-warning .markdown-alert-note>p::before,.danger.markdown-alert-important .markdown-alert-note>p::before,.danger.markdown-alert-tip .markdown-alert-note>p::before,.danger.markdown-alert-note .alert-title,.danger.markdown-alert-note .markdown-alert-caution>p::before,.danger.markdown-alert-note .markdown-alert-warning>p::before,.danger.markdown-alert-note .markdown-alert-important>p::before,.danger.markdown-alert-note .markdown-alert-tip>p::before,.danger.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-danger-border)}.alert.danger .alert-icon,.alert.danger .markdown-alert-caution::before,.danger.markdown-alert-caution .alert-icon,.danger.markdown-alert-caution .markdown-alert-caution::before,.alert.danger .markdown-alert-warning::before,.danger.markdown-alert-caution .markdown-alert-warning::before,.danger.markdown-alert-warning .alert-icon,.danger.markdown-alert-warning .markdown-alert-caution::before,.danger.markdown-alert-warning .markdown-alert-warning::before,.alert.danger .markdown-alert-important::before,.danger.markdown-alert-caution .markdown-alert-important::before,.danger.markdown-alert-warning .markdown-alert-important::before,.danger.markdown-alert-important .alert-icon,.danger.markdown-alert-important .markdown-alert-caution::before,.danger.markdown-alert-important .markdown-alert-warning::before,.danger.markdown-alert-important .markdown-alert-important::before,.alert.danger .markdown-alert-tip::before,.danger.markdown-alert-caution .markdown-alert-tip::before,.danger.markdown-alert-warning .markdown-alert-tip::before,.danger.markdown-alert-important .markdown-alert-tip::before,.danger.markdown-alert-tip .alert-icon,.danger.markdown-alert-tip .markdown-alert-caution::before,.danger.markdown-alert-tip .markdown-alert-warning::before,.danger.markdown-alert-tip .markdown-alert-important::before,.danger.markdown-alert-tip .markdown-alert-tip::before,.alert.danger .markdown-alert-note::before,.danger.markdown-alert-caution .markdown-alert-note::before,.danger.markdown-alert-warning .markdown-alert-note::before,.danger.markdown-alert-important .markdown-alert-note::before,.danger.markdown-alert-tip .markdown-alert-note::before,.danger.markdown-alert-note .alert-icon,.danger.markdown-alert-note .markdown-alert-caution::before,.danger.markdown-alert-note .markdown-alert-warning::before,.danger.markdown-alert-note .markdown-alert-important::before,.danger.markdown-alert-note .markdown-alert-tip::before,.danger.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-danger-border)}.markdown-alert-note{border-color:var(--alert-note-border);background-color:color-mix(in srgb, var(--alert-note-bg) 15%, rgba(0,0,0,0))}.markdown-alert-note::before{content:"";background-color:var(--alert-note-border);margin-inline-start:25px}.markdown-alert-note>p{margin-inline-start:unset}.markdown-alert-note>p::before{content:"NOTE";color:var(--alert-note-border);margin-block-end:1rem}.markdown-alert-note>p>code{background-color:var(--alert-note-code)}.markdown-alert-note a{color:var(--alert-note-border)}.markdown-alert-note a code{background-color:var(--alert-note-bg)}.markdown-alert-tip{border-color:var(--alert-tip-border);background-color:color-mix(in srgb, var(--alert-tip-bg) 15%, rgba(0,0,0,0))}.markdown-alert-tip::before{content:"";background-color:var(--alert-tip-border);margin-inline-start:25px}.markdown-alert-tip>p{margin-inline-start:unset}.markdown-alert-tip>p::before{content:"TIP";color:var(--alert-tip-border);margin-block-end:1rem}.markdown-alert-tip>p>code{background-color:var(--alert-tip-code)}.markdown-alert-tip a{color:var(--alert-tip-border)}.markdown-alert-tip a code{background-color:var(--alert-tip-bg)}.markdown-alert-important{border-color:var(--alert-important-border);background-color:color-mix(in srgb, var(--alert-important-bg) 15%, rgba(0,0,0,0))}.markdown-alert-important::before{content:"";background-color:var(--alert-important-border);margin-inline-start:25px}.markdown-alert-important>p{margin-inline-start:unset}.markdown-alert-important>p::before{content:"IMPORTANT";color:var(--alert-important-border);margin-block-end:1rem}.markdown-alert-important>p>code{background-color:var(--alert-important-code)}.markdown-alert-important a{color:var(--alert-important-border)}.markdown-alert-important a code{background-color:var(--alert-important-bg)}.markdown-alert-warning{border-color:var(--alert-warning-border);background-color:color-mix(in srgb, var(--alert-warning-bg) 15%, rgba(0,0,0,0))}.markdown-alert-warning::before{content:"";background-color:var(--alert-warning-border);margin-inline-start:25px}.markdown-alert-warning>p{margin-inline-start:unset}.markdown-alert-warning>p::before{content:"WARNING";color:var(--alert-warning-border);margin-block-end:1rem}.markdown-alert-warning>p>code{background-color:var(--alert-warning-code)}.markdown-alert-warning a{color:var(--alert-warning-border)}.markdown-alert-warning a code{background-color:var(--alert-warning-bg)}.markdown-alert-caution{border-color:var(--alert-caution-border);background-color:color-mix(in srgb, var(--alert-caution-bg) 15%, rgba(0,0,0,0))}.markdown-alert-caution::before{content:"";background-color:var(--alert-caution-border);margin-inline-start:25px}.markdown-alert-caution>p{margin-inline-start:unset}.markdown-alert-caution>p::before{content:"CAUTION";color:var(--alert-caution-border);margin-block-end:1rem}.markdown-alert-caution>p>code{background-color:var(--alert-caution-code)}.markdown-alert-caution a{color:var(--alert-caution-border)}.markdown-alert-caution a code{background-color:var(--alert-caution-bg)}figure.mastodon-post{position:relative;border:1px solid var(--accent-color);margin:0;padding:60px 25px 25px}figure.mastodon-post::before{content:"> From Mastodon:";position:absolute;top:20px;left:20px;display:block;color:var(--accent-color);font-weight:bold}figure.mastodon-post blockquote{padding:unset;border:unset;overflow-wrap:anywhere}figure.mastodon-post blockquote::before{content:none}figure.mastodon-post figcaption{margin-top:25px}.references-list p{text-indent:-2.4rem;margin-inline-start:2.4rem}.wide-container{margin:0}@media (max-width: 684px){.wide-container{overflow-x:auto}}.main-menu-items{position:relative}.main-menu-items .theme-selector{position:relative;margin-left:auto}.main-menu-items .theme-selector .theme-trigger{text-decoration:none;cursor:pointer;padding:2px 4px;border-radius:3px;transition:all .15s ease;color:var(--text-color)}[data-theme=solar-flare] .main-menu-items .theme-selector .theme-trigger{color:#1a1a1a;background:rgba(26,26,26,.05)}[data-theme=solar-flare] .main-menu-items .theme-selector .theme-trigger:hover{background:rgba(255,69,0,.1);color:#ff4500}[data-theme=oled-abyss] .main-menu-items .theme-selector .theme-trigger{color:#fff}[data-theme=oled-abyss] .main-menu-items .theme-selector .theme-trigger:hover{color:#00d4ff}.main-menu-items .theme-selector .theme-trigger:hover{color:var(--accent-color)}.main-menu-items .theme-selector .theme-dropdown{position:absolute;top:100%;right:0;z-index:100;display:none;min-width:160px;margin:0;padding:10px;list-style:none;background:#2a2a2a;border:2px solid var(--accent-color);box-shadow:0 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0)),-10px 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0)),10px 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0))}.main-menu-items .theme-selector .theme-dropdown.show{display:block}.main-menu-items .theme-selector .theme-dropdown li{margin:0}.main-menu-items .theme-selector .theme-dropdown a{display:block;padding:5px 8px;color:#e0e0e0;text-decoration:none;transition:all .15s ease;border-radius:3px}.main-menu-items .theme-selector .theme-dropdown a:hover{background:color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0));color:#fff}.main-menu-items .theme-selector .theme-dropdown a.current{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0));font-weight:bold}.main-menu-items .theme-selector .theme-dropdown a.current::before{content:"→ "}@media (max-width: 684px){.main-menu-items .theme-selector .theme-dropdown{position:static;margin:10px 0 0 0;box-shadow:none;border:1px solid var(--accent-color)}.main-menu-items .theme-selector .theme-dropdown.show{display:block}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0} 1 + @font-face{font-family:"Fira Code";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/FiraCode-Regular.woff2") format("woff2")}@font-face{font-family:"Fira Code";font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/FiraCode-Bold.woff2") format("woff2")}:root{--font-size: 1rem;--line-height: 1.54em;--radius: 0}@media (max-width: 684px){:root{--font-size: 0.95rem}}:root,[data-theme=terminus]{--background-color: #1d2021;--foreground-color: #ebdbb2;--accent-color: #8ec07c;--footnote-color: rgba(255, 255, 255, 0.5)}[data-theme=tokyo-night]{--background-color: #1a1b26;--text-color: #c0caf5;--accent-color: #7aa2f7;--footnote-color: rgba(192, 202, 245, 0.6)}[data-theme=solarized-dark]{--background-color: #002b36;--text-color: #839496;--accent-color: #268bd2;--footnote-color: rgba(131, 148, 150, 0.6)}[data-theme=nord]{--background-color: #2e3440;--text-color: #d8dee9;--accent-color: #5e81ac;--footnote-color: rgba(216, 222, 233, 0.6)}[data-theme=one-dark]{--background-color: #282c34;--text-color: #abb2bf;--accent-color: #61afef;--footnote-color: rgba(171, 178, 191, 0.6)}[data-theme=gruvbox-dark]{--background-color: #282828;--text-color: #ebdbb2;--accent-color: #fe8019;--footnote-color: rgba(235, 219, 178, 0.6)}[data-theme=oled-abyss]{--background-color: #000000;--text-color: #ffffff;--accent-color: #00d4ff;--footnote-color: rgba(255, 255, 255, 0.7)}[data-theme=solar-flare]{--background-color: #ffffff;--text-color: #1a1a1a;--accent-color: #ff4500;--footnote-color: rgba(26, 26, 26, 0.6)}html{box-sizing:border-box;accent-color:var(--accent-color);scrollbar-color:var(--accent-color) rgba(0,0,0,0)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace;font-size:var(--font-size);line-height:var(--line-height);background:var(--background-color);color:var(--text-color);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;text-size-adjust:100%;font-feature-settings:"liga"}body.layout-left,body.layout-center,body.layout-full-width{display:flex;flex-direction:column;padding:40px;max-width:864px;min-height:100vh;border-right:1px solid color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0))}@media (max-width: 684px){body.layout-left,body.layout-center,body.layout-full-width{padding:20px}}body.layout-center,body.layout-full-width{border:none;margin:0 auto}body.layout-full-width{max-width:100%}main{overflow-wrap:break-word}h1{font-size:calc(var(--font-size)*1.45);letter-spacing:0}h2{font-size:calc(var(--font-size)*1.35);letter-spacing:0}h3{font-size:calc(var(--font-size)*1.15);letter-spacing:0}h4,h5,h6{font-size:calc(var(--font-size)*1);letter-spacing:0}h1,h2,h3,h4,h5,h6,p,ul,ol,img,figure,video,table{margin:25px 0}a{color:var(--accent-color);outline:none}a.read-more{text-decoration:none}button{position:relative;font:inherit;font-weight:bold;text-decoration:none;text-align:center;align-items:center;background:rgba(0,0,0,0);color:var(--accent-color);padding:5px 18px;border:4px solid var(--accent-color);border-radius:var(--radius);transition:background .15s linear;appearance:none;cursor:pointer;outline:none}button:hover{background:color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0))}a:focus-visible,button:focus-visible,input:focus-visible{outline:1px solid var(--accent-color);outline-offset:2px}input{border:1px solid var(--text-color);border-radius:var(--radius);padding:10px;background:rgba(0,0,0,0);color:var(--text-color);appearance:none}input[type=checkbox]{padding:10px;vertical-align:middle;box-shadow:inset 0 0 0 3px var(--background-color)}input[type=checkbox]:active{box-shadow:none}input[type=checkbox]:checked{background:var(--accent-color)}img,video{display:block;max-inline-size:100%;block-size:auto}figure{margin:0 auto;width:fit-content}figure img,figure video{margin:0 auto}figure:not(.mastodon-post) figcaption{background:var(--accent-color);color:var(--background-color);text-align:center;font-size:var(--font-size);font-weight:normal;margin-top:5px;padding:5px 8px;border-radius:0 0 var(--radius) var(--radius)}figure:not(.mastodon-post) figcaption a{color:var(--background-color)}figure:not(.mastodon-post) figcaption p:first-child{margin:0}ul,ol{margin-inline-start:4ch;padding:0}ul ul,ul ol,ol ul,ol ol{margin-block:5px}ul li,ol li{position:relative}ul li::marker,ol li::marker{color:var(--accent-color)}code{font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace !important;font-feature-settings:normal;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));border:1px solid var(--code-border);padding:1px 6px;margin:0 2px;font-size:calc(var(--font-size)*.95);color:var(--accent-color)}code code{background:rgba(0,0,0,0);padding:0;margin:0}kbd{font-family:"Fira Code",Monaco,Consolas,"Ubuntu Mono",monospace !important;font-feature-settings:normal;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));border:1px solid var(--code-border);padding:1px 6px;margin:0 2px;font-size:calc(var(--font-size)*.95);border-top:1px solid color-mix(in srgb, var(--accent-color) 25%, rgba(0,0,0,0));border-left:1px solid var(--accent-color);border-right:1px solid var(--accent-color);border-bottom:4px solid var(--accent-color);border-radius:4px}pre{tab-size:4;background:color-mix(in srgb, var(--text-color) 5%, rgba(0,0,0,0));color:var(--text-color);padding:10px;font-size:calc(var(--font-size)*.95) !important;overflow:auto;border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--text-color) 10%, rgba(0,0,0,0))}pre code{background:unset;color:unset;margin:0;padding:0;border:none}pre code mark{display:block;min-width:fit-content}abbr{position:relative;text-decoration-style:dotted;text-decoration-color:var(--accent-color);cursor:help}sub{bottom:-.25em}sup{line-height:0;top:-.25em}mark{background:color-mix(in srgb, var(--accent-color) 45%, rgba(0,0,0,0));color:var(--text-color)}blockquote{position:relative;border-top:1px solid var(--accent-color);border-bottom:1px solid var(--accent-color);margin:0;padding:25px}blockquote::before{content:">";display:block;position:absolute;left:0;color:var(--accent-color)}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}table{border-collapse:collapse}table th,table td{border:2px solid var(--text-color);padding:10px}table th{border-style:solid;color:var(--text-color);text-align:left;text-transform:uppercase;letter-spacing:.04em}hr{width:100%;height:2px;border:none;background:color-mix(in srgb, var(--text-color) 50%, rgba(0,0,0,0))}details{position:relative;margin:25px 0;width:100%;border:1px solid var(--accent-color)}details>summary{padding:3px 10px;color:var(--accent-color);transition:background .15s linear}details>summary:hover{background:color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0))}details>summary::marker{content:none}details>summary::before{display:inline-block;content:"";border:.35rem solid rgba(0,0,0,0);border-top-color:var(--accent-color);margin-inline-start:.3em;margin-inline-end:.75rem;transform:rotate(-90deg);transition:transform .1s ease-out}details[open]>summary::before{transform:translateY(.15rem)}details>:not(img,pre>code,summary){margin-inline:15px}details>:not(img,pre>code,summary):first-of-type{margin-top:15px}details>:not(img,pre>code,summary):last-child{margin-bottom:15px}.header{display:flex;flex-direction:column}@media (max-width: 684px){.header{flex-direction:row}}.header-container{display:flex;align-items:center;justify-content:space-between;flex:1}.header-logo-container{display:flex;flex:1}.header-logo-container::after{content:"";display:block;margin-inline-start:8px;width:100%;background:repeating-linear-gradient(90deg, var(--accent-color), var(--accent-color) 2px, rgba(0,0,0,0) 0, rgba(0,0,0,0) 10px)}.header-logo-container a{flex:0 0 auto;max-width:100%;text-decoration:none}.logo{display:flex;align-items:center;padding:5px 10px;background:var(--accent-color);color:var(--background-color);font-weight:bold;text-decoration:none}@media print{.header{display:none}}.main-menu{display:flex;align-items:flex-start;justify-content:space-between;margin:20px 1px}@media (max-width: 684px){.main-menu{margin:0}}.main-menu-items{position:static;display:flex;flex-wrap:wrap;gap:10px 20px;overflow:visible;border:none;margin:0;padding-bottom:10px;width:100%;background:unset;list-style:none}@media (max-width: 684px){.main-menu-items{display:none}.main-menu-items:popover-open{--shadow-color: rgb(from var(--accent-color) r g b / 70%);color:var(--accent-color);background:var(--background-color);border:2px solid var(--accent-color);box-shadow:0 10px var(--shadow-color),-10px 10px var(--shadow-color),10px 10px var(--shadow-color);padding:10px;display:flex;column-gap:10px;flex-direction:column;margin-top:calc(40px + var(--line-height));margin-inline:auto 20px;max-width:33vw;width:fit-content}.main-menu-items>li>a{display:block;padding:5px}}.main-menu-dropdown-button{display:none;border:2px solid;margin-inline-start:10px;padding:3px 8px;height:100%}@media (max-width: 684px){.main-menu-dropdown-button{display:flex}}.main-menu-dropdown-button:after{content:"";border:.35rem solid rgba(0,0,0,0);border-top-color:var(--accent-color);margin-inline-start:.5em;transform:translateY(.15em)}.skip-to-content{--shadow-color: rgb(from var(--accent-color) r g b / 70%);color:var(--accent-color);background:var(--background-color);border:2px solid var(--accent-color);box-shadow:0 10px var(--shadow-color),-10px 10px var(--shadow-color),10px 10px var(--shadow-color);padding:10px;position:fixed;top:40px;left:-1vw;z-index:99;transform:translateX(-100vw);text-align:center}@media (max-width: 684px){.skip-to-content{top:20px}}.skip-to-content:focus{left:50%;transform:translateX(-50%);outline:none}.footer{padding:40px 0}.footer a{color:inherit}.footer .socials{padding-bottom:25px}@media print{.footer .socials{display:none}}.footer .socials ul{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin:0;list-style:none}.footer .socials .social-link{display:flex;padding:.66rem}.footer .socials .social-link>svg{aspect-ratio:1/1;width:1.5rem;height:auto;margin:0 auto;fill:var(--footnote-color)}.footer .socials .social-link:hover{background:var(--accent-color)}.footer .socials .social-link:hover>svg{fill:var(--background-color)}.footer .copyright{text-align:center;margin:0;color:color-mix(in srgb, var(--text-color) 65%, rgba(0,0,0,0))}.footer .copyright>*{text-wrap:nowrap}.footer .copyright>*:not(:first-child)::before{content:":: "}.content ul:not(.post-meta){list-style:none}.content ul:not(.post-meta) li:not(:last-of-type){margin-bottom:3px}.content ul:not(.post-meta) li:not(:has(input))::before{content:"⦿";position:absolute;left:-20px;color:var(--accent-color)}.content ul:not(.post-meta) li>input{margin-inline-start:-4ch}.content ul:not(.post-meta) ul li:not(:has(input))::before{content:"■"}.content ul:not(.post-meta) ul ul li:not(:has(input))::before{content:"►"}.framed{border:1px solid var(--accent-color);padding:20px;margin:25px 0}.framed *:first-child{margin-top:0}.framed *:last-child{margin-bottom:0}.post{padding:30px 0;width:100%;text-align:left}.post:not(:last-of-type){border-bottom:1px solid color-mix(in srgb, var(--text-color) 10%, rgba(0,0,0,0))}.post-title{position:relative;margin-block:0 15px;padding-bottom:15px;border-bottom:3px dotted var(--accent-color);color:var(--accent-color)}.post-title::after{content:"";position:absolute;bottom:2px;display:block;width:100%;border-bottom:3px dotted var(--accent-color)}.post-title a{text-decoration:none}ul.post-meta{list-style:none;display:block;margin:0 0 8px;color:color-mix(in srgb, var(--text-color) 65%, rgba(0,0,0,0))}ul.post-meta>li{display:inline}ul.post-meta>li::before{content:""}ul.post-meta>li[role=separator]{user-select:none}ul.post-meta>li.draft-label{display:block;float:right;margin-top:-2px;padding-block:2px;padding-inline:8px;background-color:var(--accent-color);color:var(--background-color)}.post-tags{display:flex;flex-wrap:wrap;column-gap:8px;margin-bottom:20px;color:var(--accent-color)}.post-tags>[role=separator]{user-select:none}h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{margin-inline-start:10px;opacity:0%;color:var(--accent-color);text-decoration:none;user-select:none}@media screen and (max-width: 684px){h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{opacity:100%}}@media print{h1 .post-anchor,h2 .post-anchor,h3 .post-anchor,h4 .post-anchor,h5 .post-anchor,h6 .post-anchor{display:none}}h1:focus-within .post-anchor,h1:hover .post-anchor,h2:focus-within .post-anchor,h2:hover .post-anchor,h3:focus-within .post-anchor,h3:hover .post-anchor,h4:focus-within .post-anchor,h4:hover .post-anchor,h5:focus-within .post-anchor,h5:hover .post-anchor,h6:focus-within .post-anchor,h6:hover .post-anchor{opacity:100%}.footnote-reference{font-family:var(--serif-font);font-size:.7rem}.footnote-definition{color:var(--footnote-color);margin-block-end:.6rem}.footnote-definition sup{color:var(--accent-color);margin-inline-end:.15rem;font-size:.75rem}.footnote-definition p{display:inline}.footnotes{border-top:2px solid var(--footnote-color)}.footnotes .footnotes-list p{color:var(--footnote-color);text-align:start}@media print{.post-navigation{display:none}}.post-navigation-title{display:flex;text-align:center;position:relative;margin:45px 0 20px}.post-navigation-title h2{text-align:center;margin:0 auto;padding:5px 10px;background:var(--background-color);color:color-mix(in srgb var(--text-color) 30%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);font-weight:normal;text-transform:uppercase;text-decoration:none;letter-spacing:.1em;z-index:1}.post-navigation-title hr{background:var(--accent-color);position:absolute;left:0;right:0;width:100%;margin-top:15px;z-index:0}.post-navigation-buttons{display:flex;align-items:center;justify-content:center;flex-flow:row wrap;gap:10px;padding-bottom:30px}.post-navigation-buttons>a{display:inline;text-align:center;text-decoration:none}:root{--code-border: color-mix(in srgb, var(--text-color) 10%, transparent)}.copy-button{position:absolute;top:6px;right:10px;padding:3px 8px;width:4.5rem;border:1px solid color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);font-weight:normal;line-height:1em}@media print{.copy-button{display:none}}pre[data-lang]{display:block;position:relative;padding:0;overflow-y:hidden}pre[data-lang]::before{content:attr(data-lang);display:block;padding:6px 10px;border-bottom:1px solid var(--code-border);color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);text-transform:uppercase;line-height:21px}pre[data-lang] code[data-lang]{display:block;overflow-x:auto;padding:10px}pre[data-lang] code[data-lang][data-name]::before{content:attr(data-name);position:absolute;top:0;right:0;display:block;padding:6px 10px;max-width:60%;color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));font-size:calc(var(--font-size)*.8);line-height:21px;overflow:hidden;text-overflow:ellipsis}@media screen{pre[data-lang] code[data-lang]:has(.copy-button)::before{right:calc(4.5rem + 10px)}}pre[data-lang] code[data-lang] mark{margin-inline:-10px;padding-inline:10px;color:unset}pre[data-lang] code[data-lang] table{margin-block:0;width:100%;border-collapse:collapse}pre[data-lang] code[data-lang] table td,pre[data-lang] code[data-lang] table th,pre[data-lang] code[data-lang] table tr{border:none;padding:0}pre[data-lang] code[data-lang] table tr td:first-child{color:color-mix(in srgb, var(--text-color) 53%, rgba(0,0,0,0));text-align:end;user-select:none;padding-inline-end:20px}.pagination{margin-top:50px}@media print{.pagination{display:none}}.pagination ul{display:flex;align-items:center;justify-content:center;flex-flow:row wrap;padding-bottom:30px;list-style:none;margin:0}.pagination ul>*:not(:first-child)::before{content:"::";margin:0 10px}.pagination ul li{display:inline-flex}.pagination ul li a{display:inline-flex;text-wrap:nowrap;text-decoration:none}ul.taxonomy-list{list-style:none}ul.taxonomy-list>li{margin-block-end:1rem}.three-column{column-count:3}.two-column{column-count:2}:root{--alert-note-border: #F5F5F5;--alert-note-bg: #696969;--alert-note-code: #707070;--alert-tip-border: #A6E22E;--alert-tip-bg: #405A0C;--alert-tip-code: #50700F;--alert-info-border: #66D9EF;--alert-info-bg: #0B5666;--alert-info-code: #0D687D;--alert-important-border: var(--alert-info-border);--alert-important-bg: var(--alert-info-bg);--alert-important-code: var(--alert-info-code);--alert-warning-border: #EEC35E;--alert-warning-bg: #61470A;--alert-warning-code: #78580D;--alert-danger-border: #FD2774;--alert-danger-bg: #2D0111;--alert-danger-code: #5F0224;--alert-caution-border: var(--alert-danger-border);--alert-caution-bg: var(--alert-danger-bg);--alert-caution-code: var(--alert-danger-code)}.alert,.markdown-alert-caution,.markdown-alert-warning,.markdown-alert-important,.markdown-alert-tip,.markdown-alert-note{display:flex;align-items:flex-start;margin-block:25px;border-radius:var(--radius);border:1px solid;padding:25px}.alert-content,.markdown-alert-caution>p,.markdown-alert-warning>p,.markdown-alert-important>p,.markdown-alert-tip>p,.markdown-alert-note>p{flex:1;margin-inline-start:-2rem}.alert-content>:not(:first-child),.markdown-alert-caution>p>:not(:first-child),.markdown-alert-warning>p>:not(:first-child),.markdown-alert-important>p>:not(:first-child),.markdown-alert-tip>p>:not(:first-child),.markdown-alert-note>p>:not(:first-child){margin-block:1rem 0}.alert-content code,.markdown-alert-caution>p code,.markdown-alert-warning>p code,.markdown-alert-important>p code,.markdown-alert-tip>p code,.markdown-alert-note>p code{color:inherit}.alert-content strong,.markdown-alert-caution>p strong,.markdown-alert-warning>p strong,.markdown-alert-important>p strong,.markdown-alert-tip>p strong,.markdown-alert-note>p strong{font-weight:580}.alert-icon,.markdown-alert-caution::before,.markdown-alert-warning::before,.markdown-alert-important::before,.markdown-alert-tip::before,.markdown-alert-note::before{display:flex;align-items:center;margin-inline-end:.5rem;background-size:contain;background-repeat:no-repeat;aspect-ratio:1/1;width:1.5rem}.alert-title,.markdown-alert-caution>p::before,.markdown-alert-warning>p::before,.markdown-alert-important>p::before,.markdown-alert-tip>p::before,.markdown-alert-note>p::before{display:flex;align-items:center;margin-inline-start:2rem;font-weight:bold}.alert-icon-note,.markdown-alert-note::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M440-280h80v-240h-80v240Zm40-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z'/%3E%3C/svg%3E")}.alert-icon-tip,.markdown-alert-tip::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M480-78.258q-33.718 0-56.974-22.166-23.256-22.167-23.59-55.885h161.128q-.334 33.718-23.59 55.885Q513.718-78.258 480-78.258ZM318.257-210.515v-67.588h323.486v67.588H318.257Zm7.846-121.128q-67.692-42.487-106.896-109.134-39.205-66.648-39.205-147.479 0-123.769 88.149-211.884 88.149-88.115 211.967-88.115 123.817 0 211.849 88.115 88.031 88.115 88.031 211.884 0 80.831-38.999 147.479-39 66.647-107.102 109.134H326.103Zm21.927-67.588h264.351q46.311-32 73.17-81.681 26.859-49.68 26.859-107.144 0-96.918-68-164.765-68-67.846-164.564-67.846t-164.41 67.713q-67.846 67.712-67.846 164.725 0 57.52 26.859 107.259t73.581 81.739Zm131.97 0Z'/%3E%3C/svg%3E")}.alert-icon-info,.alert-icon-important,.markdown-alert-important::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M479.789-288Q495-288 505.5-298.289q10.5-10.29 10.5-25.5Q516-339 505.711-349.5q-10.29-10.5-25.5-10.5Q465-360 454.5-349.711q-10.5 10.29-10.5 25.5Q444-309 454.289-298.5q10.29 10.5 25.5 10.5ZM444-432h72v-240h-72v240Zm36.276 336Q401-96 331-126q-70-30-122.5-82.5T126-330.958q-30-69.959-30-149.5Q96-560 126-629.5t82.5-122Q261-804 330.958-834q69.959-30 149.5-30Q560-864 629.5-834t122 82.5Q804-699 834-629.276q30 69.725 30 149Q864-401 834-331q-30 70-82.5 122.5T629.276-126q-69.725 30-149 30ZM480-168q130 0 221-91t91-221q0-130-91-221t-221-91q-130 0-221 91t-91 221q0 130 91 221t221 91Zm0-312Z'/%3E%3C/svg%3E")}.alert-icon-warning,.markdown-alert-warning::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm69-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Zm0-100Z'/%3E%3C/svg%3E")}.alert-icon-danger,.alert-icon-caution,.markdown-alert-caution::before{mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' %3E%3Cpath d='M239.256-400q0 58.091 27.975 108.995t76.13 81.237q-5.616-8.513-8.487-18.398-2.872-9.885-2.872-19.167 1.333-26.436 12.153-50.307 10.821-23.872 31.41-43.461L480-443.921l105.819 102.82q18.923 19.311 29.885 43.321 10.961 24.011 12.294 50.447 0 9.282-2.872 19.167-2.871 9.885-7.82 18.398 47.488-30.333 75.796-81.237Q721.41-341.909 721.41-400q0-47.622-19.258-93.169-19.259-45.547-53.998-82.549-19.951 13.41-42.202 19.859Q583.7-549.41 561-549.41q-62.448 0-105.108-38.039-42.661-38.038-51.225-98.628v-9.744q-39.385 31.949-69.898 67.68-30.513 35.73-51.987 74.166t-32.5 77.464Q239.256-437.483 239.256-400ZM480-349.539l-57.436 56.436q-12.154 11.821-17.731 26.029-5.577 14.208-5.577 29.074 0 32.769 23.498 55.757 23.497 22.987 57.246 22.987 33.432 0 57.421-22.906 23.989-22.906 23.989-55.561 0-16.162-6.116-30.162-6.116-13.999-17.454-25.154l-57.84-56.5Zm-11.002-469.022V-708q0 38.637 26.832 64.819 26.831 26.183 65.17 26.183 15.609 0 30.818-5.923 15.208-5.923 28.131-17.718l22.615-24.102q67.564 44.128 106.999 114.917 39.435 70.79 39.435 150.156 0 128.206-89.846 218.103Q609.307-91.668 480-91.668q-129.027 0-218.68-89.652-89.652-89.653-89.652-218.68 0-119.178 79.371-232.447t217.959-186.114Z'/%3E%3C/svg%3E")}.alert.note,.note.markdown-alert-caution,.note.markdown-alert-warning,.note.markdown-alert-important,.note.markdown-alert-tip,.note.markdown-alert-note{border-color:var(--alert-note-border);background-color:color-mix(in srgb, var(--alert-note-bg) 15%, rgba(0,0,0,0))}.alert.note>.alert-content>p>code,.note.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.note>p>p>code,.note.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.note>p>p>code,.note.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.note>p>p>code,.note.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.note>p>p>code,.note.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.note>p>p>code{background-color:var(--alert-note-code)}.alert.note a,.note.markdown-alert-caution a,.note.markdown-alert-warning a,.note.markdown-alert-important a,.note.markdown-alert-tip a,.note.markdown-alert-note a{color:var(--alert-note-border)}.alert.note a code,.note.markdown-alert-caution a code,.note.markdown-alert-warning a code,.note.markdown-alert-important a code,.note.markdown-alert-tip a code,.note.markdown-alert-note a code{background-color:var(--alert-note-bg)}.alert.note .alert-title,.alert.note .markdown-alert-caution>p::before,.note.markdown-alert-caution .alert-title,.note.markdown-alert-caution .markdown-alert-caution>p::before,.alert.note .markdown-alert-warning>p::before,.note.markdown-alert-caution .markdown-alert-warning>p::before,.note.markdown-alert-warning .alert-title,.note.markdown-alert-warning .markdown-alert-caution>p::before,.note.markdown-alert-warning .markdown-alert-warning>p::before,.alert.note .markdown-alert-important>p::before,.note.markdown-alert-caution .markdown-alert-important>p::before,.note.markdown-alert-warning .markdown-alert-important>p::before,.note.markdown-alert-important .alert-title,.note.markdown-alert-important .markdown-alert-caution>p::before,.note.markdown-alert-important .markdown-alert-warning>p::before,.note.markdown-alert-important .markdown-alert-important>p::before,.alert.note .markdown-alert-tip>p::before,.note.markdown-alert-caution .markdown-alert-tip>p::before,.note.markdown-alert-warning .markdown-alert-tip>p::before,.note.markdown-alert-important .markdown-alert-tip>p::before,.note.markdown-alert-tip .alert-title,.note.markdown-alert-tip .markdown-alert-caution>p::before,.note.markdown-alert-tip .markdown-alert-warning>p::before,.note.markdown-alert-tip .markdown-alert-important>p::before,.note.markdown-alert-tip .markdown-alert-tip>p::before,.alert.note .markdown-alert-note>p::before,.note.markdown-alert-caution .markdown-alert-note>p::before,.note.markdown-alert-warning .markdown-alert-note>p::before,.note.markdown-alert-important .markdown-alert-note>p::before,.note.markdown-alert-tip .markdown-alert-note>p::before,.note.markdown-alert-note .alert-title,.note.markdown-alert-note .markdown-alert-caution>p::before,.note.markdown-alert-note .markdown-alert-warning>p::before,.note.markdown-alert-note .markdown-alert-important>p::before,.note.markdown-alert-note .markdown-alert-tip>p::before,.note.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-note-border)}.alert.note .alert-icon,.alert.note .markdown-alert-caution::before,.note.markdown-alert-caution .alert-icon,.note.markdown-alert-caution .markdown-alert-caution::before,.alert.note .markdown-alert-warning::before,.note.markdown-alert-caution .markdown-alert-warning::before,.note.markdown-alert-warning .alert-icon,.note.markdown-alert-warning .markdown-alert-caution::before,.note.markdown-alert-warning .markdown-alert-warning::before,.alert.note .markdown-alert-important::before,.note.markdown-alert-caution .markdown-alert-important::before,.note.markdown-alert-warning .markdown-alert-important::before,.note.markdown-alert-important .alert-icon,.note.markdown-alert-important .markdown-alert-caution::before,.note.markdown-alert-important .markdown-alert-warning::before,.note.markdown-alert-important .markdown-alert-important::before,.alert.note .markdown-alert-tip::before,.note.markdown-alert-caution .markdown-alert-tip::before,.note.markdown-alert-warning .markdown-alert-tip::before,.note.markdown-alert-important .markdown-alert-tip::before,.note.markdown-alert-tip .alert-icon,.note.markdown-alert-tip .markdown-alert-caution::before,.note.markdown-alert-tip .markdown-alert-warning::before,.note.markdown-alert-tip .markdown-alert-important::before,.note.markdown-alert-tip .markdown-alert-tip::before,.alert.note .markdown-alert-note::before,.note.markdown-alert-caution .markdown-alert-note::before,.note.markdown-alert-warning .markdown-alert-note::before,.note.markdown-alert-important .markdown-alert-note::before,.note.markdown-alert-tip .markdown-alert-note::before,.note.markdown-alert-note .alert-icon,.note.markdown-alert-note .markdown-alert-caution::before,.note.markdown-alert-note .markdown-alert-warning::before,.note.markdown-alert-note .markdown-alert-important::before,.note.markdown-alert-note .markdown-alert-tip::before,.note.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-note-border)}.alert.tip,.tip.markdown-alert-caution,.tip.markdown-alert-warning,.tip.markdown-alert-important,.tip.markdown-alert-tip,.tip.markdown-alert-note{border-color:var(--alert-tip-border);background-color:color-mix(in srgb, var(--alert-tip-bg) 15%, rgba(0,0,0,0))}.alert.tip>.alert-content>p>code,.tip.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.tip>p>p>code,.tip.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.tip>p>p>code,.tip.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.tip>p>p>code,.tip.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.tip>p>p>code,.tip.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.tip>p>p>code{background-color:var(--alert-tip-code)}.alert.tip a,.tip.markdown-alert-caution a,.tip.markdown-alert-warning a,.tip.markdown-alert-important a,.tip.markdown-alert-tip a,.tip.markdown-alert-note a{color:var(--alert-tip-border)}.alert.tip a code,.tip.markdown-alert-caution a code,.tip.markdown-alert-warning a code,.tip.markdown-alert-important a code,.tip.markdown-alert-tip a code,.tip.markdown-alert-note a code{background-color:var(--alert-tip-bg)}.alert.tip .alert-title,.alert.tip .markdown-alert-caution>p::before,.tip.markdown-alert-caution .alert-title,.tip.markdown-alert-caution .markdown-alert-caution>p::before,.alert.tip .markdown-alert-warning>p::before,.tip.markdown-alert-caution .markdown-alert-warning>p::before,.tip.markdown-alert-warning .alert-title,.tip.markdown-alert-warning .markdown-alert-caution>p::before,.tip.markdown-alert-warning .markdown-alert-warning>p::before,.alert.tip .markdown-alert-important>p::before,.tip.markdown-alert-caution .markdown-alert-important>p::before,.tip.markdown-alert-warning .markdown-alert-important>p::before,.tip.markdown-alert-important .alert-title,.tip.markdown-alert-important .markdown-alert-caution>p::before,.tip.markdown-alert-important .markdown-alert-warning>p::before,.tip.markdown-alert-important .markdown-alert-important>p::before,.alert.tip .markdown-alert-tip>p::before,.tip.markdown-alert-caution .markdown-alert-tip>p::before,.tip.markdown-alert-warning .markdown-alert-tip>p::before,.tip.markdown-alert-important .markdown-alert-tip>p::before,.tip.markdown-alert-tip .alert-title,.tip.markdown-alert-tip .markdown-alert-caution>p::before,.tip.markdown-alert-tip .markdown-alert-warning>p::before,.tip.markdown-alert-tip .markdown-alert-important>p::before,.tip.markdown-alert-tip .markdown-alert-tip>p::before,.alert.tip .markdown-alert-note>p::before,.tip.markdown-alert-caution .markdown-alert-note>p::before,.tip.markdown-alert-warning .markdown-alert-note>p::before,.tip.markdown-alert-important .markdown-alert-note>p::before,.tip.markdown-alert-tip .markdown-alert-note>p::before,.tip.markdown-alert-note .alert-title,.tip.markdown-alert-note .markdown-alert-caution>p::before,.tip.markdown-alert-note .markdown-alert-warning>p::before,.tip.markdown-alert-note .markdown-alert-important>p::before,.tip.markdown-alert-note .markdown-alert-tip>p::before,.tip.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-tip-border)}.alert.tip .alert-icon,.alert.tip .markdown-alert-caution::before,.tip.markdown-alert-caution .alert-icon,.tip.markdown-alert-caution .markdown-alert-caution::before,.alert.tip .markdown-alert-warning::before,.tip.markdown-alert-caution .markdown-alert-warning::before,.tip.markdown-alert-warning .alert-icon,.tip.markdown-alert-warning .markdown-alert-caution::before,.tip.markdown-alert-warning .markdown-alert-warning::before,.alert.tip .markdown-alert-important::before,.tip.markdown-alert-caution .markdown-alert-important::before,.tip.markdown-alert-warning .markdown-alert-important::before,.tip.markdown-alert-important .alert-icon,.tip.markdown-alert-important .markdown-alert-caution::before,.tip.markdown-alert-important .markdown-alert-warning::before,.tip.markdown-alert-important .markdown-alert-important::before,.alert.tip .markdown-alert-tip::before,.tip.markdown-alert-caution .markdown-alert-tip::before,.tip.markdown-alert-warning .markdown-alert-tip::before,.tip.markdown-alert-important .markdown-alert-tip::before,.tip.markdown-alert-tip .alert-icon,.tip.markdown-alert-tip .markdown-alert-caution::before,.tip.markdown-alert-tip .markdown-alert-warning::before,.tip.markdown-alert-tip .markdown-alert-important::before,.tip.markdown-alert-tip .markdown-alert-tip::before,.alert.tip .markdown-alert-note::before,.tip.markdown-alert-caution .markdown-alert-note::before,.tip.markdown-alert-warning .markdown-alert-note::before,.tip.markdown-alert-important .markdown-alert-note::before,.tip.markdown-alert-tip .markdown-alert-note::before,.tip.markdown-alert-note .alert-icon,.tip.markdown-alert-note .markdown-alert-caution::before,.tip.markdown-alert-note .markdown-alert-warning::before,.tip.markdown-alert-note .markdown-alert-important::before,.tip.markdown-alert-note .markdown-alert-tip::before,.tip.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-tip-border)}.alert.info,.info.markdown-alert-caution,.info.markdown-alert-warning,.info.markdown-alert-important,.info.markdown-alert-tip,.info.markdown-alert-note{border-color:var(--alert-info-border);background-color:color-mix(in srgb, var(--alert-info-bg) 15%, rgba(0,0,0,0))}.alert.info>.alert-content>p>code,.info.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.info>p>p>code,.info.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.info>p>p>code,.info.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.info>p>p>code,.info.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.info>p>p>code,.info.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.info>p>p>code{background-color:var(--alert-info-code)}.alert.info a,.info.markdown-alert-caution a,.info.markdown-alert-warning a,.info.markdown-alert-important a,.info.markdown-alert-tip a,.info.markdown-alert-note a{color:var(--alert-info-border)}.alert.info a code,.info.markdown-alert-caution a code,.info.markdown-alert-warning a code,.info.markdown-alert-important a code,.info.markdown-alert-tip a code,.info.markdown-alert-note a code{background-color:var(--alert-info-bg)}.alert.info .alert-title,.alert.info .markdown-alert-caution>p::before,.info.markdown-alert-caution .alert-title,.info.markdown-alert-caution .markdown-alert-caution>p::before,.alert.info .markdown-alert-warning>p::before,.info.markdown-alert-caution .markdown-alert-warning>p::before,.info.markdown-alert-warning .alert-title,.info.markdown-alert-warning .markdown-alert-caution>p::before,.info.markdown-alert-warning .markdown-alert-warning>p::before,.alert.info .markdown-alert-important>p::before,.info.markdown-alert-caution .markdown-alert-important>p::before,.info.markdown-alert-warning .markdown-alert-important>p::before,.info.markdown-alert-important .alert-title,.info.markdown-alert-important .markdown-alert-caution>p::before,.info.markdown-alert-important .markdown-alert-warning>p::before,.info.markdown-alert-important .markdown-alert-important>p::before,.alert.info .markdown-alert-tip>p::before,.info.markdown-alert-caution .markdown-alert-tip>p::before,.info.markdown-alert-warning .markdown-alert-tip>p::before,.info.markdown-alert-important .markdown-alert-tip>p::before,.info.markdown-alert-tip .alert-title,.info.markdown-alert-tip .markdown-alert-caution>p::before,.info.markdown-alert-tip .markdown-alert-warning>p::before,.info.markdown-alert-tip .markdown-alert-important>p::before,.info.markdown-alert-tip .markdown-alert-tip>p::before,.alert.info .markdown-alert-note>p::before,.info.markdown-alert-caution .markdown-alert-note>p::before,.info.markdown-alert-warning .markdown-alert-note>p::before,.info.markdown-alert-important .markdown-alert-note>p::before,.info.markdown-alert-tip .markdown-alert-note>p::before,.info.markdown-alert-note .alert-title,.info.markdown-alert-note .markdown-alert-caution>p::before,.info.markdown-alert-note .markdown-alert-warning>p::before,.info.markdown-alert-note .markdown-alert-important>p::before,.info.markdown-alert-note .markdown-alert-tip>p::before,.info.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-info-border)}.alert.info .alert-icon,.alert.info .markdown-alert-caution::before,.info.markdown-alert-caution .alert-icon,.info.markdown-alert-caution .markdown-alert-caution::before,.alert.info .markdown-alert-warning::before,.info.markdown-alert-caution .markdown-alert-warning::before,.info.markdown-alert-warning .alert-icon,.info.markdown-alert-warning .markdown-alert-caution::before,.info.markdown-alert-warning .markdown-alert-warning::before,.alert.info .markdown-alert-important::before,.info.markdown-alert-caution .markdown-alert-important::before,.info.markdown-alert-warning .markdown-alert-important::before,.info.markdown-alert-important .alert-icon,.info.markdown-alert-important .markdown-alert-caution::before,.info.markdown-alert-important .markdown-alert-warning::before,.info.markdown-alert-important .markdown-alert-important::before,.alert.info .markdown-alert-tip::before,.info.markdown-alert-caution .markdown-alert-tip::before,.info.markdown-alert-warning .markdown-alert-tip::before,.info.markdown-alert-important .markdown-alert-tip::before,.info.markdown-alert-tip .alert-icon,.info.markdown-alert-tip .markdown-alert-caution::before,.info.markdown-alert-tip .markdown-alert-warning::before,.info.markdown-alert-tip .markdown-alert-important::before,.info.markdown-alert-tip .markdown-alert-tip::before,.alert.info .markdown-alert-note::before,.info.markdown-alert-caution .markdown-alert-note::before,.info.markdown-alert-warning .markdown-alert-note::before,.info.markdown-alert-important .markdown-alert-note::before,.info.markdown-alert-tip .markdown-alert-note::before,.info.markdown-alert-note .alert-icon,.info.markdown-alert-note .markdown-alert-caution::before,.info.markdown-alert-note .markdown-alert-warning::before,.info.markdown-alert-note .markdown-alert-important::before,.info.markdown-alert-note .markdown-alert-tip::before,.info.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-info-border)}.alert.warning,.warning.markdown-alert-caution,.warning.markdown-alert-warning,.warning.markdown-alert-important,.warning.markdown-alert-tip,.warning.markdown-alert-note{border-color:var(--alert-warning-border);background-color:color-mix(in srgb, var(--alert-warning-bg) 15%, rgba(0,0,0,0))}.alert.warning>.alert-content>p>code,.warning.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.warning>p>p>code,.warning.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.warning>p>p>code,.warning.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.warning>p>p>code,.warning.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.warning>p>p>code,.warning.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.warning>p>p>code{background-color:var(--alert-warning-code)}.alert.warning a,.warning.markdown-alert-caution a,.warning.markdown-alert-warning a,.warning.markdown-alert-important a,.warning.markdown-alert-tip a,.warning.markdown-alert-note a{color:var(--alert-warning-border)}.alert.warning a code,.warning.markdown-alert-caution a code,.warning.markdown-alert-warning a code,.warning.markdown-alert-important a code,.warning.markdown-alert-tip a code,.warning.markdown-alert-note a code{background-color:var(--alert-warning-bg)}.alert.warning .alert-title,.alert.warning .markdown-alert-caution>p::before,.warning.markdown-alert-caution .alert-title,.warning.markdown-alert-caution .markdown-alert-caution>p::before,.alert.warning .markdown-alert-warning>p::before,.warning.markdown-alert-caution .markdown-alert-warning>p::before,.warning.markdown-alert-warning .alert-title,.warning.markdown-alert-warning .markdown-alert-caution>p::before,.warning.markdown-alert-warning .markdown-alert-warning>p::before,.alert.warning .markdown-alert-important>p::before,.warning.markdown-alert-caution .markdown-alert-important>p::before,.warning.markdown-alert-warning .markdown-alert-important>p::before,.warning.markdown-alert-important .alert-title,.warning.markdown-alert-important .markdown-alert-caution>p::before,.warning.markdown-alert-important .markdown-alert-warning>p::before,.warning.markdown-alert-important .markdown-alert-important>p::before,.alert.warning .markdown-alert-tip>p::before,.warning.markdown-alert-caution .markdown-alert-tip>p::before,.warning.markdown-alert-warning .markdown-alert-tip>p::before,.warning.markdown-alert-important .markdown-alert-tip>p::before,.warning.markdown-alert-tip .alert-title,.warning.markdown-alert-tip .markdown-alert-caution>p::before,.warning.markdown-alert-tip .markdown-alert-warning>p::before,.warning.markdown-alert-tip .markdown-alert-important>p::before,.warning.markdown-alert-tip .markdown-alert-tip>p::before,.alert.warning .markdown-alert-note>p::before,.warning.markdown-alert-caution .markdown-alert-note>p::before,.warning.markdown-alert-warning .markdown-alert-note>p::before,.warning.markdown-alert-important .markdown-alert-note>p::before,.warning.markdown-alert-tip .markdown-alert-note>p::before,.warning.markdown-alert-note .alert-title,.warning.markdown-alert-note .markdown-alert-caution>p::before,.warning.markdown-alert-note .markdown-alert-warning>p::before,.warning.markdown-alert-note .markdown-alert-important>p::before,.warning.markdown-alert-note .markdown-alert-tip>p::before,.warning.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-warning-border)}.alert.warning .alert-icon,.alert.warning .markdown-alert-caution::before,.warning.markdown-alert-caution .alert-icon,.warning.markdown-alert-caution .markdown-alert-caution::before,.alert.warning .markdown-alert-warning::before,.warning.markdown-alert-caution .markdown-alert-warning::before,.warning.markdown-alert-warning .alert-icon,.warning.markdown-alert-warning .markdown-alert-caution::before,.warning.markdown-alert-warning .markdown-alert-warning::before,.alert.warning .markdown-alert-important::before,.warning.markdown-alert-caution .markdown-alert-important::before,.warning.markdown-alert-warning .markdown-alert-important::before,.warning.markdown-alert-important .alert-icon,.warning.markdown-alert-important .markdown-alert-caution::before,.warning.markdown-alert-important .markdown-alert-warning::before,.warning.markdown-alert-important .markdown-alert-important::before,.alert.warning .markdown-alert-tip::before,.warning.markdown-alert-caution .markdown-alert-tip::before,.warning.markdown-alert-warning .markdown-alert-tip::before,.warning.markdown-alert-important .markdown-alert-tip::before,.warning.markdown-alert-tip .alert-icon,.warning.markdown-alert-tip .markdown-alert-caution::before,.warning.markdown-alert-tip .markdown-alert-warning::before,.warning.markdown-alert-tip .markdown-alert-important::before,.warning.markdown-alert-tip .markdown-alert-tip::before,.alert.warning .markdown-alert-note::before,.warning.markdown-alert-caution .markdown-alert-note::before,.warning.markdown-alert-warning .markdown-alert-note::before,.warning.markdown-alert-important .markdown-alert-note::before,.warning.markdown-alert-tip .markdown-alert-note::before,.warning.markdown-alert-note .alert-icon,.warning.markdown-alert-note .markdown-alert-caution::before,.warning.markdown-alert-note .markdown-alert-warning::before,.warning.markdown-alert-note .markdown-alert-important::before,.warning.markdown-alert-note .markdown-alert-tip::before,.warning.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-warning-border)}.alert.danger,.danger.markdown-alert-caution,.danger.markdown-alert-warning,.danger.markdown-alert-important,.danger.markdown-alert-tip,.danger.markdown-alert-note{border-color:var(--alert-danger-border);background-color:color-mix(in srgb, var(--alert-danger-bg) 15%, rgba(0,0,0,0))}.alert.danger>.alert-content>p>code,.danger.markdown-alert-caution>.alert-content>p>code,.markdown-alert-caution.danger>p>p>code,.danger.markdown-alert-warning>.alert-content>p>code,.markdown-alert-warning.danger>p>p>code,.danger.markdown-alert-important>.alert-content>p>code,.markdown-alert-important.danger>p>p>code,.danger.markdown-alert-tip>.alert-content>p>code,.markdown-alert-tip.danger>p>p>code,.danger.markdown-alert-note>.alert-content>p>code,.markdown-alert-note.danger>p>p>code{background-color:var(--alert-danger-code)}.alert.danger a,.danger.markdown-alert-caution a,.danger.markdown-alert-warning a,.danger.markdown-alert-important a,.danger.markdown-alert-tip a,.danger.markdown-alert-note a{color:var(--alert-danger-border)}.alert.danger a code,.danger.markdown-alert-caution a code,.danger.markdown-alert-warning a code,.danger.markdown-alert-important a code,.danger.markdown-alert-tip a code,.danger.markdown-alert-note a code{background-color:var(--alert-danger-bg)}.alert.danger .alert-title,.alert.danger .markdown-alert-caution>p::before,.danger.markdown-alert-caution .alert-title,.danger.markdown-alert-caution .markdown-alert-caution>p::before,.alert.danger .markdown-alert-warning>p::before,.danger.markdown-alert-caution .markdown-alert-warning>p::before,.danger.markdown-alert-warning .alert-title,.danger.markdown-alert-warning .markdown-alert-caution>p::before,.danger.markdown-alert-warning .markdown-alert-warning>p::before,.alert.danger .markdown-alert-important>p::before,.danger.markdown-alert-caution .markdown-alert-important>p::before,.danger.markdown-alert-warning .markdown-alert-important>p::before,.danger.markdown-alert-important .alert-title,.danger.markdown-alert-important .markdown-alert-caution>p::before,.danger.markdown-alert-important .markdown-alert-warning>p::before,.danger.markdown-alert-important .markdown-alert-important>p::before,.alert.danger .markdown-alert-tip>p::before,.danger.markdown-alert-caution .markdown-alert-tip>p::before,.danger.markdown-alert-warning .markdown-alert-tip>p::before,.danger.markdown-alert-important .markdown-alert-tip>p::before,.danger.markdown-alert-tip .alert-title,.danger.markdown-alert-tip .markdown-alert-caution>p::before,.danger.markdown-alert-tip .markdown-alert-warning>p::before,.danger.markdown-alert-tip .markdown-alert-important>p::before,.danger.markdown-alert-tip .markdown-alert-tip>p::before,.alert.danger .markdown-alert-note>p::before,.danger.markdown-alert-caution .markdown-alert-note>p::before,.danger.markdown-alert-warning .markdown-alert-note>p::before,.danger.markdown-alert-important .markdown-alert-note>p::before,.danger.markdown-alert-tip .markdown-alert-note>p::before,.danger.markdown-alert-note .alert-title,.danger.markdown-alert-note .markdown-alert-caution>p::before,.danger.markdown-alert-note .markdown-alert-warning>p::before,.danger.markdown-alert-note .markdown-alert-important>p::before,.danger.markdown-alert-note .markdown-alert-tip>p::before,.danger.markdown-alert-note .markdown-alert-note>p::before{color:var(--alert-danger-border)}.alert.danger .alert-icon,.alert.danger .markdown-alert-caution::before,.danger.markdown-alert-caution .alert-icon,.danger.markdown-alert-caution .markdown-alert-caution::before,.alert.danger .markdown-alert-warning::before,.danger.markdown-alert-caution .markdown-alert-warning::before,.danger.markdown-alert-warning .alert-icon,.danger.markdown-alert-warning .markdown-alert-caution::before,.danger.markdown-alert-warning .markdown-alert-warning::before,.alert.danger .markdown-alert-important::before,.danger.markdown-alert-caution .markdown-alert-important::before,.danger.markdown-alert-warning .markdown-alert-important::before,.danger.markdown-alert-important .alert-icon,.danger.markdown-alert-important .markdown-alert-caution::before,.danger.markdown-alert-important .markdown-alert-warning::before,.danger.markdown-alert-important .markdown-alert-important::before,.alert.danger .markdown-alert-tip::before,.danger.markdown-alert-caution .markdown-alert-tip::before,.danger.markdown-alert-warning .markdown-alert-tip::before,.danger.markdown-alert-important .markdown-alert-tip::before,.danger.markdown-alert-tip .alert-icon,.danger.markdown-alert-tip .markdown-alert-caution::before,.danger.markdown-alert-tip .markdown-alert-warning::before,.danger.markdown-alert-tip .markdown-alert-important::before,.danger.markdown-alert-tip .markdown-alert-tip::before,.alert.danger .markdown-alert-note::before,.danger.markdown-alert-caution .markdown-alert-note::before,.danger.markdown-alert-warning .markdown-alert-note::before,.danger.markdown-alert-important .markdown-alert-note::before,.danger.markdown-alert-tip .markdown-alert-note::before,.danger.markdown-alert-note .alert-icon,.danger.markdown-alert-note .markdown-alert-caution::before,.danger.markdown-alert-note .markdown-alert-warning::before,.danger.markdown-alert-note .markdown-alert-important::before,.danger.markdown-alert-note .markdown-alert-tip::before,.danger.markdown-alert-note .markdown-alert-note::before{background-color:var(--alert-danger-border)}.markdown-alert-note{border-color:var(--alert-note-border);background-color:color-mix(in srgb, var(--alert-note-bg) 15%, rgba(0,0,0,0))}.markdown-alert-note::before{content:"";background-color:var(--alert-note-border);margin-inline-start:25px}.markdown-alert-note>p{margin-inline-start:unset}.markdown-alert-note>p::before{content:"NOTE";color:var(--alert-note-border);margin-block-end:1rem}.markdown-alert-note>p>code{background-color:var(--alert-note-code)}.markdown-alert-note a{color:var(--alert-note-border)}.markdown-alert-note a code{background-color:var(--alert-note-bg)}.markdown-alert-tip{border-color:var(--alert-tip-border);background-color:color-mix(in srgb, var(--alert-tip-bg) 15%, rgba(0,0,0,0))}.markdown-alert-tip::before{content:"";background-color:var(--alert-tip-border);margin-inline-start:25px}.markdown-alert-tip>p{margin-inline-start:unset}.markdown-alert-tip>p::before{content:"TIP";color:var(--alert-tip-border);margin-block-end:1rem}.markdown-alert-tip>p>code{background-color:var(--alert-tip-code)}.markdown-alert-tip a{color:var(--alert-tip-border)}.markdown-alert-tip a code{background-color:var(--alert-tip-bg)}.markdown-alert-important{border-color:var(--alert-important-border);background-color:color-mix(in srgb, var(--alert-important-bg) 15%, rgba(0,0,0,0))}.markdown-alert-important::before{content:"";background-color:var(--alert-important-border);margin-inline-start:25px}.markdown-alert-important>p{margin-inline-start:unset}.markdown-alert-important>p::before{content:"IMPORTANT";color:var(--alert-important-border);margin-block-end:1rem}.markdown-alert-important>p>code{background-color:var(--alert-important-code)}.markdown-alert-important a{color:var(--alert-important-border)}.markdown-alert-important a code{background-color:var(--alert-important-bg)}.markdown-alert-warning{border-color:var(--alert-warning-border);background-color:color-mix(in srgb, var(--alert-warning-bg) 15%, rgba(0,0,0,0))}.markdown-alert-warning::before{content:"";background-color:var(--alert-warning-border);margin-inline-start:25px}.markdown-alert-warning>p{margin-inline-start:unset}.markdown-alert-warning>p::before{content:"WARNING";color:var(--alert-warning-border);margin-block-end:1rem}.markdown-alert-warning>p>code{background-color:var(--alert-warning-code)}.markdown-alert-warning a{color:var(--alert-warning-border)}.markdown-alert-warning a code{background-color:var(--alert-warning-bg)}.markdown-alert-caution{border-color:var(--alert-caution-border);background-color:color-mix(in srgb, var(--alert-caution-bg) 15%, rgba(0,0,0,0))}.markdown-alert-caution::before{content:"";background-color:var(--alert-caution-border);margin-inline-start:25px}.markdown-alert-caution>p{margin-inline-start:unset}.markdown-alert-caution>p::before{content:"CAUTION";color:var(--alert-caution-border);margin-block-end:1rem}.markdown-alert-caution>p>code{background-color:var(--alert-caution-code)}.markdown-alert-caution a{color:var(--alert-caution-border)}.markdown-alert-caution a code{background-color:var(--alert-caution-bg)}figure.mastodon-post{position:relative;border:1px solid var(--accent-color);margin:0;padding:60px 25px 25px}figure.mastodon-post::before{content:"> From Mastodon:";position:absolute;top:20px;left:20px;display:block;color:var(--accent-color);font-weight:bold}figure.mastodon-post blockquote{padding:unset;border:unset;overflow-wrap:anywhere}figure.mastodon-post blockquote::before{content:none}figure.mastodon-post figcaption{margin-top:25px}.references-list p{text-indent:-2.4rem;margin-inline-start:2.4rem}.wide-container{margin:0}@media (max-width: 684px){.wide-container{overflow-x:auto}}.main-menu-items{position:relative}.main-menu-items .theme-selector{position:relative;margin-left:auto}.main-menu-items .theme-selector .theme-trigger{text-decoration:none;cursor:pointer;padding:2px 4px;border-radius:3px;transition:all .15s ease;color:var(--text-color)}[data-theme=solar-flare] .main-menu-items .theme-selector .theme-trigger{color:#1a1a1a;background:rgba(26,26,26,.05)}[data-theme=solar-flare] .main-menu-items .theme-selector .theme-trigger:hover{background:rgba(255,69,0,.1);color:#ff4500}[data-theme=oled-abyss] .main-menu-items .theme-selector .theme-trigger{color:#fff}[data-theme=oled-abyss] .main-menu-items .theme-selector .theme-trigger:hover{color:#00d4ff}.main-menu-items .theme-selector .theme-trigger:hover{color:var(--accent-color)}.main-menu-items .theme-selector .theme-dropdown{position:absolute;top:100%;right:0;z-index:100;display:none;min-width:160px;margin:0;padding:10px;list-style:none;background:#2a2a2a;border:2px solid var(--accent-color);box-shadow:0 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0)),-10px 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0)),10px 10px color-mix(in srgb, var(--accent-color) 70%, rgba(0,0,0,0))}.main-menu-items .theme-selector .theme-dropdown.show{display:block}.main-menu-items .theme-selector .theme-dropdown li{margin:0}.main-menu-items .theme-selector .theme-dropdown a{display:block;padding:5px 8px;color:#e0e0e0;text-decoration:none;transition:all .15s ease;border-radius:3px}.main-menu-items .theme-selector .theme-dropdown a:hover{background:color-mix(in srgb, var(--accent-color) 15%, rgba(0,0,0,0));color:#fff}.main-menu-items .theme-selector .theme-dropdown a.current{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 10%, rgba(0,0,0,0));font-weight:bold}.main-menu-items .theme-selector .theme-dropdown a.current::before{content:"→ "}@media (max-width: 684px){.main-menu-items .theme-selector .theme-dropdown{position:static;margin:10px 0 0 0;box-shadow:none;border:1px solid var(--accent-color)}.main-menu-items .theme-selector .theme-dropdown.show{display:block}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}
+5 -6
public/cv/index.html
··· 10 10 11 11 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 12 12 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 13 - <link rel="stylesheet" href="https://vylion.com/css/style.css?h=3fa91ff65b7ab435cd3b"> 13 + <link rel="stylesheet" href="https://vylion.com/css/style.css?h=1949a104ef3ba3e2d605"> 14 14 <script src="https://vylion.com/js/auto-close-popover-on-resize.js?h=4ef87d6fc7b98b22e044" defer></script> 15 15 <script src="https://vylion.com/js/copy-code-to-clipboard.js?h=6aac77c47d552a0ac847" defer></script> 16 16 ··· 25 25 <meta property="og:type" content="article"> 26 26 <meta property="og:url" content="https://vylion.com/cv/"> 27 27 <meta property="og:site_name" content="Guillermo Serrahima"> 28 - <meta property="og:updated_time" content="2025-12-15T21:27:08.338381975+01:00"> 28 + <meta property="og:updated_time" content="2025-12-30T21:37:57.161931831+01:00"> 29 29 <meta name="fediverse:creator" content="@me.vylion.com@bsky.brid.gy"> 30 30 </head> 31 31 ··· 51 51 <ul id="nav-menu" class="main-menu-items" aria-label="Site Navigation" popover> 52 52 53 53 54 + 55 + 54 56 55 57 <li><a href="https:&#x2F;&#x2F;vylion.com&#x2F;es&#x2F;cv&#x2F;">ES</a></li> 56 58 57 - 58 - 59 59 60 60 61 61 </ul> ··· 74 74 75 75 <h1 id="who-am-i">Who am I</h1> 76 76 <p>I am Guillermo Serrahima, a Software Engineer from the area of Barcelona, where I currently live. I graduated from the <a href="https://www.upc.edu/en">Polytechnic University of Catalonia</a> with a <code>Degree in Informatics Engineering</code> in 2018.</p> 77 - <p>I am most comfortable when I am working with <code>C++</code>, <code>Java</code>, <code>Python</code> and <code>Rust</code> code. I am familiar with <code>Git</code>, <code>Linux</code>, and the command line. In my day to day I use <strong>Arch Linux</strong> as my main <abbr title="Operative System">OS</abbr>.</p> 77 + <p>I am most comfortable when I am working with <code>C++</code>, <code>Java</code>, <code>Python</code> and <code>Rust</code> code. I am familiar with <code>Git</code>, <code>Linux</code>, and the command line. In my day to day I use <strong>Arch Linux</strong> as my main <abbr title="Operating System">OS</abbr>.</p> 78 78 <p>In addition, I have worked in the past with other languages like <code>Golang</code>, <code>C</code>, <code>C#</code>. I have worked on projects that used <code>PostgreSQL</code>, and I maintain <code>SQLite</code> and <code>MySQL</code> databases on my personal servers (depending on the scope.) I have used testing frameworks like <code>GoogleTest</code> and <code>Pytest</code>, and used CI/CD pipelines like <code>Jenkins</code> and <code>GitHub CI/CD</code>. I also regularly use <code>Docker</code> containers on both a profesional environment and my personal servers.</p> 79 79 <h1 id="languages">Languages</h1> 80 80 <p>I speak <code>Spanish</code> and <code>Catalan</code> natively, and I hold and have used a professional level of <code>English</code> on all my job positions.</p> ··· 180 180 <li>WhatsApp</li> 181 181 <li>Telegram</li> 182 182 </ul> 183 - <p>testing</p> 184 183 <blockquote class="markdown-alert-important"> 185 184 <p>Please state your reason for contacting on your first message through WhatsApp or Telegram to avoid being filtered as spam.</p> 186 185 </blockquote>
+4 -4
public/es/cv/index.html
··· 10 10 11 11 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 12 12 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 13 - <link rel="stylesheet" href="https://vylion.com/css/style.css?h=3fa91ff65b7ab435cd3b"> 13 + <link rel="stylesheet" href="https://vylion.com/css/style.css?h=1949a104ef3ba3e2d605"> 14 14 <script src="https://vylion.com/js/auto-close-popover-on-resize.js?h=4ef87d6fc7b98b22e044" defer></script> 15 15 <script src="https://vylion.com/js/copy-code-to-clipboard.js?h=6aac77c47d552a0ac847" defer></script> 16 16 ··· 25 25 <meta property="og:type" content="article"> 26 26 <meta property="og:url" content="https://vylion.com/es/cv/"> 27 27 <meta property="og:site_name" content="Guillermo Serrahima"> 28 - <meta property="og:updated_time" content="2025-12-15T21:27:08.338381973+01:00"> 28 + <meta property="og:updated_time" content="2025-12-30T21:37:57.161931834+01:00"> 29 29 <meta name="fediverse:creator" content="@me.vylion.com@bsky.brid.gy"> 30 30 </head> 31 31 ··· 51 51 <ul id="nav-menu" class="main-menu-items" aria-label="Site Navigation" popover> 52 52 53 53 54 - 55 - 56 54 57 55 <li><a href="https:&#x2F;&#x2F;vylion.com&#x2F;cv&#x2F;">EN</a></li> 58 56 57 + 58 + 59 59 60 60 61 61 </ul>
+4 -4
public/es/index.html
··· 10 10 11 11 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 12 12 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 13 - <link rel="stylesheet" href="https://vylion.com/css/style.css?h=3fa91ff65b7ab435cd3b"> 13 + <link rel="stylesheet" href="https://vylion.com/css/style.css?h=1949a104ef3ba3e2d605"> 14 14 <script src="https://vylion.com/js/auto-close-popover-on-resize.js?h=4ef87d6fc7b98b22e044" defer></script> 15 15 <script src="https://vylion.com/js/copy-code-to-clipboard.js?h=6aac77c47d552a0ac847" defer></script> 16 16 ··· 24 24 <meta property="og:type" content="website"> 25 25 <meta property="og:url" content="https://vylion.com/es/"> 26 26 <meta property="og:site_name" content="Guillermo Serrahima"> 27 - <meta property="og:updated_time" content="2025-12-15T21:27:08.340071920+01:00"> 27 + <meta property="og:updated_time" content="2025-12-30T21:37:57.163726561+01:00"> 28 28 <meta name="fediverse:creator" content="@me.vylion.com@bsky.brid.gy"> 29 29 </head> 30 30 ··· 50 50 <ul id="nav-menu" class="main-menu-items" aria-label="Site Navigation" popover> 51 51 52 52 53 + 54 + 53 55 54 56 <li><a href="https:&#x2F;&#x2F;vylion.com&#x2F;">EN</a></li> 55 57 56 - 57 - 58 58 59 59 60 60 </ul>
+4 -4
public/index.html
··· 10 10 11 11 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 12 12 <link rel="preload" href="https://vylion.com/fonts/FiraCode-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 13 - <link rel="stylesheet" href="https://vylion.com/css/style.css?h=3fa91ff65b7ab435cd3b"> 13 + <link rel="stylesheet" href="https://vylion.com/css/style.css?h=1949a104ef3ba3e2d605"> 14 14 <script src="https://vylion.com/js/auto-close-popover-on-resize.js?h=4ef87d6fc7b98b22e044" defer></script> 15 15 <script src="https://vylion.com/js/copy-code-to-clipboard.js?h=6aac77c47d552a0ac847" defer></script> 16 16 ··· 24 24 <meta property="og:type" content="website"> 25 25 <meta property="og:url" content="https://vylion.com/"> 26 26 <meta property="og:site_name" content="Guillermo Serrahima"> 27 - <meta property="og:updated_time" content="2025-12-15T21:27:08.340071039+01:00"> 27 + <meta property="og:updated_time" content="2025-12-30T21:37:57.163755721+01:00"> 28 28 <meta name="fediverse:creator" content="@me.vylion.com@bsky.brid.gy"> 29 29 </head> 30 30 ··· 50 50 <ul id="nav-menu" class="main-menu-items" aria-label="Site Navigation" popover> 51 51 52 52 53 - 54 - 55 53 56 54 <li><a href="https:&#x2F;&#x2F;vylion.com&#x2F;es&#x2F;">ES</a></li> 57 55 56 + 57 + 58 58 59 59 60 60 </ul>
+1 -1
public/search_index.en.js
··· 1 - window.searchIndex = {"fields":["title","body"],"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5","index":{"body":{"root":{"docs":{},"df":0,"2":{"docs":{},"df":0,"0":{"docs":{},"df":0,"1":{"docs":{},"df":0,"8":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"9":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"2":{"docs":{},"df":0,"0":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"1":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"2":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"4":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"5":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"6":{"docs":{},"df":0,"3":{"docs":{},"df":0,"7":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"8":{"docs":{},"df":0,"8":{"docs":{},"df":0,"4":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"9":{"docs":{},"df":0,"1":{"docs":{},"df":0,"1":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"d":{"docs":{},"df":0,"d":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}},"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"b":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"e":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}},"t":{"docs":{},"df":0,"p":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"t":{"docs":{},"df":0,"h":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"v":{"docs":{},"df":0,"o":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"b":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":2}}}}}}},"s":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"c":{"docs":{"https://vylion.com/cv/":{"tf":3.0}},"df":1,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"g":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"h":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"/":{"docs":{},"df":0,"c":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}}}},"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1,".":{"docs":{},"df":0,"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,".":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}},"o":{"docs":{},"df":0,"d":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"m":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"n":{"docs":{},"df":0,"f":{"docs":{},"df":0,"i":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"d":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"t":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"b":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"y":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"g":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"k":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":3.605551275463989}},"df":1}}}},"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"f":{"docs":{},"df":0,"f":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"i":{"docs":{},"df":0,"v":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":2}},"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"v":{"docs":{},"df":0,"i":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"p":{"docs":{},"df":0,"l":{"docs":{},"df":0,"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"x":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"x":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"o":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}},"r":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"e":{"docs":{},"df":0,"j":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{},"df":0,"w":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"g":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1,".":{"docs":{},"df":0,"v":{"docs":{},"df":0,"y":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}},"h":{"docs":{},"df":0,"u":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"o":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"w":{"docs":{},"df":0,"t":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"h":{"docs":{},"df":0,"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"u":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}}}}}},"h":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}},"o":{"docs":{},"df":0,"l":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"y":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"i":{"docs":{},"df":0,"'":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"p":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"n":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":3.0}},"df":1}}}}},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"r":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"s":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"j":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"v":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"k":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}}},"t":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"i":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"n":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"y":{"docs":{},"df":0,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"n":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"1":{"docs":{},"df":0,".":{"docs":{},"df":0,"t":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{},"df":0,".":{"docs":{},"df":0,"v":{"docs":{},"df":0,"y":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}}}},"w":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"d":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"n":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"x":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"v":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":1}}},"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,".":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"x":{"docs":{},"df":0,".":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"n":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"k":{"docs":{},"df":0,"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"y":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}},"o":{"docs":{},"df":0,"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"q":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"e":{"docs":{},"df":0,"e":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"x":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"c":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"u":{"docs":{},"df":0,"m":{"docs":{},"df":0,"b":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"f":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":1}}},"s":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.6457513110645907}},"df":2}}}}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"l":{"docs":{},"df":0,"y":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"r":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}},"t":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"q":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"f":{"docs":{},"df":0,"i":{"docs":{},"df":0,"x":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"v":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"i":{"docs":{},"df":0,"v":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"d":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}}}},"f":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"i":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"j":{"docs":{},"df":0,"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.8284271247461903}},"df":1}}}}}},"y":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":2.6457513110645907}},"df":1}}}}}},"q":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"r":{"docs":{},"df":0,"&":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"p":{"docs":{},"df":0,";":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"s":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"c":{"docs":{},"df":0,"y":{"docs":{},"df":0,"c":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"m":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"p":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"q":{"docs":{},"df":0,"u":{"docs":{},"df":0,"i":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"u":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1,"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"h":{"docs":{},"df":0,"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}},"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":2}}},"o":{"docs":{},"df":0,"f":{"docs":{},"df":0,"t":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.0}},"df":2}}}}},"l":{"docs":{},"df":0,"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}},"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"q":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"d":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"y":{"docs":{},"df":0,"n":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}},"x":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"h":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"o":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":2.8284271247461903}},"df":1}}},"y":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}},"u":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"s":{"docs":{"https://vylion.com/cv/":{"tf":3.1622776601683795}},"df":1}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"b":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"h":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"p":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"p":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"s":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"'":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}}}},"title":{"root":{"docs":{},"df":0,"c":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}}}},"documentStore":{"save":true,"docs":{"https://vylion.com/":{"body":"Hello! I'm Guillermo Serrahima, a Software Engineer from the area of Barcelona, Spain. This is my personal site.\nMaybe you'd like to check out the different sections:\n","id":"https://vylion.com/","title":"Home"},"https://vylion.com/cv/":{"body":"Who am I\nI am Guillermo Serrahima, a Software Engineer from the area of Barcelona, where I currently live. I graduated from the Polytechnic University of Catalonia with a Degree in Informatics Engineering in 2018.\nI am most comfortable when I am working with C++, Java, Python and Rust code. I am familiar with Git, Linux, and the command line. In my day to day I use Arch Linux as my main OS.\nIn addition, I have worked in the past with other languages like Golang, C, C#. I have worked on projects that used PostgreSQL, and I maintain SQLite and MySQL databases on my personal servers (depending on the scope.) I have used testing frameworks like GoogleTest and Pytest, and used CI/CD pipelines like Jenkins and GitHub CI/CD. I also regularly use Docker containers on both a profesional environment and my personal servers.\nLanguages\nI speak Spanish and Catalan natively, and I hold and have used a professional level of English on all my job positions.\nPrevious Experience\nAnsys (now part of Synopsys)\n\nLocation: Madrid (remote)\nPosition: R&amp;D Engineer\nProjects:\n\nDeveloping a software tool on Python, to allow configuration of physics simuations using model-based design by clients with no code knowledge required, by way of a drag-and-drop interface.\nRefactoring a Dash Mantine wrapper library for Python, with the goal of open-sourcing said library.\n\n\nTools: Python, Pytest, Poetry, GitHub CI/CD, GitHub Actions, Docker, WSL, Windows\nPeriod: 2024 Aug. - 2025 Nov.\n\nVerbio (now Verbio by Capacity)\n\nLocation: Barcelona (hybrid)\nPosition: Backend Developer\nProjects:\n\nDeveloping a GRPC API gateway for a SaaS product written in Rust during the initial stages of commercialization and growth of the product.\nDeveloping client tools written in Python for integrating AWS storage with the SaaS product.\nDeveloping Terraform deployment scripts for hosting the different components of the SaaS product on AWS infrastructure.\nExtension of the internal REST API and database backend for a Dashboard of product metrics.\n\n\nTools: Jetbrains CLion (with Rust plugin), Cargo, GitLab CI/CD, Terraform, Python, Docker, Linux\nPeriod: 2022 Jun. - 2024 Jul.\n\nQAD DynaSys\n\nLocation: Barcelona (remote)\nPosition: Software Developer\nProjects:\n\nRefactoring of a C++ desktop app to allow servicing the desktop app as a SaaS product.\nDeveloping a C#-based frontend for interfacing with the C++ desktop app code.\n\n\nTools: Visual Studio, Windows\nPeriod: 2021 Jun. - 2022 Jun.\n\nCapitole Consulting\n\nLocation: Barcelona (remote)\nPosition: Software Developer\nProjects:\n\nDeveloping a Python tool for the processing of analysis results and generation of PDF reports.\nRefactoring of the analysis results data structures for use in the previous tool, and improve maintainability.\nFixing bugs and performance issues in a C++ application.\n\n\nPeriod: 2021 Jan. - Jun.\n\nHP Inc.\n\nLocation: Barcelona\nPosition: Junior SDET (2018), Junior DevOps (2019, remote)\nProjects:\n\nDeveloping C++ unit and integration tests.\nMaintaining several Jenkins instances as a private CI/CD pipeline solution.\n\n\nTools: GoogleTest, VS Code, Jenkins, Jira, Linux\nPeriod: Sep. 2018 - Sep. 2020\n\nMiscellanea\nI host several tiny personal servers (recycled computers at home + a cloud VPS) with services for my own needs. Some of the services I host are:\n\nAn instance of Nextcloud (a cloud drive solution) at cloud.sepo.family\nAn instance of Authentik (an SSO solution) at login.sepo.family\nAn instance of Forgejo (a Git forge) at git.vylion.com\nSeveral private instances of Portainer CE (one for each of my servers)\nA private instance of RustDesk\nA PDS ATProto server for hosting my own profile\nA knot server on knot1.tngl.vylion.com for my own Tangled repos\n\nI currently use a custom built keyboard running my own firmware developed in C++ with QMK.\nIn the past I have developed a text Markov chain bot for Telegram.\nI want to work on the following projects next:\n\nFill my personal site with content.\nSet up an Anubis instance in front of my personal site.\nAt least one of the following:\n\nSet up a private instance of Jenkins for personal use.\nSet up my own Spindle instance as a Tangled CI/CD pipeline for my personal Tangled projects.\n\n\nLearn JavaScript, TypeScript and React for fullstack development.\n\nContact\nI can be contacted by email at gserrahima at mailbox.org.\nI am currently living in Esplugues de Llobregat, in Spain, Europe.\nMy phone number is (+ ES Prefix) 637 911 884. I can be contacted through:\n\nCalls\nWhatsApp\nTelegram\n\ntesting\n\nPlease state your reason for contacting on your first message through WhatsApp or Telegram to avoid being filtered as spam.\n\n","id":"https://vylion.com/cv/","title":"My CV"}},"docInfo":{"https://vylion.com/":{"body":17,"title":1},"https://vylion.com/cv/":{"body":478,"title":1}},"length":2},"lang":"English"} 1 + window.searchIndex = {"fields":["title","body"],"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5","index":{"body":{"root":{"docs":{},"df":0,"2":{"docs":{},"df":0,"0":{"docs":{},"df":0,"1":{"docs":{},"df":0,"8":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"9":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"2":{"docs":{},"df":0,"0":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"1":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"2":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"4":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"5":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"6":{"docs":{},"df":0,"3":{"docs":{},"df":0,"7":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"8":{"docs":{},"df":0,"8":{"docs":{},"df":0,"4":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"9":{"docs":{},"df":0,"1":{"docs":{},"df":0,"1":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"d":{"docs":{},"df":0,"d":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}},"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"b":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"e":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}},"t":{"docs":{},"df":0,"p":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"t":{"docs":{},"df":0,"h":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"v":{"docs":{},"df":0,"o":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"b":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":2}}}}}}},"s":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"c":{"docs":{"https://vylion.com/cv/":{"tf":3.0}},"df":1,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"g":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"h":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"/":{"docs":{},"df":0,"c":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}}}},"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1,".":{"docs":{},"df":0,"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,".":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}},"o":{"docs":{},"df":0,"d":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"m":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"c":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"n":{"docs":{},"df":0,"f":{"docs":{},"df":0,"i":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"d":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"t":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"b":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"y":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"g":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"k":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":3.605551275463989}},"df":1}}}},"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"f":{"docs":{},"df":0,"f":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"i":{"docs":{},"df":0,"v":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":2}},"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"v":{"docs":{},"df":0,"i":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"p":{"docs":{},"df":0,"l":{"docs":{},"df":0,"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"x":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"x":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"o":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}},"r":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"e":{"docs":{},"df":0,"j":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{},"df":0,"w":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"g":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1,".":{"docs":{},"df":0,"v":{"docs":{},"df":0,"y":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}},"h":{"docs":{},"df":0,"u":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"o":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"w":{"docs":{},"df":0,"t":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"h":{"docs":{},"df":0,"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"u":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}}}}}},"h":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}},"o":{"docs":{},"df":0,"l":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"y":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"i":{"docs":{},"df":0,"'":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"p":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"n":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":3.0}},"df":1}}}}},"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"r":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"s":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"j":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"v":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"e":{"docs":{},"df":0,"n":{"docs":{},"df":0,"k":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}}},"t":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"i":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"u":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"n":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"k":{"docs":{},"df":0,"e":{"docs":{},"df":0,"y":{"docs":{},"df":0,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"n":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"1":{"docs":{},"df":0,".":{"docs":{},"df":0,"t":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{},"df":0,".":{"docs":{},"df":0,"v":{"docs":{},"df":0,"y":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}}}},"w":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"d":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"n":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"x":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"v":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"b":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":1}}},"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,".":{"docs":{},"df":0,"s":{"docs":{},"df":0,"e":{"docs":{},"df":0,"p":{"docs":{},"df":0,"o":{"docs":{},"df":0,".":{"docs":{},"df":0,"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}}}}}}}}},"m":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"l":{"docs":{},"df":0,"b":{"docs":{},"df":0,"o":{"docs":{},"df":0,"x":{"docs":{},"df":0,".":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"n":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"k":{"docs":{},"df":0,"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"y":{"docs":{},"df":0,"b":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}},"o":{"docs":{},"df":0,"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"q":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"n":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"e":{"docs":{},"df":0,"e":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"x":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"c":{"docs":{},"df":0,"l":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"o":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"u":{"docs":{},"df":0,"m":{"docs":{},"df":0,"b":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"f":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":2.23606797749979}},"df":1}}},"s":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.6457513110645907}},"df":2}}}}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"o":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"l":{"docs":{},"df":0,"y":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"h":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"r":{"docs":{},"df":0,"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}},"t":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"q":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}},"r":{"docs":{},"df":0,"e":{"docs":{},"df":0,"f":{"docs":{},"df":0,"i":{"docs":{},"df":0,"x":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"v":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"i":{"docs":{},"df":0,"v":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}}},"o":{"docs":{},"df":0,"c":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"d":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}}}},"f":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"s":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"i":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"j":{"docs":{},"df":0,"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.8284271247461903}},"df":1}}}}}},"y":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":2.6457513110645907}},"df":1}}}}}},"q":{"docs":{},"df":0,"a":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"m":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"r":{"docs":{},"df":0,"&":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{},"df":0,"p":{"docs":{},"df":0,";":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"s":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"c":{"docs":{},"df":0,"y":{"docs":{},"df":0,"c":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"f":{"docs":{},"df":0,"a":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"g":{"docs":{},"df":0,"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"m":{"docs":{},"df":0,"o":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"p":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1,"r":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"q":{"docs":{},"df":0,"u":{"docs":{},"df":0,"i":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"u":{"docs":{},"df":0,"l":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"u":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1,"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}},"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}},"c":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"d":{"docs":{},"df":0,"e":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"e":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1},"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"h":{"docs":{},"df":0,"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"a":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}}}}}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":2.449489742783178}},"df":1}},"i":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"i":{"docs":{},"df":0,"m":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":2}}},"o":{"docs":{},"df":0,"f":{"docs":{},"df":0,"t":{"docs":{},"df":0,"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":2.0}},"df":2}}}}},"l":{"docs":{},"df":0,"u":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}},"u":{"docs":{},"df":0,"r":{"docs":{},"df":0,"c":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"p":{"docs":{},"df":0,"a":{"docs":{},"df":0,"i":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/":{"tf":1.0},"https://vylion.com/cv/":{"tf":1.0}},"df":2}},"m":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"e":{"docs":{},"df":0,"a":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"q":{"docs":{},"df":0,"l":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"s":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"t":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"g":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}},"r":{"docs":{},"df":0,"u":{"docs":{},"df":0,"c":{"docs":{},"df":0,"t":{"docs":{},"df":0,"u":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"u":{"docs":{},"df":0,"d":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"y":{"docs":{},"df":0,"n":{"docs":{},"df":0,"o":{"docs":{},"df":0,"p":{"docs":{},"df":0,"s":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}},"t":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"g":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}},"e":{"docs":{},"df":0,"l":{"docs":{},"df":0,"e":{"docs":{},"df":0,"g":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1}}}}}},"r":{"docs":{},"df":0,"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"f":{"docs":{},"df":0,"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"m":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}},"s":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}},"x":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"h":{"docs":{},"df":0,"r":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"g":{"docs":{},"df":0,"h":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"o":{"docs":{},"df":0,"o":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":2.8284271247461903}},"df":1}}},"y":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"s":{"docs":{},"df":0,"c":{"docs":{},"df":0,"r":{"docs":{},"df":0,"i":{"docs":{},"df":0,"p":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}}}}}},"u":{"docs":{},"df":0,"n":{"docs":{},"df":0,"i":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.7320508075688772}},"df":1},"s":{"docs":{"https://vylion.com/cv/":{"tf":3.1622776601683795}},"df":1}},"v":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{},"df":0,"b":{"docs":{},"df":0,"i":{"docs":{},"df":0,"o":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"i":{"docs":{},"df":0,"s":{"docs":{},"df":0,"u":{"docs":{},"df":0,"a":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"p":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1},"s":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"w":{"docs":{},"df":0,"a":{"docs":{},"df":0,"n":{"docs":{},"df":0,"t":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"y":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"h":{"docs":{},"df":0,"a":{"docs":{},"df":0,"t":{"docs":{},"df":0,"s":{"docs":{},"df":0,"a":{"docs":{},"df":0,"p":{"docs":{},"df":0,"p":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}}},"i":{"docs":{},"df":0,"n":{"docs":{},"df":0,"d":{"docs":{},"df":0,"o":{"docs":{},"df":0,"w":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}},"o":{"docs":{},"df":0,"r":{"docs":{},"df":0,"k":{"docs":{"https://vylion.com/cv/":{"tf":2.0}},"df":1}}},"r":{"docs":{},"df":0,"a":{"docs":{},"df":0,"p":{"docs":{},"df":0,"p":{"docs":{},"df":0,"e":{"docs":{},"df":0,"r":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}}}},"i":{"docs":{},"df":0,"t":{"docs":{},"df":0,"t":{"docs":{},"df":0,"e":{"docs":{},"df":0,"n":{"docs":{"https://vylion.com/cv/":{"tf":1.4142135623730951}},"df":1}}}}}},"s":{"docs":{},"df":0,"l":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}}},"y":{"docs":{},"df":0,"o":{"docs":{},"df":0,"u":{"docs":{},"df":0,"'":{"docs":{},"df":0,"d":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}}}},"title":{"root":{"docs":{},"df":0,"c":{"docs":{},"df":0,"v":{"docs":{"https://vylion.com/cv/":{"tf":1.0}},"df":1}},"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{"https://vylion.com/":{"tf":1.0}},"df":1}}}}}}},"documentStore":{"save":true,"docs":{"https://vylion.com/":{"body":"Hello! I'm Guillermo Serrahima, a Software Engineer from the area of Barcelona, Spain. This is my personal site.\nMaybe you'd like to check out the different sections:\n","id":"https://vylion.com/","title":"Home"},"https://vylion.com/cv/":{"body":"Who am I\nI am Guillermo Serrahima, a Software Engineer from the area of Barcelona, where I currently live. I graduated from the Polytechnic University of Catalonia with a Degree in Informatics Engineering in 2018.\nI am most comfortable when I am working with C++, Java, Python and Rust code. I am familiar with Git, Linux, and the command line. In my day to day I use Arch Linux as my main OS.\nIn addition, I have worked in the past with other languages like Golang, C, C#. I have worked on projects that used PostgreSQL, and I maintain SQLite and MySQL databases on my personal servers (depending on the scope.) I have used testing frameworks like GoogleTest and Pytest, and used CI/CD pipelines like Jenkins and GitHub CI/CD. I also regularly use Docker containers on both a profesional environment and my personal servers.\nLanguages\nI speak Spanish and Catalan natively, and I hold and have used a professional level of English on all my job positions.\nPrevious Experience\nAnsys (now part of Synopsys)\n\nLocation: Madrid (remote)\nPosition: R&amp;D Engineer\nProjects:\n\nDeveloping a software tool on Python, to allow configuration of physics simuations using model-based design by clients with no code knowledge required, by way of a drag-and-drop interface.\nRefactoring a Dash Mantine wrapper library for Python, with the goal of open-sourcing said library.\n\n\nTools: Python, Pytest, Poetry, GitHub CI/CD, GitHub Actions, Docker, WSL, Windows\nPeriod: 2024 Aug. - 2025 Nov.\n\nVerbio (now Verbio by Capacity)\n\nLocation: Barcelona (hybrid)\nPosition: Backend Developer\nProjects:\n\nDeveloping a GRPC API gateway for a SaaS product written in Rust during the initial stages of commercialization and growth of the product.\nDeveloping client tools written in Python for integrating AWS storage with the SaaS product.\nDeveloping Terraform deployment scripts for hosting the different components of the SaaS product on AWS infrastructure.\nExtension of the internal REST API and database backend for a Dashboard of product metrics.\n\n\nTools: Jetbrains CLion (with Rust plugin), Cargo, GitLab CI/CD, Terraform, Python, Docker, Linux\nPeriod: 2022 Jun. - 2024 Jul.\n\nQAD DynaSys\n\nLocation: Barcelona (remote)\nPosition: Software Developer\nProjects:\n\nRefactoring of a C++ desktop app to allow servicing the desktop app as a SaaS product.\nDeveloping a C#-based frontend for interfacing with the C++ desktop app code.\n\n\nTools: Visual Studio, Windows\nPeriod: 2021 Jun. - 2022 Jun.\n\nCapitole Consulting\n\nLocation: Barcelona (remote)\nPosition: Software Developer\nProjects:\n\nDeveloping a Python tool for the processing of analysis results and generation of PDF reports.\nRefactoring of the analysis results data structures for use in the previous tool, and improve maintainability.\nFixing bugs and performance issues in a C++ application.\n\n\nPeriod: 2021 Jan. - Jun.\n\nHP Inc.\n\nLocation: Barcelona\nPosition: Junior SDET (2018), Junior DevOps (2019, remote)\nProjects:\n\nDeveloping C++ unit and integration tests.\nMaintaining several Jenkins instances as a private CI/CD pipeline solution.\n\n\nTools: GoogleTest, VS Code, Jenkins, Jira, Linux\nPeriod: Sep. 2018 - Sep. 2020\n\nMiscellanea\nI host several tiny personal servers (recycled computers at home + a cloud VPS) with services for my own needs. Some of the services I host are:\n\nAn instance of Nextcloud (a cloud drive solution) at cloud.sepo.family\nAn instance of Authentik (an SSO solution) at login.sepo.family\nAn instance of Forgejo (a Git forge) at git.vylion.com\nSeveral private instances of Portainer CE (one for each of my servers)\nA private instance of RustDesk\nA PDS ATProto server for hosting my own profile\nA knot server on knot1.tngl.vylion.com for my own Tangled repos\n\nI currently use a custom built keyboard running my own firmware developed in C++ with QMK.\nIn the past I have developed a text Markov chain bot for Telegram.\nI want to work on the following projects next:\n\nFill my personal site with content.\nSet up an Anubis instance in front of my personal site.\nAt least one of the following:\n\nSet up a private instance of Jenkins for personal use.\nSet up my own Spindle instance as a Tangled CI/CD pipeline for my personal Tangled projects.\n\n\nLearn JavaScript, TypeScript and React for fullstack development.\n\nContact\nI can be contacted by email at gserrahima at mailbox.org.\nI am currently living in Esplugues de Llobregat, in Spain, Europe.\nMy phone number is (+ ES Prefix) 637 911 884. I can be contacted through:\n\nCalls\nWhatsApp\nTelegram\n\n\nPlease state your reason for contacting on your first message through WhatsApp or Telegram to avoid being filtered as spam.\n\n","id":"https://vylion.com/cv/","title":"My CV"}},"docInfo":{"https://vylion.com/":{"body":17,"title":1},"https://vylion.com/cv/":{"body":477,"title":1}},"length":2},"lang":"English"}