aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorymherklotz <ymherklotz@users.noreply.github.com>2021-09-19 17:07:26 +0000
committerymherklotz <ymherklotz@users.noreply.github.com>2021-09-19 17:07:26 +0000
commitaf240f26ba5026bdb41fabfff6fa8418f71edc16 (patch)
treea65e1d89c2cb22a5a38fedbd0ecd965f610fe1d1
parent45183ec019f667d5333cdda334eebacbdd508bc1 (diff)
downloadvericert-docs-af240f26ba5026bdb41fabfff6fa8418f71edc16.tar.gz
vericert-docs-af240f26ba5026bdb41fabfff6fa8418f71edc16.zip
deploy: 052033b521dafc77b7c97aacf43b028bdbd086b5
-rw-r--r--404.html2
-rw-r--r--blog/index.html2
-rw-r--r--book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css (renamed from book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css)2
-rw-r--r--categories/index.html2
-rw-r--r--docs/building/index.html2
-rw-r--r--docs/coq-style-guide/index.html2
-rw-r--r--docs/index.html4
-rw-r--r--docs/unreleased/index.html2
-rw-r--r--docs/using-vericert/index.html2
-rw-r--r--future/index.html2
-rw-r--r--images/design.jpgbin113232 -> 0 bytes
-rw-r--r--images/toolflow.svg1250
-rw-r--r--index.html2
-rw-r--r--tags/index.html2
14 files changed, 1263 insertions, 13 deletions
diff --git a/404.html b/404.html
index 3878b7d..840d0af 100644
--- a/404.html
+++ b/404.html
@@ -1 +1 @@
-<!doctype html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="404 Page not found"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/404.html"><title>404 Page not found | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><style>.not-found{text-align:center}.not-found h1{margin:.25em 0 0;opacity:.25;font-size:40vmin}</style></head><body><main class="flex justify-center not-found"><div><h1>404</h1><h2>Page Not Found</h2><h3><a href=/>Vericert</a></h3></div></main></body></html> \ No newline at end of file
+<!doctype html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="404 Page not found"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/404.html"><title>404 Page not found | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><style>.not-found{text-align:center}.not-found h1{margin:.25em 0 0;opacity:.25;font-size:40vmin}</style></head><body><main class="flex justify-center not-found"><div><h1>404</h1><h2>Page Not Found</h2><h3><a href=/>Vericert</a></h3></div></main></body></html> \ No newline at end of file
diff --git a/blog/index.html b/blog/index.html
index 507378e..d17990f 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="Blog posts"><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Blog"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/blog/"><title>Blog | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/blog/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="Blog posts"><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Blog"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/blog/"><title>Blog | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/blog/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/ class=active>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Blog</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></header><footer class=book-footer><div class="flex flex-wrap justify-between"></div></footer><div class=book-comments></div><label for=menu-control class="hidden book-menu-overlay"></label></div><aside class=book-toc><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></main></body></html> \ No newline at end of file
diff --git a/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css b/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css
index 2925353..8af6fbb 100644
--- a/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css
+++ b/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css
@@ -1 +1 @@
-:root{--gray-100: #fff8e5;--gray-200: #f2e6c1;--gray-500: #e5dab7;--color-link: #33a083;--color-visited-link: #33a083;--body-background: #f7eed2;--body-font-color: #0b1326;--icon-filter: none;--hint-color-info: #6bf;--hint-color-warning: #fd6;--hint-color-danger: #f66}@media(prefers-color-scheme:dark){:root{--gray-100: rgba(255, 255, 255, 0.1);--gray-200: rgba(255, 255, 255, 0.2);--gray-500: rgba(255, 255, 255, 0.5);--color-link: #80e5ca;--color-visited-link: #80e5ca;--body-background: #363f54;--body-font-color: #fffbf2;--icon-filter: brightness(0) invert(1);--hint-color-info: #6bf;--hint-color-warning: #fd6;--hint-color-danger: #f66}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:1 1 auto}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}input.toggle{height:0;width:0;overflow:hidden;opacity:0;position:absolute}.clearfix::after{content:"";display:table;clear:both}html{font-size:16px;scroll-behavior:smooth;touch-action:manipulation}body{min-width:20rem;color:var(--body-font-color);background:var(--body-background);letter-spacing:.33px;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5{font-weight:400}a{text-decoration:none;color:var(--color-link)}img{vertical-align:baseline}:focus{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}aside nav ul{padding:0;margin:0;list-style:none}aside nav ul li{margin:1em 0;position:relative}aside nav ul a{display:block}aside nav ul a:hover{opacity:.5}aside nav ul ul{padding-inline-start:1rem}ul.pagination{display:flex;justify-content:center;list-style-type:none}ul.pagination .page-item a{padding:1rem}.container{max-width:80rem;margin:0 auto}.book-icon{filter:var(--icon-filter)}.book-brand{margin-top:0}.book-brand img{height:1.5em;width:auto;vertical-align:middle;margin-inline-end:.5rem}.book-menu{flex:0 0 16rem;font-size:.875rem}.book-menu nav{width:16rem;padding:1rem;background:var(--body-background);position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-menu a,.book-menu label{color:inherit;cursor:pointer;word-wrap:break-word}.book-menu a.active{color:var(--color-link)}.book-menu input.toggle+label+ul{display:none}.book-menu input.toggle:checked+label+ul{display:block}.book-section-flat{margin-bottom:2rem}.book-section-flat:not(:first-child){margin-top:2rem}.book-section-flat>a,.book-section-flat>span,.book-section-flat>label{font-weight:bolder}.book-section-flat>ul{padding-inline-start:0}.book-page{min-width:20rem;flex-grow:1;padding:1rem}.book-post{margin-bottom:3rem}.book-header{display:none;margin-bottom:1rem}.book-header label{line-height:0}.book-search{position:relative;margin:1rem 0;border-bottom:1px solid transparent}.book-search input{width:100%;padding:.5rem;border:0;border-radius:.25rem;background:var(--gray-100);color:var(--body-font-color)}.book-search input:required+.book-search-spinner{display:block}.book-search .book-search-spinner{position:absolute;top:0;margin:.5rem;margin-inline-start:calc(100% - 1.5rem);width:1rem;height:1rem;border:1px solid transparent;border-top-color:var(--body-font-color);border-radius:50%;animation:spin 1s ease infinite}@keyframes spin{100%{transform:rotate(360deg)}}.book-search small{opacity:.5}.book-toc{flex:0 0 16rem;font-size:.75rem}.book-toc nav{width:16rem;padding:1rem;position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-toc img{height:1em}.book-toc nav>ul>li:first-child{margin-top:0}.book-footer{padding-top:1rem;font-size:.875rem}.book-footer img{height:1em;margin-inline-end:.5rem}.book-comments{margin-top:1rem}.book-languages{position:relative;overflow:visible;padding:1rem;margin:-1rem}.book-languages ul{margin:0;padding:0;list-style:none}.book-languages ul li{white-space:nowrap;cursor:pointer}.book-languages:hover .book-languages-list,.book-languages:focus .book-languages-list,.book-languages:focus-within .book-languages-list{display:block}.book-languages .book-languages-list{display:none;position:absolute;bottom:100%;left:0;padding:.5rem 0;background:var(--body-background);box-shadow:0 0 .25rem rgba(0,0,0,.1)}.book-languages .book-languages-list li img{opacity:.25}.book-languages .book-languages-list li.active img,.book-languages .book-languages-list li:hover img{opacity:initial}.book-languages .book-languages-list a{color:inherit;padding:.5rem 1rem}.book-home{padding:1rem}aside nav,.book-page,.book-header aside,.markdown{transition:.2s ease-in-out;transition-property:transform,margin,opacity,visibility;will-change:transform,margin,opacity}@media screen and (max-width:56rem){#menu-control,#toc-control{display:inline}.book-menu{visibility:hidden;margin-inline-start:-16rem;font-size:16px;z-index:1}.book-toc{display:none}.book-header{display:block}#menu-control:focus~main label[for=menu-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#menu-control:checked~main .book-menu{visibility:initial}#menu-control:checked~main .book-menu nav{transform:translateX(16rem);box-shadow:0 0 .5rem rgba(0,0,0,.1)}#menu-control:checked~main .book-page{opacity:.25}#menu-control:checked~main .book-menu-overlay{display:block;position:absolute;top:0;bottom:0;left:0;right:0}#toc-control:focus~main label[for=toc-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#toc-control:checked~main .book-header aside{display:block}body[dir=rtl] #menu-control:checked+main .book-menu nav{transform:translateX(-16rem)}}@media screen and (min-width:80rem){.book-page,.book-menu nav,.book-toc nav{padding:2rem 1rem}}@font-face{font-family:hk grotesk;font-style:italic;font-weight:400;font-display:swap;src:local("HK Grotesk Italic"),local("HKGrotesk-Italic"),url(fonts/HKGrotesk-Italic.woff2)format("woff2")}@font-face{font-family:hk grotesk;font-style:normal;font-weight:400;font-display:swap;src:local("HK Grotesk"),local("HKGrotesk"),url(fonts/HKGrotesk-Regular.woff2)format("woff2")}@font-face{font-family:hk grotesk;font-style:normal;font-weight:700;font-display:swap;src:local("HK Grotesk Bold"),local("HKGrotesk-Bold"),url(fonts/HKGrotesk-Bold.woff2)format("woff2")}@font-face{font-family:iosevka fixed;font-style:normal;font-weight:400;font-display:swap;src:local("Iosevka Fixed Regular"),local("IosevkaFixed-Regular"),url(fonts/iosevka-fixed-regular.woff2)format("woff2")}body{font-family:hk grotesk,sans-serif}code{font-family:iosevka fixed,roboto mono monospace}@media print{.book-menu,.book-footer,.book-toc{display:none}.book-header,.book-header aside{display:block}main{display:block!important}}.markdown{line-height:1.6}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-weight:400;line-height:1;margin-top:1.5em;margin-bottom:1rem}.markdown h1 a.anchor,.markdown h2 a.anchor,.markdown h3 a.anchor,.markdown h4 a.anchor,.markdown h5 a.anchor,.markdown h6 a.anchor{opacity:0;font-size:.75em;vertical-align:middle;text-decoration:none}.markdown h1:hover a.anchor,.markdown h1 a.anchor:focus,.markdown h2:hover a.anchor,.markdown h2 a.anchor:focus,.markdown h3:hover a.anchor,.markdown h3 a.anchor:focus,.markdown h4:hover a.anchor,.markdown h4 a.anchor:focus,.markdown h5:hover a.anchor,.markdown h5 a.anchor:focus,.markdown h6:hover a.anchor,.markdown h6 a.anchor:focus{opacity:initial}.markdown h4,.markdown h5,.markdown h6{font-weight:bolder}.markdown h5{font-size:.875em}.markdown h6{font-size:.75em}.markdown b,.markdown optgroup,.markdown strong{font-weight:bolder}.markdown a{text-decoration:none}.markdown a:hover{text-decoration:underline}.markdown a:visited{color:var(--color-visited-link)}.markdown img{max-width:100%}.markdown code{padding:0 .25rem;background:var(--gray-200);border-radius:.25rem;font-size:.875em}.markdown pre{padding:1rem;background:var(--gray-100);border-radius:.25rem;overflow-x:auto}.markdown pre code{padding:0;background:0 0}.markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-inline-start:.25rem solid var(--gray-200);border-radius:.25rem}.markdown blockquote :first-child{margin-top:0}.markdown blockquote :last-child{margin-bottom:0}.markdown table{overflow:auto;display:block;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem}.markdown table tr th,.markdown table tr td{padding:.5rem 1rem;border:1px solid var(--gray-200)}.markdown table tr:nth-child(2n){background:var(--gray-100)}.markdown hr{height:1px;border:none;background:var(--gray-200)}.markdown ul,.markdown ol{padding-inline-start:2rem}.markdown dl dt{font-weight:bolder;margin-top:1rem}.markdown dl dd{margin-inline-start:1rem;margin-bottom:1rem}.markdown .highlight table tr td:nth-child(1) pre{margin:0;padding-inline-end:0}.markdown .highlight table tr td:nth-child(2) pre{margin:0;padding-inline-start:0}.markdown details{padding:1rem;border:1px solid var(--gray-200);border-radius:.25rem}.markdown details summary{line-height:1;padding:1rem;margin:-1rem;cursor:pointer}.markdown details[open] summary{margin-bottom:0}.markdown figure{margin:1rem 0}.markdown figure figcaption p{margin-top:0}.markdown-inner>:first-child{margin-top:0}.markdown-inner>:last-child{margin-bottom:0}.markdown .book-expand{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden}.markdown .book-expand .book-expand-head{background:var(--gray-100);padding:.5rem 1rem;cursor:pointer}.markdown .book-expand .book-expand-content{display:none;padding:1rem}.markdown .book-expand input[type=checkbox]:checked+.book-expand-content{display:block}.markdown .book-tabs{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden;display:flex;flex-wrap:wrap}.markdown .book-tabs label{display:inline-block;padding:.5rem 1rem;border-bottom:1px transparent;cursor:pointer}.markdown .book-tabs .book-tabs-content{order:999;width:100%;border-top:1px solid var(--gray-100);padding:1rem;display:none}.markdown .book-tabs input[type=radio]:checked+label{border-bottom:1px solid var(--color-link)}.markdown .book-tabs input[type=radio]:checked+label+.book-tabs-content{display:block}.markdown .book-tabs input[type=radio]:focus+label{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}.markdown .book-columns{margin-left:-1rem;margin-right:-1rem}.markdown .book-columns>div{margin:1rem 0;min-width:10rem;padding:0 1rem}.markdown a.book-btn{display:inline-block;font-size:.875rem;color:var(--color-link);line-height:2rem;padding:0 1rem;border:1px solid var(--color-link);border-radius:.25rem;cursor:pointer}.markdown a.book-btn:hover{text-decoration:none}.markdown .book-hint.info{border-color:#6bf;background-color:rgba(102,187,255,.1)}.markdown .book-hint.warning{border-color:#fd6;background-color:rgba(255,221,102,.1)}.markdown .book-hint.danger{border-color:#f66;background-color:rgba(255,102,102,.1)}@media(prefers-color-scheme:light){.chroma{background-color:#fff}.chroma .err{color:red;background-color:#faa}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{color:#289;font-weight:700}.chroma .kc{color:#289;font-weight:700}.chroma .kd{color:#289;font-weight:700}.chroma .kn{color:#289;font-weight:700}.chroma .kp{color:#08f;font-weight:700}.chroma .kr{color:#289;font-weight:700}.chroma .kt{color:#66f;font-weight:700}.chroma .na{color:#007}.chroma .nb{color:#072}.chroma .nc{color:#e9e;font-weight:700}.chroma .no{color:#23b2a1;font-weight:700}.chroma .nd{color:#555;font-weight:700}.chroma .ni{color:#800}.chroma .ne{color:red;font-weight:700}.chroma .nf{color:#23b2a1;font-weight:700}.chroma .nl{color:#970;font-weight:700}.chroma .nn{color:#0e84b5;font-weight:700}.chroma .nt{color:#070}.chroma .nv{color:#036}.chroma .vc{color:#ccf}.chroma .vg{color:#f84}.chroma .vi{color:#aaf}.chroma .s{background-color:#e0e0ff}.chroma .sa{background-color:#e0e0ff}.chroma .sb{background-color:#e0e0ff}.chroma .sc{color:#88f;background-color:#e0e0ff}.chroma .dl{background-color:#e0e0ff}.chroma .sd{color:#d42;background-color:#e0e0ff}.chroma .s2{background-color:#e0e0ff}.chroma .se{color:#666;background-color:#e0e0ff;font-weight:700}.chroma .sh{background-color:#e0e0ff}.chroma .si{background-color:#eee}.chroma .sx{color:#f88;background-color:#e0e0ff}.chroma .sr{color:#000;background-color:#e0e0ff}.chroma .s1{background-color:#e0e0ff}.chroma .ss{color:#fc8;background-color:#e0e0ff}.chroma .m{color:#60e;font-weight:700}.chroma .mb{color:#60e;font-weight:700}.chroma .mf{color:#60e;font-weight:700}.chroma .mh{color:#058;font-weight:700}.chroma .mi{color:#66f;font-weight:700}.chroma .il{color:#60e;font-weight:700}.chroma .mo{color:#40e;font-weight:700}.chroma .o{color:#333}.chroma .ow{color:#000;font-weight:700}.chroma .c{color:#666;font-style:italic}.chroma .ch{color:#666;font-style:italic}.chroma .cm{color:#666;font-style:italic}.chroma .c1{color:#666;font-style:italic}.chroma .cs{color:#c00;font-weight:700;font-style:italic}.chroma .cp{color:#579}.chroma .cpf{color:#579}.chroma .gd{color:#a00000}.chroma .ge{font-style:italic}.chroma .gr{color:red}.chroma .gh{color:navy;font-weight:700}.chroma .gi{color:#00a000}.chroma .go{color:#888}.chroma .gp{color:#c65d09;font-weight:700}.chroma .gs{font-weight:700}.chroma .gu{color:purple;font-weight:700}.chroma .gt{color:#04d}.chroma .gl{text-decoration:underline}.chroma .w{color:#bbb}#book-logo{background-image:url(/vericert-main.svg);height:5rem;background-repeat:no-repeat;background-size:cover}}@media(prefers-color-scheme:dark){.chroma{color:#fff;background-color:#111}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{color:#fb660a;font-weight:700}.chroma .kc{color:#fb660a;font-weight:700}.chroma .kd{color:#fb660a;font-weight:700}.chroma .kn{color:#fb660a;font-weight:700}.chroma .kp{color:#fb660a}.chroma .kr{color:#fb660a;font-weight:700}.chroma .kt{color:#cdcaa9;font-weight:700}.chroma .na{color:#ff0086;font-weight:700}.chroma .no{color:#0086d2}.chroma .nf{color:#ff0086;font-weight:700}.chroma .nt{color:#fb660a;font-weight:700}.chroma .nv{color:#fb660a}.chroma .s{color:#0086d2}.chroma .sa{color:#0086d2}.chroma .sb{color:#0086d2}.chroma .sc{color:#0086d2}.chroma .dl{color:#0086d2}.chroma .sd{color:#0086d2}.chroma .s2{color:#0086d2}.chroma .se{color:#0086d2}.chroma .sh{color:#0086d2}.chroma .si{color:#0086d2}.chroma .sx{color:#0086d2}.chroma .sr{color:#0086d2}.chroma .s1{color:#0086d2}.chroma .ss{color:#0086d2}.chroma .m{color:#0086f7;font-weight:700}.chroma .mb{color:#0086f7;font-weight:700}.chroma .mf{color:#0086f7;font-weight:700}.chroma .mh{color:#0086f7;font-weight:700}.chroma .mi{color:#0086f7;font-weight:700}.chroma .il{color:#0086f7;font-weight:700}.chroma .mo{color:#0086f7;font-weight:700}.chroma .c{color:#080;background-color:#0f140f;font-style:italic}.chroma .ch{color:#080;background-color:#0f140f;font-style:italic}.chroma .cm{color:#080;background-color:#0f140f;font-style:italic}.chroma .c1{color:#080;background-color:#0f140f;font-style:italic}.chroma .cs{color:#080;background-color:#0f140f;font-style:italic}.chroma .cp{color:#ff0007;background-color:#0f140f;font-weight:700;font-style:italic}.chroma .cpf{color:#ff0007;background-color:#0f140f;font-weight:700;font-style:italic}.chroma .gh{font-weight:700}.chroma .go{color:#444;background-color:#222}.chroma .gu{font-weight:700}.chroma .w{color:#888}#book-logo{background-image:url(/vericert-white.svg);height:5rem;background-repeat:no-repeat;background-size:cover}}.book-brand{padding-bottom:1rem}.book-brand p{line-height:1.3;text-align:center}.book-page{background:var(--gray-100);border-radius:20px;padding:3rem}.markdown pre{background-color:var(--body-background)}.markdown h1{font-size:3em}.book-categories-tag{padding-right:1em}.book-tags-tag{padding-right:1em}.markdown .book-by-line{margin-top:0;margin-bottom:.2em} \ No newline at end of file
+:root{--gray-100: #fff8e5;--gray-200: #f2e6c1;--gray-500: #e5dab7;--color-link: #33a083;--color-visited-link: #33a083;--body-background: #f7eed2;--body-font-color: #0b1326;--icon-filter: none;--hint-color-info: #6bf;--hint-color-warning: #fd6;--hint-color-danger: #f66}@media(prefers-color-scheme:dark){:root{--gray-100: rgba(255, 255, 255, 0.1);--gray-200: rgba(255, 255, 255, 0.2);--gray-500: rgba(255, 255, 255, 0.5);--color-link: #80e5ca;--color-visited-link: #80e5ca;--body-background: #363f54;--body-font-color: #fffbf2;--icon-filter: brightness(0) invert(1);--hint-color-info: #6bf;--hint-color-warning: #fd6;--hint-color-danger: #f66}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:1 1 auto}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}input.toggle{height:0;width:0;overflow:hidden;opacity:0;position:absolute}.clearfix::after{content:"";display:table;clear:both}html{font-size:16px;scroll-behavior:smooth;touch-action:manipulation}body{min-width:20rem;color:var(--body-font-color);background:var(--body-background);letter-spacing:.33px;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5{font-weight:400}a{text-decoration:none;color:var(--color-link)}img{vertical-align:baseline}:focus{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}aside nav ul{padding:0;margin:0;list-style:none}aside nav ul li{margin:1em 0;position:relative}aside nav ul a{display:block}aside nav ul a:hover{opacity:.5}aside nav ul ul{padding-inline-start:1rem}ul.pagination{display:flex;justify-content:center;list-style-type:none}ul.pagination .page-item a{padding:1rem}.container{max-width:80rem;margin:0 auto}.book-icon{filter:var(--icon-filter)}.book-brand{margin-top:0}.book-brand img{height:1.5em;width:auto;vertical-align:middle;margin-inline-end:.5rem}.book-menu{flex:0 0 16rem;font-size:.875rem}.book-menu nav{width:16rem;padding:1rem;background:var(--body-background);position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-menu a,.book-menu label{color:inherit;cursor:pointer;word-wrap:break-word}.book-menu a.active{color:var(--color-link)}.book-menu input.toggle+label+ul{display:none}.book-menu input.toggle:checked+label+ul{display:block}.book-section-flat{margin-bottom:2rem}.book-section-flat:not(:first-child){margin-top:2rem}.book-section-flat>a,.book-section-flat>span,.book-section-flat>label{font-weight:bolder}.book-section-flat>ul{padding-inline-start:0}.book-page{min-width:20rem;flex-grow:1;padding:1rem}.book-post{margin-bottom:3rem}.book-header{display:none;margin-bottom:1rem}.book-header label{line-height:0}.book-search{position:relative;margin:1rem 0;border-bottom:1px solid transparent}.book-search input{width:100%;padding:.5rem;border:0;border-radius:.25rem;background:var(--gray-100);color:var(--body-font-color)}.book-search input:required+.book-search-spinner{display:block}.book-search .book-search-spinner{position:absolute;top:0;margin:.5rem;margin-inline-start:calc(100% - 1.5rem);width:1rem;height:1rem;border:1px solid transparent;border-top-color:var(--body-font-color);border-radius:50%;animation:spin 1s ease infinite}@keyframes spin{100%{transform:rotate(360deg)}}.book-search small{opacity:.5}.book-toc{flex:0 0 16rem;font-size:.75rem}.book-toc nav{width:16rem;padding:1rem;position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-toc img{height:1em}.book-toc nav>ul>li:first-child{margin-top:0}.book-footer{padding-top:1rem;font-size:.875rem}.book-footer img{height:1em;margin-inline-end:.5rem}.book-comments{margin-top:1rem}.book-languages{position:relative;overflow:visible;padding:1rem;margin:-1rem}.book-languages ul{margin:0;padding:0;list-style:none}.book-languages ul li{white-space:nowrap;cursor:pointer}.book-languages:hover .book-languages-list,.book-languages:focus .book-languages-list,.book-languages:focus-within .book-languages-list{display:block}.book-languages .book-languages-list{display:none;position:absolute;bottom:100%;left:0;padding:.5rem 0;background:var(--body-background);box-shadow:0 0 .25rem rgba(0,0,0,.1)}.book-languages .book-languages-list li img{opacity:.25}.book-languages .book-languages-list li.active img,.book-languages .book-languages-list li:hover img{opacity:initial}.book-languages .book-languages-list a{color:inherit;padding:.5rem 1rem}.book-home{padding:1rem}aside nav,.book-page,.book-header aside,.markdown{transition:.2s ease-in-out;transition-property:transform,margin,opacity,visibility;will-change:transform,margin,opacity}@media screen and (max-width:56rem){#menu-control,#toc-control{display:inline}.book-menu{visibility:hidden;margin-inline-start:-16rem;font-size:16px;z-index:1}.book-toc{display:none}.book-header{display:block}#menu-control:focus~main label[for=menu-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#menu-control:checked~main .book-menu{visibility:initial}#menu-control:checked~main .book-menu nav{transform:translateX(16rem);box-shadow:0 0 .5rem rgba(0,0,0,.1)}#menu-control:checked~main .book-page{opacity:.25}#menu-control:checked~main .book-menu-overlay{display:block;position:absolute;top:0;bottom:0;left:0;right:0}#toc-control:focus~main label[for=toc-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#toc-control:checked~main .book-header aside{display:block}body[dir=rtl] #menu-control:checked+main .book-menu nav{transform:translateX(-16rem)}}@media screen and (min-width:80rem){.book-page,.book-menu nav,.book-toc nav{padding:2rem 1rem}}@font-face{font-family:hk grotesk;font-style:italic;font-weight:400;font-display:swap;src:local("HK Grotesk Italic"),local("HKGrotesk-Italic"),url(fonts/HKGrotesk-Italic.woff2)format("woff2")}@font-face{font-family:hk grotesk;font-style:normal;font-weight:400;font-display:swap;src:local("HK Grotesk"),local("HKGrotesk"),url(fonts/HKGrotesk-Regular.woff2)format("woff2")}@font-face{font-family:hk grotesk;font-style:normal;font-weight:700;font-display:swap;src:local("HK Grotesk Bold"),local("HKGrotesk-Bold"),url(fonts/HKGrotesk-Bold.woff2)format("woff2")}@font-face{font-family:iosevka fixed;font-style:normal;font-weight:400;font-display:swap;src:local("Iosevka Fixed Regular"),local("IosevkaFixed-Regular"),url(fonts/iosevka-fixed-regular.woff2)format("woff2")}body{font-family:hk grotesk,sans-serif}code{font-family:iosevka fixed,roboto mono monospace}@media print{.book-menu,.book-footer,.book-toc{display:none}.book-header,.book-header aside{display:block}main{display:block!important}}.markdown{line-height:1.6}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-weight:400;line-height:1;margin-top:1.5em;margin-bottom:1rem}.markdown h1 a.anchor,.markdown h2 a.anchor,.markdown h3 a.anchor,.markdown h4 a.anchor,.markdown h5 a.anchor,.markdown h6 a.anchor{opacity:0;font-size:.75em;vertical-align:middle;text-decoration:none}.markdown h1:hover a.anchor,.markdown h1 a.anchor:focus,.markdown h2:hover a.anchor,.markdown h2 a.anchor:focus,.markdown h3:hover a.anchor,.markdown h3 a.anchor:focus,.markdown h4:hover a.anchor,.markdown h4 a.anchor:focus,.markdown h5:hover a.anchor,.markdown h5 a.anchor:focus,.markdown h6:hover a.anchor,.markdown h6 a.anchor:focus{opacity:initial}.markdown h4,.markdown h5,.markdown h6{font-weight:bolder}.markdown h5{font-size:.875em}.markdown h6{font-size:.75em}.markdown b,.markdown optgroup,.markdown strong{font-weight:bolder}.markdown a{text-decoration:none}.markdown a:hover{text-decoration:underline}.markdown a:visited{color:var(--color-visited-link)}.markdown img{max-width:100%}.markdown code{padding:0 .25rem;background:var(--gray-200);border-radius:.25rem;font-size:.875em}.markdown pre{padding:1rem;background:var(--gray-100);border-radius:.25rem;overflow-x:auto}.markdown pre code{padding:0;background:0 0}.markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-inline-start:.25rem solid var(--gray-200);border-radius:.25rem}.markdown blockquote :first-child{margin-top:0}.markdown blockquote :last-child{margin-bottom:0}.markdown table{overflow:auto;display:block;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem}.markdown table tr th,.markdown table tr td{padding:.5rem 1rem;border:1px solid var(--gray-200)}.markdown table tr:nth-child(2n){background:var(--gray-100)}.markdown hr{height:1px;border:none;background:var(--gray-200)}.markdown ul,.markdown ol{padding-inline-start:2rem}.markdown dl dt{font-weight:bolder;margin-top:1rem}.markdown dl dd{margin-inline-start:1rem;margin-bottom:1rem}.markdown .highlight table tr td:nth-child(1) pre{margin:0;padding-inline-end:0}.markdown .highlight table tr td:nth-child(2) pre{margin:0;padding-inline-start:0}.markdown details{padding:1rem;border:1px solid var(--gray-200);border-radius:.25rem}.markdown details summary{line-height:1;padding:1rem;margin:-1rem;cursor:pointer}.markdown details[open] summary{margin-bottom:0}.markdown figure{margin:1rem 0}.markdown figure figcaption p{margin-top:0}.markdown-inner>:first-child{margin-top:0}.markdown-inner>:last-child{margin-bottom:0}.markdown .book-expand{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden}.markdown .book-expand .book-expand-head{background:var(--gray-100);padding:.5rem 1rem;cursor:pointer}.markdown .book-expand .book-expand-content{display:none;padding:1rem}.markdown .book-expand input[type=checkbox]:checked+.book-expand-content{display:block}.markdown .book-tabs{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden;display:flex;flex-wrap:wrap}.markdown .book-tabs label{display:inline-block;padding:.5rem 1rem;border-bottom:1px transparent;cursor:pointer}.markdown .book-tabs .book-tabs-content{order:999;width:100%;border-top:1px solid var(--gray-100);padding:1rem;display:none}.markdown .book-tabs input[type=radio]:checked+label{border-bottom:1px solid var(--color-link)}.markdown .book-tabs input[type=radio]:checked+label+.book-tabs-content{display:block}.markdown .book-tabs input[type=radio]:focus+label{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}.markdown .book-columns{margin-left:-1rem;margin-right:-1rem}.markdown .book-columns>div{margin:1rem 0;min-width:10rem;padding:0 1rem}.markdown a.book-btn{display:inline-block;font-size:.875rem;color:var(--color-link);line-height:2rem;padding:0 1rem;border:1px solid var(--color-link);border-radius:.25rem;cursor:pointer}.markdown a.book-btn:hover{text-decoration:none}.markdown .book-hint.info{border-color:#6bf;background-color:rgba(102,187,255,.1)}.markdown .book-hint.warning{border-color:#fd6;background-color:rgba(255,221,102,.1)}.markdown .book-hint.danger{border-color:#f66;background-color:rgba(255,102,102,.1)}@media(prefers-color-scheme:light){.chroma{background-color:#fff}.chroma .err{color:red;background-color:#faa}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{color:#289;font-weight:700}.chroma .kc{color:#289;font-weight:700}.chroma .kd{color:#289;font-weight:700}.chroma .kn{color:#289;font-weight:700}.chroma .kp{color:#08f;font-weight:700}.chroma .kr{color:#289;font-weight:700}.chroma .kt{color:#66f;font-weight:700}.chroma .na{color:#007}.chroma .nb{color:#072}.chroma .nc{color:#e9e;font-weight:700}.chroma .no{color:#23b2a1;font-weight:700}.chroma .nd{color:#555;font-weight:700}.chroma .ni{color:#800}.chroma .ne{color:red;font-weight:700}.chroma .nf{color:#23b2a1;font-weight:700}.chroma .nl{color:#970;font-weight:700}.chroma .nn{color:#0e84b5;font-weight:700}.chroma .nt{color:#070}.chroma .nv{color:#036}.chroma .vc{color:#ccf}.chroma .vg{color:#f84}.chroma .vi{color:#aaf}.chroma .s{background-color:#e0e0ff}.chroma .sa{background-color:#e0e0ff}.chroma .sb{background-color:#e0e0ff}.chroma .sc{color:#88f;background-color:#e0e0ff}.chroma .dl{background-color:#e0e0ff}.chroma .sd{color:#d42;background-color:#e0e0ff}.chroma .s2{background-color:#e0e0ff}.chroma .se{color:#666;background-color:#e0e0ff;font-weight:700}.chroma .sh{background-color:#e0e0ff}.chroma .si{background-color:#eee}.chroma .sx{color:#f88;background-color:#e0e0ff}.chroma .sr{color:#000;background-color:#e0e0ff}.chroma .s1{background-color:#e0e0ff}.chroma .ss{color:#fc8;background-color:#e0e0ff}.chroma .m{color:#60e;font-weight:700}.chroma .mb{color:#60e;font-weight:700}.chroma .mf{color:#60e;font-weight:700}.chroma .mh{color:#058;font-weight:700}.chroma .mi{color:#66f;font-weight:700}.chroma .il{color:#60e;font-weight:700}.chroma .mo{color:#40e;font-weight:700}.chroma .o{color:#333}.chroma .ow{color:#000;font-weight:700}.chroma .c{color:#666;font-style:italic}.chroma .ch{color:#666;font-style:italic}.chroma .cm{color:#666;font-style:italic}.chroma .c1{color:#666;font-style:italic}.chroma .cs{color:#c00;font-weight:700;font-style:italic}.chroma .cp{color:#579}.chroma .cpf{color:#579}.chroma .gd{color:#a00000}.chroma .ge{font-style:italic}.chroma .gr{color:red}.chroma .gh{color:navy;font-weight:700}.chroma .gi{color:#00a000}.chroma .go{color:#888}.chroma .gp{color:#c65d09;font-weight:700}.chroma .gs{font-weight:700}.chroma .gu{color:purple;font-weight:700}.chroma .gt{color:#04d}.chroma .gl{text-decoration:underline}.chroma .w{color:#bbb}#book-logo{background-image:url(/vericert-main.svg);height:5rem;background-repeat:no-repeat;background-size:cover}}@media(prefers-color-scheme:dark){.chroma{color:#fff;background-color:#111}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{color:#fb660a;font-weight:700}.chroma .kc{color:#fb660a;font-weight:700}.chroma .kd{color:#fb660a;font-weight:700}.chroma .kn{color:#fb660a;font-weight:700}.chroma .kp{color:#fb660a}.chroma .kr{color:#fb660a;font-weight:700}.chroma .kt{color:#cdcaa9;font-weight:700}.chroma .na{color:#ff0086;font-weight:700}.chroma .no{color:#0086d2}.chroma .nf{color:#ff0086;font-weight:700}.chroma .nt{color:#fb660a;font-weight:700}.chroma .nv{color:#fb660a}.chroma .s{color:#0086d2}.chroma .sa{color:#0086d2}.chroma .sb{color:#0086d2}.chroma .sc{color:#0086d2}.chroma .dl{color:#0086d2}.chroma .sd{color:#0086d2}.chroma .s2{color:#0086d2}.chroma .se{color:#0086d2}.chroma .sh{color:#0086d2}.chroma .si{color:#0086d2}.chroma .sx{color:#0086d2}.chroma .sr{color:#0086d2}.chroma .s1{color:#0086d2}.chroma .ss{color:#0086d2}.chroma .m{color:#0086f7;font-weight:700}.chroma .mb{color:#0086f7;font-weight:700}.chroma .mf{color:#0086f7;font-weight:700}.chroma .mh{color:#0086f7;font-weight:700}.chroma .mi{color:#0086f7;font-weight:700}.chroma .il{color:#0086f7;font-weight:700}.chroma .mo{color:#0086f7;font-weight:700}.chroma .c{color:#080;background-color:#0f140f;font-style:italic}.chroma .ch{color:#080;background-color:#0f140f;font-style:italic}.chroma .cm{color:#080;background-color:#0f140f;font-style:italic}.chroma .c1{color:#080;background-color:#0f140f;font-style:italic}.chroma .cs{color:#080;background-color:#0f140f;font-style:italic}.chroma .cp{color:#ff0007;background-color:#0f140f;font-weight:700;font-style:italic}.chroma .cpf{color:#ff0007;background-color:#0f140f;font-weight:700;font-style:italic}.chroma .gh{font-weight:700}.chroma .go{color:#444;background-color:#222}.chroma .gu{font-weight:700}.chroma .w{color:#888}#book-logo{background-image:url(/vericert-white.svg);height:5rem;background-repeat:no-repeat;background-size:cover}}.book-brand{padding-bottom:1rem}.book-brand p{line-height:1.3;text-align:center}.book-page{background:var(--gray-100);border-radius:20px;padding:3rem}.markdown pre{background-color:var(--body-background)}.markdown h1{font-size:3em}.book-categories-tag{padding-right:1em}.book-tags-tag{padding-right:1em}.markdown .book-by-line{margin-top:0;margin-bottom:.2em}img{margin:1em auto;display:block} \ No newline at end of file
diff --git a/categories/index.html b/categories/index.html
index abcdece..0a84d66 100644
--- a/categories/index.html
+++ b/categories/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Categories"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/categories/"><title>Categories | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/categories/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Categories"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/categories/"><title>Categories | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/categories/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Categories</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></header><footer class=book-footer><div class="flex flex-wrap justify-between"></div></footer><label for=menu-control class="hidden book-menu-overlay"></label></div><aside class=book-toc><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></main></body></html> \ No newline at end of file
diff --git a/docs/building/index.html b/docs/building/index.html
index b8fb391..cd26e32 100644
--- a/docs/building/index.html
+++ b/docs/building/index.html
@@ -2,7 +2,7 @@
The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following:
Coq: theorem prover that is used to also program the HLS tool."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Building Vericert"><meta property="og:description" content="To build Vericert, the provided Makefile can be used. External dependencies are needed to build the project, which can be pulled in automatically with nix using the provided default.nix and shell.nix files.
The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following:
- Coq: theorem prover that is used to also program the HLS tool."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/building/"><title>Building Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+ Coq: theorem prover that is used to also program the HLS tool."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/building/"><title>Building Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/ class=active>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Building Vericert</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents><ul><li><ul><li><a href=#downloading-compcert>Downloading CompCert</a></li><li><a href=#setting-up-nix>Setting up Nix</a></li><li><a href=#makefile-build>Makefile build</a></li><li><a href=#testing>Testing</a></li></ul></li></ul></nav></aside></header><article class=markdown><h1><a href=/docs/building/>Building Vericert</a></h1><p><p>To build Vericert, the provided Makefile can be used. External dependencies are needed to build the
diff --git a/docs/coq-style-guide/index.html b/docs/coq-style-guide/index.html
index 001df50..429b45c 100644
--- a/docs/coq-style-guide/index.html
+++ b/docs/coq-style-guide/index.html
@@ -1,6 +1,6 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="This style guide was taken from Silveroak, it outlines code style for Coq code in this repository. There are certainly other valid strategies and opinions on Coq code style; this is laid out purely in the name of consistency. For a visual example of the style, see the example at the bottom of this file.
Code organization # Legal banner # Files should begin with a copyright/license banner, as shown in the example above."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Coq Style Guide"><meta property="og:description" content="This style guide was taken from Silveroak, it outlines code style for Coq code in this repository. There are certainly other valid strategies and opinions on Coq code style; this is laid out purely in the name of consistency. For a visual example of the style, see the example at the bottom of this file.
-Code organization # Legal banner # Files should begin with a copyright/license banner, as shown in the example above."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/coq-style-guide/"><title>Coq Style Guide | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+Code organization # Legal banner # Files should begin with a copyright/license banner, as shown in the example above."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/coq-style-guide/"><title>Coq Style Guide | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/ class=active>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Coq Style Guide</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents><ul><li><ul><li><a href=#code-organization>Code organization</a><ul><li><a href=#legal-banner>Legal banner</a></li><li><a href=#import-statements>Import statements</a></li><li><a href=#notations-and-scopes>Notations and scopes</a></li></ul></li><li><a href=#formatting>Formatting</a><ul><li><a href=#line-length>Line length</a></li><li><a href=#whitespace-and-indentation>Whitespace and indentation</a></li></ul></li><li><a href=#definitions-and-fixpoints>Definitions and Fixpoints</a></li><li><a href=#inductives>Inductives</a></li><li><a href=#lemmatheorem-statements>Lemma/Theorem statements</a></li><li><a href=#proofs-and-tactics>Proofs and tactics</a></li><li><a href=#naming>Naming</a></li><li><a href=#example>Example</a></li></ul></li></ul></nav></aside></header><article class=markdown><h1><a href=/docs/coq-style-guide/>Coq Style Guide</a></h1><p><p>This style guide was taken from <a href=https://github.com/project-oak/silveroak>Silveroak</a>, it outlines code style for Coq code in this
diff --git a/docs/index.html b/docs/index.html
index 9a75c28..dd0409f 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -1,10 +1,10 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="Vericert translates C code into a hardware description language called Verilog, which can then be synthesised into hardware, to be placed onto a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC).
Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.
- The design shown in Figure 1 shows how Vericert leverages an existing verified C compiler called CompCert to perform this translation."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Docs"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/docs/"><title>Docs | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/docs/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+ The design shown in Figure 1 shows how Vericert leverages an existing verified C compiler called CompCert to perform this translation."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Docs"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/docs/"><title>Docs | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/docs/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/ class=active>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Docs</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents></nav></aside></header><article class=markdown><p>Vericert translates C code into a hardware description language called Verilog, which can then be
synthesised into hardware, to be placed onto a field-programmable gate array (FPGA) or
-application-specific integrated circuit (ASIC).</p><p><a id=org5324222></a></p><figure><img src=/images/design.jpg alt="Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language." width=600><figcaption><p>Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.</p></figcaption></figure><p>The design shown in Figure <a href=#org5324222>1</a> shows how Vericert leverages an existing verified C compiler
+application-specific integrated circuit (ASIC).</p><p><a id=org86e4775></a></p><figure><img src=/images/toolflow.svg alt="Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language." width=600><figcaption><p>Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.</p></figcaption></figure><p>The design shown in Figure <a href=#org86e4775>1</a> shows how Vericert leverages an existing verified C compiler
called <a href=https://compcert.org/compcert-C.html>CompCert</a> to perform this translation.</p></article><footer class=book-footer><div class="flex flex-wrap justify-between"></div></footer><div class=book-comments></div><label for=menu-control class="hidden book-menu-overlay"></label></div><aside class=book-toc><nav id=TableOfContents></nav></aside></main></body></html> \ No newline at end of file
diff --git a/docs/unreleased/index.html b/docs/unreleased/index.html
index 6e0b068..71db939 100644
--- a/docs/unreleased/index.html
+++ b/docs/unreleased/index.html
@@ -1,6 +1,6 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="The following are unreleased features in Vericert that are currently being worked on and have not been completely proven correct yet. Currently this includes features such as:
scheduling, operation chaining, if-conversion, and functions. This page gives some preliminary information on how the features are implemented and how the proofs for the features are being done. Once these features are properly implemented, they will be added to the proper documentation."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Unreleased Features"><meta property="og:description" content="The following are unreleased features in Vericert that are currently being worked on and have not been completely proven correct yet. Currently this includes features such as:
- scheduling, operation chaining, if-conversion, and functions. This page gives some preliminary information on how the features are implemented and how the proofs for the features are being done. Once these features are properly implemented, they will be added to the proper documentation."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/unreleased/"><title>Unreleased Features | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+ scheduling, operation chaining, if-conversion, and functions. This page gives some preliminary information on how the features are implemented and how the proofs for the features are being done. Once these features are properly implemented, they will be added to the proper documentation."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/unreleased/"><title>Unreleased Features | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/ class=active>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Unreleased Features</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents><ul><li><ul><li><a href=#scheduling>Scheduling</a></li><li><a href=#operation-chaining>Operation Chaining</a></li><li><a href=#if-conversion>If-conversion</a></li><li><a href=#functions>Functions</a></li></ul></li></ul></nav></aside></header><article class=markdown><h1><a href=/docs/unreleased/>Unreleased Features</a></h1><p><p>The following are unreleased features in Vericert that are currently being worked on and have not
diff --git a/docs/using-vericert/index.html b/docs/using-vericert/index.html
index 137cf67..c752c7f 100644
--- a/docs/using-vericert/index.html
+++ b/docs/using-vericert/index.html
@@ -1,6 +1,6 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="Vericert can be used to translate a subset of C into Verilog. As a simple example, consider the following C file (main.c):
void matrix_multiply(int first[2][2], int second[2][2], int multiply[2][2]) { int sum = 0; for (int c = 0; c < 2; c++) { for (int d = 0; d < 2; d++) { for (int k = 0; k < 2; k++) { sum = sum + first[c][k]*second[k][d]; } multiply[c][d] = sum; sum = 0; } } } int main() { int f[2][2] = {{1, 2}, {3, 4}}; int s[2][2] = {{5, 6}, {7, 8}}; int m[2][2] = {{0, 0}, {0, 0}}; matrix_multiply(f, s, m); return m[1][1]; } It can be compiled using the following command, assuming that vericert is somewhere on the path."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Using Vericert"><meta property="og:description" content="Vericert can be used to translate a subset of C into Verilog. As a simple example, consider the following C file (main.c):
-void matrix_multiply(int first[2][2], int second[2][2], int multiply[2][2]) { int sum = 0; for (int c = 0; c < 2; c++) { for (int d = 0; d < 2; d++) { for (int k = 0; k < 2; k++) { sum = sum + first[c][k]*second[k][d]; } multiply[c][d] = sum; sum = 0; } } } int main() { int f[2][2] = {{1, 2}, {3, 4}}; int s[2][2] = {{5, 6}, {7, 8}}; int m[2][2] = {{0, 0}, {0, 0}}; matrix_multiply(f, s, m); return m[1][1]; } It can be compiled using the following command, assuming that vericert is somewhere on the path."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/using-vericert/"><title>Using Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+void matrix_multiply(int first[2][2], int second[2][2], int multiply[2][2]) { int sum = 0; for (int c = 0; c < 2; c++) { for (int d = 0; d < 2; d++) { for (int k = 0; k < 2; k++) { sum = sum + first[c][k]*second[k][d]; } multiply[c][d] = sum; sum = 0; } } } int main() { int f[2][2] = {{1, 2}, {3, 4}}; int s[2][2] = {{5, 6}, {7, 8}}; int m[2][2] = {{0, 0}, {0, 0}}; matrix_multiply(f, s, m); return m[1][1]; } It can be compiled using the following command, assuming that vericert is somewhere on the path."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/docs/using-vericert/"><title>Using Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/ class=active>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Using Vericert</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents></nav></aside></header><article class=markdown><h1><a href=/docs/using-vericert/>Using Vericert</a></h1><p><p>Vericert can be used to translate a subset of C into Verilog. As a simple example, consider the
diff --git a/future/index.html b/future/index.html
index 06622e1..f6a0c20 100644
--- a/future/index.html
+++ b/future/index.html
@@ -2,7 +2,7 @@
The next interesting optimisations that should be looked at are the following:
globals, type support, memory partitioning, and loop pipelining. Globals # Globals are an important feature to add, as have to be handled carefully in HLS, because they have to be placed into memory, and are often used in HLS designs."><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Future Work"><meta property="og:description" content="This section contains future work that should be added to Vericert to make it into a better high-level synthesis tool.
The next interesting optimisations that should be looked at are the following:
- globals, type support, memory partitioning, and loop pipelining. Globals # Globals are an important feature to add, as have to be handled carefully in HLS, because they have to be placed into memory, and are often used in HLS designs."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/future/"><title>Future Work | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+ globals, type support, memory partitioning, and loop pipelining. Globals # Globals are an important feature to add, as have to be handled carefully in HLS, because they have to be placed into memory, and are often used in HLS designs."><meta property="og:type" content="article"><meta property="og:url" content="https://vericert.ymhg.org/future/"><title>Future Work | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/ class=active>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Future Work</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents><ul><li><ul><li><a href=#globals>Globals</a></li><li><a href=#type-support>Type Support</a></li><li><a href=#memory-partitioning>Memory Partitioning</a></li><li><a href=#loop-pipelining>Loop pipelining</a></li></ul></li></ul></nav></aside></header><article class=markdown><h1><a href=/future/>Future Work</a></h1><p><p>This section contains future work that should be added to Vericert to make it into a better
diff --git a/images/design.jpg b/images/design.jpg
deleted file mode 100644
index d254e1a..0000000
--- a/images/design.jpg
+++ /dev/null
Binary files differ
diff --git a/images/toolflow.svg b/images/toolflow.svg
new file mode 100644
index 0000000..0d8f39f
--- /dev/null
+++ b/images/toolflow.svg
@@ -0,0 +1,1250 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ width="308.97266pt"
+ height="124.71875pt"
+ viewBox="0 0 308.97267 124.71875"
+ version="1.2"
+ id="svg466"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs183">
+ <g
+ id="g172">
+ <symbol
+ overflow="visible"
+ id="glyph0-0">
+ <path
+ style="stroke:none"
+ d=""
+ id="path25" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-1">
+ <path
+ style="stroke:none"
+ d="M 6.625,-2.328125 C 6.625,-2.421875 6.625,-2.5 6.5,-2.5 6.390625,-2.5 6.390625,-2.4375 6.375,-2.328125 6.296875,-0.90625 5.234375,-0.09375 4.140625,-0.09375 c -0.609375,0 -2.5625,-0.328125 -2.5625,-3.3125 0,-2.96875 1.953125,-3.3125 2.5625,-3.3125 1.078125,0 1.96875,0.90625 2.171875,2.359375 C 6.328125,-4.21875 6.328125,-4.1875 6.46875,-4.1875 6.625,-4.1875 6.625,-4.21875 6.625,-4.421875 V -6.78125 c 0,-0.171875 0,-0.25 -0.109375,-0.25 -0.03125,0 -0.078125,0 -0.15625,0.125 l -0.5,0.734375 C 5.5,-6.53125 4.984375,-7.03125 4.03125,-7.03125 c -1.875,0 -3.46875,1.59375 -3.46875,3.625 0,2.0625 1.609375,3.625 3.46875,3.625 1.625,0 2.59375,-1.390625 2.59375,-2.546875 z m 0,0"
+ id="path28" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-2">
+ <path
+ style="stroke:none"
+ d="m 2.546875,0 v -0.3125 c -0.671875,0 -0.78125,0 -0.78125,-0.4375 V -6.921875 L 0.328125,-6.8125 V -6.5 c 0.703125,0 0.78125,0.0625 0.78125,0.5625 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 L 1.4375,-0.03125 Z m 0,0"
+ id="path31" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-3">
+ <path
+ style="stroke:none"
+ d="m 2.46875,0 v -0.3125 c -0.671875,0 -0.703125,-0.046875 -0.703125,-0.4375 V -4.40625 L 0.375,-4.296875 v 0.3125 c 0.640625,0 0.734375,0.0625 0.734375,0.546875 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 l 1.09375,-0.03125 C 1.78125,-0.03125 2.125,-0.015625 2.46875,0 Z m -0.5625,-6.015625 c 0,-0.28125 -0.21875,-0.53125 -0.515625,-0.53125 -0.34375,0 -0.546875,0.28125 -0.546875,0.53125 C 0.84375,-5.75 1.078125,-5.5 1.375,-5.5 c 0.34375,0 0.53125,-0.265625 0.53125,-0.515625 z m 0,0"
+ id="path34" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-4">
+ <path
+ style="stroke:none"
+ d="m 4.828125,-4.03125 c 0,-0.171875 -0.109375,-0.484375 -0.5,-0.484375 -0.203125,0 -0.640625,0.0625 -1.0625,0.46875 C 2.84375,-4.375 2.4375,-4.40625 2.21875,-4.40625 c -0.9375,0 -1.625,0.6875 -1.625,1.453125 0,0.4375 0.21875,0.8125 0.46875,1.03125 -0.125,0.140625 -0.3125,0.46875 -0.3125,0.828125 0,0.3125 0.140625,0.6875 0.453125,0.890625 -0.609375,0.15625 -0.921875,0.59375 -0.921875,0.984375 0,0.71875 0.984375,1.265625 2.203125,1.265625 1.171875,0 2.203125,-0.5 2.203125,-1.28125 0,-0.34375 -0.125,-0.859375 -0.640625,-1.140625 -0.53125,-0.265625 -1.109375,-0.265625 -1.71875,-0.265625 -0.25,0 -0.671875,0 -0.75,-0.015625 C 1.265625,-0.703125 1.0625,-1 1.0625,-1.328125 c 0,-0.03125 0,-0.265625 0.15625,-0.46875 0.390625,0.28125 0.8125,0.3125 1,0.3125 0.921875,0 1.609375,-0.6875 1.609375,-1.453125 0,-0.375 -0.15625,-0.734375 -0.40625,-0.96875 C 3.78125,-4.25 4.140625,-4.296875 4.3125,-4.296875 c 0,0 0.078125,0 0.109375,0.015625 C 4.3125,-4.25 4.25,-4.140625 4.25,-4.015625 c 0,0.171875 0.140625,0.28125 0.296875,0.28125 0.09375,0 0.28125,-0.0625 0.28125,-0.296875 z m -1.75,1.078125 c 0,0.265625 0,0.59375 -0.15625,0.84375 C 2.84375,-2 2.609375,-1.71875 2.21875,-1.71875 c -0.875,0 -0.875,-1 -0.875,-1.21875 0,-0.265625 0.015625,-0.59375 0.15625,-0.84375 0.078125,-0.109375 0.3125,-0.390625 0.71875,-0.390625 0.859375,0 0.859375,0.984375 0.859375,1.21875 z m 1.09375,3.734375 c 0,0.546875 -0.703125,1.046875 -1.671875,1.046875 -1.015625,0 -1.703125,-0.515625 -1.703125,-1.046875 0,-0.453125 0.375,-0.828125 0.8125,-0.84375 h 0.59375 c 0.859375,0 1.96875,0 1.96875,0.84375 z m 0,0"
+ id="path37" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-5">
+ <path
+ style="stroke:none"
+ d="m 5.328125,0 v -0.3125 c -0.515625,0 -0.765625,0 -0.765625,-0.296875 v -1.90625 c 0,-0.859375 0,-1.15625 -0.3125,-1.515625 -0.140625,-0.171875 -0.46875,-0.375 -1.046875,-0.375 -0.84375,0 -1.28125,0.59375 -1.4375,0.953125 H 1.75 v -3.46875 L 0.3125,-6.8125 V -6.5 c 0.703125,0 0.78125,0.0625 0.78125,0.5625 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 L 1.453125,-0.03125 2.5625,0 v -0.3125 c -0.671875,0 -0.78125,0 -0.78125,-0.4375 V -2.59375 C 1.78125,-3.625 2.5,-4.1875 3.125,-4.1875 c 0.640625,0 0.75,0.53125 0.75,1.109375 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 l 1.125,-0.03125 z m 0,0"
+ id="path40" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-6">
+ <path
+ style="stroke:none"
+ d="m 3.3125,-1.234375 v -0.5625 h -0.25 V -1.25 c 0,0.734375 -0.296875,1.109375 -0.671875,1.109375 -0.671875,0 -0.671875,-0.90625 -0.671875,-1.078125 v -2.765625 h 1.4375 v -0.3125 H 1.71875 V -6.125 h -0.25 c 0,0.8125 -0.296875,1.875 -1.28125,1.921875 v 0.21875 h 0.84375 v 2.75 c 0,1.21875 0.9375,1.34375 1.296875,1.34375 0.703125,0 0.984375,-0.703125 0.984375,-1.34375 z m 0,0"
+ id="path43" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-7">
+ <path
+ style="stroke:none"
+ d="m 8.109375,0 v -0.3125 c -0.515625,0 -0.765625,0 -0.78125,-0.296875 v -1.90625 c 0,-0.859375 0,-1.15625 -0.3125,-1.515625 -0.140625,-0.171875 -0.46875,-0.375 -1.046875,-0.375 -0.828125,0 -1.28125,0.59375 -1.4375,0.984375 C 4.390625,-4.296875 3.65625,-4.40625 3.203125,-4.40625 2.46875,-4.40625 2,-3.984375 1.71875,-3.359375 V -4.40625 L 0.3125,-4.296875 v 0.3125 c 0.703125,0 0.78125,0.0625 0.78125,0.5625 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 L 1.453125,-0.03125 2.5625,0 v -0.3125 c -0.671875,0 -0.78125,0 -0.78125,-0.4375 V -2.59375 C 1.78125,-3.625 2.5,-4.1875 3.125,-4.1875 c 0.640625,0 0.75,0.53125 0.75,1.109375 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 L 4.21875,-0.03125 5.328125,0 v -0.3125 c -0.65625,0 -0.765625,0 -0.765625,-0.4375 v -1.84375 c 0,-1.03125 0.703125,-1.59375 1.34375,-1.59375 0.625,0 0.734375,0.53125 0.734375,1.109375 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 l 1.125,-0.03125 z m 0,0"
+ id="path46" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-8">
+ <path
+ style="stroke:none"
+ d="m 5.328125,0 v -0.3125 c -0.515625,0 -0.765625,0 -0.765625,-0.296875 v -1.90625 c 0,-0.859375 0,-1.15625 -0.3125,-1.515625 -0.140625,-0.171875 -0.46875,-0.375 -1.046875,-0.375 C 2.46875,-4.40625 2,-3.984375 1.71875,-3.359375 V -4.40625 L 0.3125,-4.296875 v 0.3125 c 0.703125,0 0.78125,0.0625 0.78125,0.5625 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 L 1.453125,-0.03125 2.5625,0 v -0.3125 c -0.671875,0 -0.78125,0 -0.78125,-0.4375 V -2.59375 C 1.78125,-3.625 2.5,-4.1875 3.125,-4.1875 c 0.640625,0 0.75,0.53125 0.75,1.109375 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 l 1.125,-0.03125 z m 0,0"
+ id="path49" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-9">
+ <path
+ style="stroke:none"
+ d="M 4.6875,-2.140625 C 4.6875,-3.40625 3.703125,-4.46875 2.5,-4.46875 c -1.25,0 -2.21875,1.09375 -2.21875,2.328125 0,1.296875 1.03125,2.25 2.203125,2.25 1.203125,0 2.203125,-0.984375 2.203125,-2.25 z M 3.875,-2.21875 c 0,0.359375 0,0.90625 -0.21875,1.34375 -0.234375,0.453125 -0.671875,0.734375 -1.15625,0.734375 -0.4375,0 -0.875,-0.203125 -1.140625,-0.671875 -0.25,-0.4375 -0.25,-1.046875 -0.25,-1.40625 0,-0.390625 0,-0.921875 0.234375,-1.359375 C 1.609375,-4.03125 2.078125,-4.25 2.484375,-4.25 c 0.4375,0 0.859375,0.21875 1.125,0.65625 0.265625,0.421875 0.265625,1 0.265625,1.375 z m 0,0"
+ id="path52" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-10">
+ <path
+ style="stroke:none"
+ d="m 3.625,-3.796875 c 0,-0.3125 -0.3125,-0.609375 -0.734375,-0.609375 -0.734375,0 -1.09375,0.671875 -1.21875,1.09375 V -4.40625 L 0.28125,-4.296875 v 0.3125 c 0.703125,0 0.78125,0.0625 0.78125,0.5625 V -0.75 c 0,0.4375 -0.109375,0.4375 -0.78125,0.4375 V 0 l 1.140625,-0.03125 c 0.390625,0 0.859375,0 1.265625,0.03125 V -0.3125 H 2.46875 c -0.734375,0 -0.75,-0.109375 -0.75,-0.46875 V -2.3125 c 0,-0.984375 0.421875,-1.875 1.171875,-1.875 0.0625,0 0.09375,0 0.109375,0.015625 -0.03125,0 -0.234375,0.125 -0.234375,0.390625 0,0.265625 0.21875,0.421875 0.4375,0.421875 0.171875,0 0.421875,-0.125 0.421875,-0.4375 z m 0,0"
+ id="path55" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-11">
+ <path
+ style="stroke:none"
+ d="m 4.96875,-1.859375 c 0,-0.984375 -0.65625,-1.8125 -1.484375,-2.015625 l -1.28125,-0.296875 c -0.625,-0.15625 -1,-0.6875 -1,-1.265625 0,-0.703125 0.53125,-1.3125 1.3125,-1.3125 1.65625,0 1.875,1.640625 1.9375,2.078125 0.015625,0.0625 0.015625,0.125 0.125,0.125 0.125,0 0.125,-0.046875 0.125,-0.234375 v -2 c 0,-0.171875 0,-0.25 -0.109375,-0.25 -0.0625,0 -0.078125,0.015625 -0.140625,0.140625 l -0.359375,0.5625 C 3.796875,-6.625 3.390625,-7.03125 2.5,-7.03125 c -1.109375,0 -1.9375,0.875 -1.9375,1.9375 0,0.828125 0.53125,1.5625 1.296875,1.828125 0.109375,0.03125 0.625,0.15625 1.328125,0.328125 0.265625,0.0625 0.5625,0.140625 0.84375,0.5 0.203125,0.265625 0.3125,0.59375 0.3125,0.921875 0,0.703125 -0.5,1.421875 -1.34375,1.421875 -0.28125,0 -1.046875,-0.046875 -1.578125,-0.53125 C 0.84375,-1.171875 0.8125,-1.796875 0.8125,-2.15625 0.796875,-2.265625 0.71875,-2.265625 0.6875,-2.265625 c -0.125,0 -0.125,0.078125 -0.125,0.25 v 2 c 0,0.171875 0,0.234375 0.109375,0.234375 0.0625,0 0.078125,-0.015625 0.140625,-0.125 0,0 0.03125,-0.046875 0.359375,-0.578125 0.3125,0.34375 0.953125,0.703125 1.84375,0.703125 1.15625,0 1.953125,-0.96875 1.953125,-2.078125 z m 0,0"
+ id="path58" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-12">
+ <path
+ style="stroke:none"
+ d="m 4.140625,-1.1875 c 0,-0.09375 -0.078125,-0.125 -0.140625,-0.125 -0.078125,0 -0.109375,0.0625 -0.125,0.140625 -0.34375,1.03125 -1.25,1.03125 -1.34375,1.03125 -0.5,0 -0.890625,-0.296875 -1.125,-0.671875 -0.296875,-0.46875 -0.296875,-1.125 -0.296875,-1.484375 h 2.78125 c 0.21875,0 0.25,0 0.25,-0.21875 0,-0.984375 -0.546875,-1.953125 -1.78125,-1.953125 -1.15625,0 -2.078125,1.03125 -2.078125,2.28125 0,1.328125 1.046875,2.296875 2.1875,2.296875 C 3.6875,0.109375 4.140625,-1 4.140625,-1.1875 Z m -0.65625,-1.328125 h -2.375 C 1.171875,-4 2.015625,-4.25 2.359375,-4.25 c 1.015625,0 1.125,1.34375 1.125,1.734375 z m 0,0"
+ id="path61" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-13">
+ <path
+ style="stroke:none"
+ d="m 4.5625,-1.703125 c 0,-0.8125 -0.640625,-1.59375 -1.671875,-1.8125 0.8125,-0.265625 1.390625,-0.953125 1.390625,-1.75 0,-0.8125 -0.875,-1.375 -1.828125,-1.375 -1,0 -1.765625,0.59375 -1.765625,1.359375 0,0.328125 0.21875,0.515625 0.515625,0.515625 0.296875,0 0.5,-0.21875 0.5,-0.515625 0,-0.484375 -0.46875,-0.484375 -0.609375,-0.484375 0.296875,-0.5 0.953125,-0.625 1.3125,-0.625 0.421875,0 0.96875,0.21875 0.96875,1.109375 0,0.125 -0.03125,0.703125 -0.28125,1.140625 C 2.796875,-3.65625 2.453125,-3.625 2.203125,-3.625 2.125,-3.609375 1.890625,-3.59375 1.8125,-3.59375 c -0.078125,0.015625 -0.140625,0.03125 -0.140625,0.125 0,0.109375 0.0625,0.109375 0.234375,0.109375 h 0.4375 c 0.8125,0 1.1875,0.671875 1.1875,1.65625 0,1.359375 -0.6875,1.640625 -1.125,1.640625 -0.4375,0 -1.1875,-0.171875 -1.53125,-0.75 0.34375,0.046875 0.65625,-0.171875 0.65625,-0.546875 0,-0.359375 -0.265625,-0.5625 -0.546875,-0.5625 -0.25,0 -0.5625,0.140625 -0.5625,0.578125 0,0.90625 0.921875,1.5625 2.015625,1.5625 1.21875,0 2.125,-0.90625 2.125,-1.921875 z m 0,0"
+ id="path64" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-14">
+ <path
+ style="stroke:none"
+ d="M 7.140625,0 V -0.3125 H 6.96875 C 6.375,-0.3125 6.234375,-0.375 6.125,-0.703125 L 3.96875,-6.9375 c -0.046875,-0.125 -0.078125,-0.203125 -0.234375,-0.203125 -0.15625,0 -0.1875,0.0625 -0.234375,0.203125 L 1.4375,-0.984375 C 1.25,-0.46875 0.859375,-0.3125 0.3125,-0.3125 V 0 L 1.328125,-0.03125 2.484375,0 v -0.3125 c -0.5,0 -0.75,-0.25 -0.75,-0.5 0,-0.03125 0.015625,-0.140625 0.015625,-0.15625 L 2.21875,-2.265625 H 4.671875 L 5.203125,-0.75 c 0.015625,0.046875 0.03125,0.109375 0.03125,0.140625 0,0.296875 -0.5625,0.296875 -0.828125,0.296875 V 0 c 0.359375,-0.03125 1.0625,-0.03125 1.4375,-0.03125 z M 4.5625,-2.578125 H 2.328125 l 1.109375,-3.25 z m 0,0"
+ id="path67" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-15">
+ <path
+ style="stroke:none"
+ d="m 5.796875,-2.578125 h -0.25 c -0.109375,1.015625 -0.25,2.265625 -2,2.265625 h -0.8125 C 2.265625,-0.3125 2.25,-0.375 2.25,-0.703125 v -5.3125 C 2.25,-6.359375 2.25,-6.5 3.1875,-6.5 H 3.515625 V -6.8125 C 3.15625,-6.78125 2.25,-6.78125 1.84375,-6.78125 c -0.390625,0 -1.171875,0 -1.515625,-0.03125 V -6.5 H 0.5625 c 0.765625,0 0.796875,0.109375 0.796875,0.46875 v 5.25 c 0,0.359375 -0.03125,0.46875 -0.796875,0.46875 H 0.328125 V 0 h 5.1875 z m 0,0"
+ id="path70" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-16">
+ <path
+ style="stroke:none"
+ d="m 6.828125,-4.5 -0.1875,-2.25 h -6.09375 l -0.1875,2.25 h 0.25 C 0.75,-6.109375 0.890625,-6.4375 2.40625,-6.4375 c 0.171875,0 0.4375,0 0.53125,0.015625 0.21875,0.046875 0.21875,0.15625 0.21875,0.375 v 5.265625 c 0,0.328125 0,0.46875 -1.046875,0.46875 H 1.703125 V 0 C 2.109375,-0.03125 3.125,-0.03125 3.59375,-0.03125 c 0.453125,0 1.484375,0 1.890625,0.03125 v -0.3125 h -0.40625 c -1.046875,0 -1.046875,-0.140625 -1.046875,-0.46875 v -5.265625 c 0,-0.1875 0,-0.328125 0.1875,-0.375 0.109375,-0.015625 0.375,-0.015625 0.5625,-0.015625 1.515625,0 1.65625,0.328125 1.796875,1.9375 z m 0,0"
+ id="path73" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-17">
+ <path
+ style="stroke:none"
+ d="m 4.8125,-0.890625 v -0.5625 h -0.25 v 0.5625 C 4.5625,-0.3125 4.3125,-0.25 4.203125,-0.25 3.875,-0.25 3.84375,-0.703125 3.84375,-0.75 v -1.984375 c 0,-0.421875 0,-0.8125 -0.359375,-1.1875 C 3.09375,-4.3125 2.59375,-4.46875 2.109375,-4.46875 c -0.8125,0 -1.5,0.46875 -1.5,1.125 0,0.296875 0.203125,0.46875 0.453125,0.46875 0.28125,0 0.46875,-0.203125 0.46875,-0.453125 0,-0.125 -0.0625,-0.453125 -0.515625,-0.453125 C 1.28125,-4.140625 1.78125,-4.25 2.09375,-4.25 c 0.484375,0 1.0625,0.390625 1.0625,1.28125 v 0.359375 C 2.640625,-2.578125 1.9375,-2.546875 1.3125,-2.25 c -0.75,0.34375 -1,0.859375 -1,1.296875 0,0.8125 0.96875,1.0625 1.59375,1.0625 0.671875,0 1.125,-0.40625 1.3125,-0.859375 0.046875,0.390625 0.3125,0.8125 0.78125,0.8125 0.203125,0 0.8125,-0.140625 0.8125,-0.953125 z m -1.65625,-0.5 c 0,0.9375 -0.71875,1.28125 -1.171875,1.28125 -0.484375,0 -0.890625,-0.34375 -0.890625,-0.84375 0,-0.546875 0.40625,-1.375 2.0625,-1.4375 z m 0,0"
+ id="path76" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-18">
+ <path
+ style="stroke:none"
+ d="M 4.140625,-1.1875 C 4.140625,-1.28125 4.03125,-1.28125 4,-1.28125 c -0.078125,0 -0.109375,0.03125 -0.125,0.09375 -0.28125,0.921875 -0.9375,1.046875 -1.296875,1.046875 -0.53125,0 -1.40625,-0.421875 -1.40625,-2.03125 0,-1.625 0.8125,-2.046875 1.34375,-2.046875 0.09375,0 0.71875,0.015625 1.0625,0.375 -0.40625,0.03125 -0.46875,0.328125 -0.46875,0.453125 0,0.265625 0.1875,0.453125 0.453125,0.453125 0.265625,0 0.46875,-0.15625 0.46875,-0.46875 0,-0.671875 -0.765625,-1.0625 -1.53125,-1.0625 -1.25,0 -2.15625,1.078125 -2.15625,2.3125 0,1.28125 0.984375,2.265625 2.140625,2.265625 1.328125,0 1.65625,-1.203125 1.65625,-1.296875 z m 0,0"
+ id="path79" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-19">
+ <path
+ style="stroke:none"
+ d="m 4.5625,-2.03125 c 0,-1.265625 -0.890625,-2.21875 -2,-2.21875 -0.671875,0 -1.046875,0.5 -1.25,0.984375 v -0.25 c 0,-2.515625 1.234375,-2.875 1.75,-2.875 0.234375,0 0.65625,0.0625 0.875,0.40625 -0.15625,0 -0.546875,0 -0.546875,0.4375 0,0.3125 0.234375,0.46875 0.453125,0.46875 0.15625,0 0.46875,-0.09375 0.46875,-0.484375 0,-0.59375 -0.4375,-1.078125 -1.265625,-1.078125 -1.28125,0 -2.625,1.28125 -2.625,3.484375 0,2.671875 1.15625,3.375 2.078125,3.375 1.109375,0 2.0625,-0.9375 2.0625,-2.25 z M 3.65625,-2.046875 c 0,0.484375 0,0.984375 -0.171875,1.34375 C 3.1875,-0.109375 2.734375,-0.0625 2.5,-0.0625 c -0.625,0 -0.921875,-0.59375 -0.984375,-0.75 -0.1875,-0.46875 -0.1875,-1.265625 -0.1875,-1.4375 0,-0.78125 0.328125,-1.78125 1.21875,-1.78125 0.171875,0 0.625,0 0.9375,0.625 0.171875,0.359375 0.171875,0.875 0.171875,1.359375 z m 0,0"
+ id="path82" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-20">
+ <path
+ style="stroke:none"
+ d="m 4.6875,-1.640625 v -0.3125 H 3.703125 v -4.53125 c 0,-0.203125 0,-0.265625 -0.171875,-0.265625 -0.078125,0 -0.109375,0 -0.1875,0.125 l -3.0625,4.671875 v 0.3125 H 2.9375 v 0.859375 c 0,0.359375 -0.03125,0.46875 -0.765625,0.46875 H 1.96875 V 0 C 2.375,-0.03125 2.890625,-0.03125 3.3125,-0.03125 c 0.421875,0 0.9375,0 1.359375,0.03125 v -0.3125 h -0.21875 c -0.734375,0 -0.75,-0.109375 -0.75,-0.46875 v -0.859375 z m -1.703125,-0.3125 H 0.5625 l 2.421875,-3.71875 z m 0,0"
+ id="path85" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-21">
+ <path
+ style="stroke:none"
+ d="m 5.140625,0 v -0.3125 c -0.53125,0 -0.71875,-0.015625 -0.9375,-0.3125 L 2.859375,-2.34375 C 3.15625,-2.71875 3.53125,-3.203125 3.78125,-3.46875 4.09375,-3.828125 4.5,-3.984375 4.96875,-3.984375 v -0.3125 c -0.265625,0.015625 -0.5625,0.03125 -0.828125,0.03125 -0.296875,0 -0.828125,-0.015625 -0.953125,-0.03125 v 0.3125 c 0.21875,0.015625 0.296875,0.140625 0.296875,0.3125 0,0.15625 -0.109375,0.28125 -0.15625,0.34375 L 2.71875,-2.546875 1.9375,-3.5625 C 1.84375,-3.65625 1.84375,-3.671875 1.84375,-3.734375 c 0,-0.15625 0.15625,-0.25 0.34375,-0.25 v -0.3125 l -1.078125,0.03125 c -0.203125,0 -0.671875,-0.015625 -0.9375,-0.03125 v 0.3125 c 0.703125,0 0.703125,0 1.171875,0.609375 l 0.984375,1.28125 c -0.46875,0.59375 -0.46875,0.625 -0.9375,1.1875 C 0.921875,-0.328125 0.328125,-0.3125 0.125,-0.3125 V 0 c 0.25,-0.015625 0.5625,-0.03125 0.828125,-0.03125 L 1.890625,0 v -0.3125 c -0.21875,-0.03125 -0.28125,-0.15625 -0.28125,-0.3125 0,-0.21875 0.28125,-0.546875 0.890625,-1.265625 l 0.765625,1 C 3.34375,-0.78125 3.46875,-0.625 3.46875,-0.5625 c 0,0.09375 -0.09375,0.25 -0.359375,0.25 V 0 L 4.1875,-0.03125 c 0.265625,0 0.65625,0.015625 0.953125,0.03125 z m 0,0"
+ id="path88" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-22">
+ <path
+ style="stroke:none"
+ d="m 4.5625,-1.671875 c 0,-0.359375 -0.109375,-0.8125 -0.5,-1.234375 C 3.875,-3.109375 3.71875,-3.203125 3.078125,-3.609375 3.796875,-3.984375 4.28125,-4.5 4.28125,-5.15625 c 0,-0.921875 -0.875,-1.484375 -1.78125,-1.484375 -1,0 -1.8125,0.734375 -1.8125,1.671875 0,0.171875 0.015625,0.625 0.4375,1.09375 0.109375,0.109375 0.484375,0.359375 0.734375,0.53125 C 1.28125,-3.046875 0.421875,-2.5 0.421875,-1.5 c 0,1.046875 1.015625,1.71875 2.0625,1.71875 1.125,0 2.078125,-0.828125 2.078125,-1.890625 z M 3.84375,-5.15625 c 0,0.578125 -0.390625,1.046875 -0.984375,1.390625 L 1.625,-4.5625 c -0.453125,-0.296875 -0.5,-0.625 -0.5,-0.796875 0,-0.609375 0.65625,-1.03125 1.359375,-1.03125 0.71875,0 1.359375,0.515625 1.359375,1.234375 z M 4.0625,-1.3125 c 0,0.734375 -0.75,1.25 -1.5625,1.25 -0.859375,0 -1.578125,-0.609375 -1.578125,-1.4375 0,-0.578125 0.3125,-1.21875 1.15625,-1.6875 L 3.3125,-2.40625 c 0.28125,0.1875 0.75,0.484375 0.75,1.09375 z m 0,0"
+ id="path91" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-23">
+ <path
+ style="stroke:none"
+ d="m 7.140625,0 v -0.3125 h -0.25 c -0.765625,0 -0.78125,-0.109375 -0.78125,-0.46875 v -5.25 C 6.109375,-6.390625 6.125,-6.5 6.890625,-6.5 h 0.25 v -0.3125 c -0.359375,0.03125 -1.09375,0.03125 -1.46875,0.03125 -0.375,0 -1.125,0 -1.46875,-0.03125 V -6.5 H 4.4375 c 0.765625,0 0.78125,0.109375 0.78125,0.46875 v 2.328125 H 2.25 V -6.03125 C 2.25,-6.390625 2.265625,-6.5 3.03125,-6.5 h 0.234375 v -0.3125 c -0.34375,0.03125 -1.078125,0.03125 -1.46875,0.03125 -0.375,0 -1.125,0 -1.46875,-0.03125 V -6.5 H 0.5625 c 0.765625,0 0.796875,0.109375 0.796875,0.46875 v 5.25 c 0,0.359375 -0.03125,0.46875 -0.796875,0.46875 H 0.328125 V 0 c 0.34375,-0.03125 1.09375,-0.03125 1.46875,-0.03125 0.375,0 1.125,0 1.46875,0.03125 V -0.3125 H 3.03125 C 2.265625,-0.3125 2.25,-0.421875 2.25,-0.78125 v -2.609375 h 2.96875 v 2.609375 c 0,0.359375 -0.015625,0.46875 -0.78125,0.46875 H 4.203125 V 0 c 0.34375,-0.03125 1.078125,-0.03125 1.453125,-0.03125 0.390625,0 1.125,0 1.484375,0.03125 z m 0,0"
+ id="path94" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph0-24">
+ <path
+ style="stroke:none"
+ d="M 7.28125,-6.5 V -6.8125 C 6.96875,-6.78125 6.5625,-6.78125 6.3125,-6.78125 L 5.171875,-6.8125 V -6.5 C 5.6875,-6.484375 5.90625,-6.234375 5.90625,-6 c 0,0.078125 -0.03125,0.140625 -0.046875,0.203125 L 4.03125,-1 2.125,-6.03125 C 2.0625,-6.171875 2.0625,-6.203125 2.0625,-6.203125 2.0625,-6.5 2.625,-6.5 2.875,-6.5 V -6.8125 C 2.515625,-6.78125 1.828125,-6.78125 1.453125,-6.78125 L 0.1875,-6.8125 V -6.5 c 0.65625,0 0.84375,0 0.984375,0.375 L 3.484375,0 c 0.0625,0.1875 0.109375,0.21875 0.25,0.21875 0.15625,0 0.1875,-0.046875 0.234375,-0.1875 L 6.1875,-5.828125 C 6.328125,-6.203125 6.59375,-6.484375 7.28125,-6.5 Z m 0,0"
+ id="path97" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph1-0">
+ <path
+ style="stroke:none"
+ d=""
+ id="path100" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph1-1">
+ <path
+ style="stroke:none"
+ d="m 1.90625,-2.5 c 0,-0.28125 -0.234375,-0.515625 -0.515625,-0.515625 -0.296875,0 -0.53125,0.234375 -0.53125,0.515625 0,0.296875 0.234375,0.53125 0.53125,0.53125 0.28125,0 0.515625,-0.234375 0.515625,-0.53125 z m 0,0"
+ id="path103" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-0">
+ <path
+ style="stroke:none"
+ d=""
+ id="path106" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-1">
+ <path
+ style="stroke:none"
+ d="m 7.640625,-2.265625 c 0,-0.203125 -0.078125,-0.203125 -0.25,-0.203125 -0.125,0 -0.21875,0 -0.21875,0.171875 -0.078125,1.328125 -1.28125,1.9375 -2.28125,1.9375 -0.78125,0 -1.625,-0.234375 -2.140625,-0.84375 -0.46875,-0.578125 -0.59375,-1.3125 -0.59375,-2.21875 0,-0.5625 0.03125,-1.625 0.671875,-2.296875 0.640625,-0.65625 1.515625,-0.765625 2.03125,-0.765625 1.078125,0 2.015625,0.765625 2.234375,2.03125 C 7.125,-4.265625 7.140625,-4.25 7.359375,-4.25 c 0.265625,0 0.28125,-0.015625 0.28125,-0.28125 v -2.140625 c 0,-0.1875 0,-0.28125 -0.1875,-0.28125 -0.09375,0 -0.109375,0.03125 -0.1875,0.09375 l -0.65625,0.59375 c -0.625,-0.5 -1.28125,-0.6875 -1.96875,-0.6875 -2.484375,0 -4,1.484375 -4,3.53125 0,2.046875 1.515625,3.53125 4,3.53125 1.875,0 3,-1.21875 3,-2.375 z m 0,0"
+ id="path109" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-2">
+ <path
+ style="stroke:none"
+ d="m 5.40625,-2.171875 c 0,-1.34375 -0.921875,-2.34375 -2.546875,-2.34375 -1.640625,0 -2.546875,1.015625 -2.546875,2.34375 0,1.234375 0.890625,2.234375 2.546875,2.234375 1.671875,0 2.546875,-1.015625 2.546875,-2.234375 z M 4.125,-2.28125 c 0,0.859375 0,1.9375 -1.265625,1.9375 -1.265625,0 -1.265625,-1.078125 -1.265625,-1.9375 0,-0.453125 0,-0.953125 0.171875,-1.296875 0.1875,-0.375 0.609375,-0.578125 1.09375,-0.578125 0.421875,0 0.84375,0.15625 1.0625,0.5 C 4.125,-3.3125 4.125,-2.765625 4.125,-2.28125 Z m 0,0"
+ id="path112" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-3">
+ <path
+ style="stroke:none"
+ d="m 9.328125,0 v -0.46875 h -0.6875 v -2.578125 c 0,-1.03125 -0.515625,-1.4375 -1.546875,-1.4375 -0.90625,0 -1.421875,0.5 -1.6875,0.953125 -0.1875,-0.921875 -1.109375,-0.953125 -1.484375,-0.953125 -0.875,0 -1.4375,0.453125 -1.765625,1.078125 V -4.484375 L 0.453125,-4.40625 v 0.46875 c 0.609375,0 0.6875,0 0.6875,0.390625 v 3.078125 h -0.6875 V 0 l 1.25,-0.03125 1.25,0.03125 v -0.46875 h -0.6875 v -2.078125 c 0,-1.09375 0.875,-1.578125 1.5,-1.578125 0.328125,0 0.546875,0.203125 0.546875,0.96875 v 2.6875 H 3.625 V 0 L 4.890625,-0.03125 6.140625,0 v -0.46875 h -0.6875 V -2.546875 C 5.453125,-3.640625 6.3125,-4.125 6.9375,-4.125 7.28125,-4.125 7.5,-3.921875 7.5,-3.15625 v 2.6875 H 6.8125 V 0 l 1.25,-0.03125 z m 0,0"
+ id="path115" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-4">
+ <path
+ style="stroke:none"
+ d="m 5.984375,-2.21875 c 0,-1.328125 -0.90625,-2.265625 -2.34375,-2.265625 -0.75,0 -1.28125,0.3125 -1.5,0.484375 V -4.484375 L 0.375,-4.40625 v 0.46875 c 0.609375,0 0.6875,0 0.6875,0.375 V 1.46875 H 0.375 V 1.9375 L 1.625,1.90625 2.875,1.9375 V 1.46875 H 2.1875 v -1.859375 c 0.4375,0.34375 0.875,0.453125 1.28125,0.453125 1.5,0 2.515625,-0.90625 2.515625,-2.28125 z m -1.28125,0 c 0,1.40625 -0.703125,1.921875 -1.34375,1.921875 -0.140625,0 -0.609375,0 -1.0625,-0.546875 C 2.1875,-0.96875 2.1875,-0.984375 2.1875,-1.171875 V -3.28125 c 0,-0.1875 0.015625,-0.203125 0.15625,-0.34375 0.390625,-0.40625 0.921875,-0.46875 1.140625,-0.46875 0.65625,0 1.21875,0.609375 1.21875,1.875 z m 0,0"
+ id="path118" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-5">
+ <path
+ style="stroke:none"
+ d="m 4.921875,-1.171875 c 0,-0.171875 -0.1875,-0.171875 -0.234375,-0.171875 -0.171875,0 -0.1875,0.046875 -0.25,0.203125 -0.203125,0.484375 -0.78125,0.796875 -1.421875,0.796875 -1.40625,0 -1.421875,-1.328125 -1.421875,-1.828125 h 3.015625 c 0.21875,0 0.3125,0 0.3125,-0.265625 0,-0.3125 -0.0625,-1.046875 -0.5625,-1.546875 C 4,-4.34375 3.46875,-4.515625 2.78125,-4.515625 c -1.59375,0 -2.46875,1.03125 -2.46875,2.265625 0,1.34375 1,2.3125 2.609375,2.3125 1.578125,0 2,-1.0625 2,-1.234375 z M 3.984375,-2.5 H 1.59375 C 1.609375,-2.890625 1.625,-3.3125 1.828125,-3.640625 2.09375,-4.03125 2.5,-4.15625 2.78125,-4.15625 c 1.171875,0 1.1875,1.3125 1.203125,1.65625 z m 0,0"
+ id="path121" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-6">
+ <path
+ style="stroke:none"
+ d="m 4.40625,-3.671875 c 0,-0.53125 -0.53125,-0.8125 -1.0625,-0.8125 -0.6875,0 -1.09375,0.5 -1.3125,1.125 v -1.125 L 0.375,-4.40625 v 0.46875 c 0.609375,0 0.6875,0 0.6875,0.390625 V -0.46875 H 0.375 V 0 l 1.25,-0.03125 C 2,-0.03125 2.640625,-0.03125 3,0 V -0.46875 H 2.140625 v -1.75 c 0,-0.6875 0.234375,-1.90625 1.234375,-1.90625 0,0 -0.1875,0.171875 -0.1875,0.453125 0,0.40625 0.328125,0.609375 0.609375,0.609375 0.296875,0 0.609375,-0.203125 0.609375,-0.609375 z m 0,0"
+ id="path124" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-7">
+ <path
+ style="stroke:none"
+ d="m 3.8125,-1.234375 v -0.53125 H 3.34375 V -1.25 c 0,0.671875 -0.328125,0.90625 -0.609375,0.90625 -0.578125,0 -0.578125,-0.640625 -0.578125,-0.859375 v -2.75 H 3.625 v -0.46875 H 2.15625 v -1.90625 H 1.6875 c 0,1 -0.484375,1.984375 -1.484375,2.015625 v 0.359375 H 1.03125 v 2.734375 c 0,1.0625 0.859375,1.28125 1.578125,1.28125 0.75,0 1.203125,-0.578125 1.203125,-1.296875 z m 0,0"
+ id="path127" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-8">
+ <path
+ style="stroke:none"
+ d="m 8.390625,-6.375 v -0.46875 l -1.125,0.03125 c -0.390625,0 -0.921875,0 -1.296875,-0.03125 V -6.375 c 0.078125,0 0.875,0 0.875,0.125 0,0.046875 -0.03125,0.09375 -0.046875,0.125 L 4.78125,-1.59375 2.65625,-6.375 h 0.9375 v -0.46875 c -0.375,0.03125 -1.328125,0.03125 -1.765625,0.03125 -0.375,0 -1.21875,0 -1.5625,-0.03125 V -6.375 h 0.90625 l 2.75,6.203125 c 0.078125,0.171875 0.125,0.25 0.40625,0.25 0.15625,0 0.28125,0 0.390625,-0.234375 l 2.65625,-6 C 7.4375,-6.28125 7.484375,-6.375 8.203125,-6.375 Z m 0,0"
+ id="path130" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-9">
+ <path
+ style="stroke:none"
+ d="M 2.84375,0 V -0.46875 H 2.234375 V -4.484375 L 0.5,-4.40625 v 0.46875 c 0.59375,0 0.65625,0 0.65625,0.390625 V -0.46875 H 0.46875 V 0 L 1.6875,-0.03125 Z M 2.375,-6.046875 c 0,-0.4375 -0.34375,-0.78125 -0.78125,-0.78125 -0.421875,0 -0.78125,0.34375 -0.78125,0.78125 0,0.421875 0.359375,0.765625 0.78125,0.765625 0.4375,0 0.78125,-0.34375 0.78125,-0.765625 z m 0,0"
+ id="path133" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph2-10">
+ <path
+ style="stroke:none"
+ d="M 4.765625,-1.171875 C 4.765625,-1.3125 4.625,-1.3125 4.53125,-1.3125 c -0.1875,0 -0.1875,0.03125 -0.25,0.15625 -0.25,0.625 -0.734375,0.8125 -1.234375,0.8125 -1.390625,0 -1.390625,-1.453125 -1.390625,-1.921875 0,-0.5625 0,-1.84375 1.28125,-1.84375 0.359375,0 0.515625,0.015625 0.65625,0.046875 -0.1875,0.171875 -0.203125,0.375 -0.203125,0.46875 0,0.4375 0.34375,0.625 0.609375,0.625 0.3125,0 0.640625,-0.21875 0.640625,-0.625 0,-0.859375 -1.15625,-0.921875 -1.734375,-0.921875 -1.796875,0 -2.53125,1.140625 -2.53125,2.296875 0,1.328125 0.9375,2.28125 2.46875,2.28125 1.625,0 1.921875,-1.15625 1.921875,-1.234375 z m 0,0"
+ id="path136" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-0">
+ <path
+ style="stroke:none"
+ d=""
+ id="path139" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-1">
+ <path
+ style="stroke:none"
+ d="m 6.203125,-0.71875 c 0,-0.046875 0,-0.15625 -0.125,-0.15625 -0.125,0 -0.125,0.09375 -0.125,0.140625 -0.046875,0.5 -0.3125,0.671875 -0.546875,0.671875 -0.421875,0 -0.46875,-0.359375 -0.609375,-1.375 -0.0625,-0.453125 -0.140625,-1 -1.015625,-1.265625 0.625,-0.171875 1.375,-0.625 1.375,-1.3125 0,-0.78125 -1,-1.421875 -2.1875,-1.421875 H 0.359375 v 0.265625 h 0.1875 c 0.609375,0 0.625,0.078125 0.625,0.375 v 4.15625 c 0,0.296875 -0.015625,0.375 -0.625,0.375 h -0.1875 V 0 L 1.515625,-0.03125 2.6875,0 V -0.265625 H 2.515625 c -0.625,0 -0.640625,-0.078125 -0.640625,-0.375 v -1.96875 h 1.015625 c 0.578125,0 0.84375,0.296875 0.90625,0.359375 0.234375,0.25 0.234375,0.40625 0.234375,0.9375 0,0.5 0,0.84375 0.328125,1.140625 0.34375,0.296875 0.78125,0.34375 1.015625,0.34375 0.671875,0 0.828125,-0.65625 0.828125,-0.890625 z m -1.875,-3.296875 c 0,0.890625 -0.625,1.171875 -1.46875,1.171875 H 1.875 v -2.015625 c 0,-0.203125 0.015625,-0.28125 0.203125,-0.3125 0.078125,0 0.328125,0 0.484375,0 0.71875,0 1.765625,0 1.765625,1.15625 z m 0,0"
+ id="path142" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-2">
+ <path
+ style="stroke:none"
+ d="M 6.046875,0 V -0.265625 H 5.90625 c -0.5,0 -0.578125,-0.0625 -0.671875,-0.328125 L 3.375,-5.515625 C 3.328125,-5.625 3.3125,-5.6875 3.171875,-5.6875 3.03125,-5.6875 3,-5.625 2.96875,-5.515625 l -1.78125,4.6875 c -0.078125,0.21875 -0.25,0.5625 -0.90625,0.5625 V 0 c 0.265625,-0.03125 0.6875,-0.03125 0.828125,-0.03125 0.25,0 0.5,0 0.875,0.03125 v -0.265625 c -0.34375,0 -0.546875,-0.171875 -0.546875,-0.390625 0,-0.0625 0,-0.078125 0.03125,-0.171875 l 0.375,-1 h 2.171875 l 0.453125,1.1875 C 4.5,-0.546875 4.5,-0.5 4.5,-0.5 c 0,0.234375 -0.40625,0.234375 -0.640625,0.234375 V 0 L 5,-0.03125 c 0.4375,0 0.59375,0 1.046875,0.03125 z M 3.90625,-2.09375 H 1.9375 l 1,-2.59375 z m 0,0"
+ id="path145" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-3">
+ <path
+ style="stroke:none"
+ d="M 7.359375,0 V -0.265625 H 7.1875 c -0.625,0 -0.640625,-0.078125 -0.640625,-0.375 v -4.15625 c 0,-0.296875 0.015625,-0.375 0.640625,-0.375 H 7.359375 V -5.4375 h -1.34375 c -0.21875,0 -0.234375,0.015625 -0.296875,0.15625 L 3.875,-0.75 2.03125,-5.265625 C 1.953125,-5.421875 1.953125,-5.4375 1.734375,-5.4375 h -1.34375 v 0.265625 H 0.5625 c 0.609375,0 0.625,0.078125 0.625,0.375 v 3.9375 c 0,0.21875 0,0.59375 -0.796875,0.59375 V 0 C 0.75,-0.03125 1.125,-0.03125 1.328125,-0.03125 c 0.203125,0 0.578125,0 0.9375,0.03125 v -0.265625 c -0.796875,0 -0.796875,-0.375 -0.796875,-0.59375 V -5.09375 L 3.484375,-0.1875 C 3.53125,-0.09375 3.5625,0 3.671875,0 3.78125,0 3.8125,-0.09375 3.859375,-0.1875 l 2.03125,-4.96875 v 4.515625 c 0,0.296875 -0.015625,0.375 -0.625,0.375 H 5.09375 V 0 l 1.125,-0.03125 z m 0,0"
+ id="path148" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-4">
+ <path
+ style="stroke:none"
+ d="m 2.078125,0 v -0.265625 c -0.53125,0 -0.5625,-0.03125 -0.5625,-0.34375 v -2.90625 l -1.15625,0.09375 v 0.265625 c 0.515625,0 0.578125,0.046875 0.578125,0.4375 V -0.625 c 0,0.359375 -0.09375,0.359375 -0.609375,0.359375 V 0 c 0.3125,-0.03125 0.765625,-0.03125 0.890625,-0.03125 0.09375,0 0.578125,0 0.859375,0.03125 z M 1.625,-4.796875 C 1.625,-5.0625 1.40625,-5.25 1.171875,-5.25 c -0.21875,0 -0.4375,0.1875 -0.4375,0.453125 0,0.234375 0.1875,0.4375 0.4375,0.4375 0.25,0 0.453125,-0.203125 0.453125,-0.4375 z m 0,0"
+ id="path151" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-5">
+ <path
+ style="stroke:none"
+ d="m 4.484375,0 v -0.265625 c -0.515625,0 -0.609375,0 -0.609375,-0.359375 v -1.796875 c 0,-0.65625 -0.3125,-1.09375 -1.140625,-1.09375 -0.796875,0 -1.15625,0.578125 -1.25,0.765625 v -0.765625 l -1.15625,0.09375 v 0.265625 c 0.546875,0 0.609375,0.046875 0.609375,0.4375 V -0.625 c 0,0.359375 -0.09375,0.359375 -0.609375,0.359375 V 0 c 0.34375,-0.03125 0.6875,-0.03125 0.90625,-0.03125 0.234375,0 0.5625,0 0.90625,0.03125 v -0.265625 c -0.5,0 -0.609375,0 -0.609375,-0.359375 v -1.4375 c 0,-0.84375 0.640625,-1.234375 1.125,-1.234375 0.484375,0 0.609375,0.34375 0.609375,0.84375 V -0.625 c 0,0.359375 -0.09375,0.359375 -0.609375,0.359375 V 0 C 3,-0.03125 3.359375,-0.03125 3.5625,-0.03125 c 0.234375,0 0.578125,0 0.921875,0.03125 z m 0,0"
+ id="path154" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-6">
+ <path
+ style="stroke:none"
+ d="m 3.046875,-1.03125 c 0,-0.375 -0.21875,-0.9375 -1.171875,-1.109375 -0.0625,-0.015625 -0.515625,-0.09375 -0.546875,-0.09375 -0.25,-0.0625 -0.625,-0.234375 -0.625,-0.546875 0,-0.234375 0.1875,-0.578125 0.9375,-0.578125 0.890625,0 0.9375,0.65625 0.953125,0.875 0,0.0625 0.0625,0.09375 0.109375,0.09375 0.140625,0 0.140625,-0.0625 0.140625,-0.203125 v -0.75 c 0,-0.125 0,-0.203125 -0.109375,-0.203125 -0.046875,0 -0.0625,0 -0.1875,0.125 -0.015625,0 -0.09375,0.078125 -0.109375,0.078125 0,0 -0.03125,0 -0.078125,-0.03125 C 2.234375,-3.46875 2,-3.546875 1.640625,-3.546875 c -1.109375,0 -1.359375,0.59375 -1.359375,0.984375 0,0.390625 0.296875,0.625 0.3125,0.65625 0.328125,0.234375 0.5,0.265625 1.046875,0.359375 0.375,0.078125 0.984375,0.1875 0.984375,0.71875 0,0.3125 -0.203125,0.6875 -0.9375,0.6875 -0.8125,0 -1.046875,-0.625 -1.140625,-1.046875 C 0.515625,-1.296875 0.5,-1.328125 0.40625,-1.328125 c -0.125,0 -0.125,0.0625 -0.125,0.21875 V -0.125 c 0,0.125 0,0.203125 0.09375,0.203125 0.0625,0 0.0625,0 0.203125,-0.15625 C 0.625,-0.125 0.703125,-0.21875 0.75,-0.265625 1.109375,0.0625 1.484375,0.078125 1.6875,0.078125 2.703125,0.078125 3.046875,-0.5 3.046875,-1.03125 Z m 0,0"
+ id="path157" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-7">
+ <path
+ style="stroke:none"
+ d="m 3.515625,-0.953125 c 0,-0.03125 -0.03125,-0.109375 -0.125,-0.109375 -0.09375,0 -0.109375,0.046875 -0.125,0.09375 -0.28125,0.78125 -0.96875,0.796875 -1.109375,0.796875 -0.359375,0 -0.734375,-0.15625 -0.96875,-0.53125 C 0.953125,-1.0625 0.953125,-1.578125 0.953125,-1.8125 h 2.34375 c 0.171875,0 0.21875,0 0.21875,-0.1875 C 3.515625,-2.703125 3.125,-3.546875 2,-3.546875 c -0.984375,0 -1.765625,0.8125 -1.765625,1.796875 0,1.03125 0.859375,1.828125 1.875,1.828125 1,0 1.40625,-0.84375 1.40625,-1.03125 z M 2.96875,-2.03125 H 0.953125 C 1.03125,-3.140625 1.703125,-3.328125 2,-3.328125 c 0.9375,0 0.96875,1.125 0.96875,1.296875 z m 0,0"
+ id="path160" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-8">
+ <path
+ style="stroke:none"
+ d="m 3.0625,-3.015625 c 0,-0.28125 -0.25,-0.5 -0.609375,-0.5 -0.515625,0 -0.875,0.390625 -1.03125,0.84375 H 1.40625 v -0.84375 l -1.125,0.09375 v 0.265625 c 0.546875,0 0.609375,0.046875 0.609375,0.4375 V -0.625 c 0,0.359375 -0.109375,0.359375 -0.609375,0.359375 V 0 c 0.3125,-0.03125 0.75,-0.03125 0.9375,-0.03125 0.46875,0 0.484375,0 1,0.03125 V -0.265625 H 2.0625 c -0.578125,0 -0.59375,-0.078125 -0.59375,-0.375 V -1.8125 c 0,-0.609375 0.25,-1.46875 1.015625,-1.484375 -0.046875,0.03125 -0.140625,0.09375 -0.140625,0.28125 0,0.25 0.203125,0.359375 0.359375,0.359375 0.1875,0 0.359375,-0.125 0.359375,-0.359375 z m 0,0"
+ id="path163" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-9">
+ <path
+ style="stroke:none"
+ d="m 2.8125,-1 v -0.4375 h -0.25 v 0.421875 c 0,0.546875 -0.25,0.84375 -0.546875,0.84375 -0.53125,0 -0.53125,-0.6875 -0.53125,-0.8125 v -2.1875 h 1.1875 V -3.4375 h -1.1875 v -1.46875 h -0.25 c 0,0.734375 -0.328125,1.484375 -1.078125,1.515625 v 0.21875 H 0.875 V -1 c 0,0.9375 0.71875,1.078125 1.078125,1.078125 C 2.5,0.078125 2.8125,-0.390625 2.8125,-1 Z m 0,0"
+ id="path166" />
+ </symbol>
+ <symbol
+ overflow="visible"
+ id="glyph3-10">
+ <path
+ style="stroke:none"
+ d="m 3.984375,-1.703125 c 0,-0.984375 -0.828125,-1.84375 -1.875,-1.84375 -1.046875,0 -1.875,0.859375 -1.875,1.84375 0,1 0.859375,1.78125 1.875,1.78125 1.03125,0 1.875,-0.78125 1.875,-1.78125 z m -0.703125,-0.0625 c 0,0.359375 -0.015625,0.796875 -0.25,1.140625 -0.203125,0.3125 -0.5625,0.453125 -0.921875,0.453125 -0.421875,0 -0.765625,-0.203125 -0.9375,-0.484375 -0.203125,-0.328125 -0.21875,-0.71875 -0.21875,-1.109375 0,-0.3125 0,-0.78125 0.234375,-1.125 0.21875,-0.28125 0.546875,-0.4375 0.921875,-0.4375 0.421875,0 0.765625,0.203125 0.9375,0.46875 0.21875,0.34375 0.234375,0.765625 0.234375,1.09375 z m 0,0"
+ id="path169" />
+ </symbol>
+ </g>
+ <clipPath
+ id="clip1">
+ <path
+ d="M 6,0 H 315.60937 V 71 H 6 Z m 0,0"
+ id="path174" />
+ </clipPath>
+ <clipPath
+ id="clip2">
+ <path
+ d="m 6,85 h 309.60937 v 39.71875 H 6 Z m 0,0"
+ id="path177" />
+ </clipPath>
+ <clipPath
+ id="clip3">
+ <path
+ d="m 133,87 h 47 v 37.71875 h -47 z m 0,0"
+ id="path180" />
+ </clipPath>
+ </defs>
+ <g
+ id="surface10254"
+ transform="translate(-6.636719)">
+ <g
+ clip-path="url(#clip1)"
+ clip-rule="nonzero"
+ id="g187">
+ <path
+ style="fill:#bdb8d9;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 6.636719,67.875 V 2.984375 c 0,-1.652344 1.335937,-2.98828125 2.988281,-2.98828125 h 303 c 1.65234,0 2.98828,1.33593725 2.98828,2.98828125 V 67.875 c 0,1.648438 -1.33594,2.988281 -2.98828,2.988281 h -303 c -1.652344,0 -2.988281,-1.339843 -2.988281,-2.988281 z m 0,0"
+ id="path185" />
+ </g>
+ <g
+ clip-path="url(#clip2)"
+ clip-rule="nonzero"
+ id="g191">
+ <path
+ style="fill:#8cd1c5;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 6.636719,88.023438 v 33.707032 c 0,1.65234 1.335937,2.99219 2.988281,2.99219 h 303 c 1.65234,0 2.98828,-1.33985 2.98828,-2.99219 V 88.023438 c 0,-1.648438 -1.33594,-2.988282 -2.98828,-2.988282 h -303 c -1.652344,0 -2.988281,1.339844 -2.988281,2.988282 z m 0,0"
+ id="path189" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 40.234375,46.769531 H 12.722656 c -1.652344,0 -2.988281,1.335938 -2.988281,2.988281 v 13.863282 c 0,1.652344 1.335937,2.988281 2.988281,2.988281 h 27.511719 c 1.652344,0 2.988281,-1.335937 2.988281,-2.988281 V 49.757812 c 0,-1.652343 -1.335937,-2.988281 -2.988281,-2.988281 z m 0,0"
+ id="path193" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g205">
+ <use
+ xlink:href="#glyph0-1"
+ x="13.053"
+ y="59.174999"
+ id="use195"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-2"
+ x="20.245996"
+ y="59.174999"
+ id="use197"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-3"
+ x="23.0156"
+ y="59.174999"
+ id="use199"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-4"
+ x="25.785204"
+ y="59.174999"
+ id="use201"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-5"
+ x="30.766502"
+ y="59.174999"
+ id="use203"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g209">
+ <use
+ xlink:href="#glyph0-6"
+ x="36.026756"
+ y="59.174999"
+ id="use207"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g213">
+ <use
+ xlink:href="#glyph1-1"
+ x="57.516998"
+ y="58.903"
+ id="use211"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g217">
+ <use
+ xlink:href="#glyph1-1"
+ x="61.930431"
+ y="58.903"
+ id="use215"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g221">
+ <use
+ xlink:href="#glyph1-1"
+ x="66.353828"
+ y="58.903"
+ id="use219"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 134.55859,46.769531 H 88.476562 c -1.652343,0 -2.988281,1.335938 -2.988281,2.988281 v 13.863282 c 0,1.652344 1.335938,2.988281 2.988281,2.988281 h 46.082028 c 1.65235,0 2.99219,-1.335937 2.99219,-2.988281 V 49.757812 c 0,-1.652343 -1.33984,-2.988281 -2.99219,-2.988281 z m 0,0"
+ id="path223" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g243">
+ <use
+ xlink:href="#glyph0-1"
+ x="88.807999"
+ y="60.091"
+ id="use225"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-7"
+ x="96.000999"
+ y="60.091"
+ id="use227"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-3"
+ x="104.29984"
+ y="60.091"
+ id="use229"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-8"
+ x="107.06944"
+ y="60.091"
+ id="use231"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-9"
+ x="112.60865"
+ y="60.091"
+ id="use233"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-10"
+ x="117.58995"
+ y="60.091"
+ id="use235"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-11"
+ x="121.49529"
+ y="60.091"
+ id="use237"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-12"
+ x="127.03449"
+ y="60.091"
+ id="use239"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-2"
+ x="131.45789"
+ y="60.091"
+ id="use241"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 178.22656,46.769531 h -20.03125 c -1.64844,0 -2.98828,1.335938 -2.98828,2.988281 v 13.863282 c 0,1.652344 1.33984,2.988281 2.98828,2.988281 h 20.03125 c 1.65235,0 2.98828,-1.335937 2.98828,-2.988281 V 49.757812 c 0,-1.652343 -1.33593,-2.988281 -2.98828,-2.988281 z m 0,0"
+ id="path245" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g251">
+ <use
+ xlink:href="#glyph0-13"
+ x="158.528"
+ y="60.146"
+ id="use247"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-14"
+ x="163.50929"
+ y="60.146"
+ id="use249"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g255">
+ <use
+ xlink:href="#glyph0-1"
+ x="170.7023"
+ y="60.146"
+ id="use253"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 220.47266,46.769531 h -19.48047 c -1.65235,0 -2.99219,1.335938 -2.99219,2.988281 v 13.863282 c 0,1.652344 1.33984,2.988281 2.99219,2.988281 h 19.48047 c 1.65234,0 2.98828,-1.335937 2.98828,-2.988281 V 49.757812 c 0,-1.652343 -1.33594,-2.988281 -2.98828,-2.988281 z m 0,0"
+ id="path257" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g261">
+ <use
+ xlink:href="#glyph0-15"
+ x="201.32201"
+ y="60.091"
+ id="use259"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g267">
+ <use
+ xlink:href="#glyph0-16"
+ x="206.72173"
+ y="60.091"
+ id="use263"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-15"
+ x="213.91472"
+ y="60.091"
+ id="use265"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 310.46094,46.769531 h -34.17969 c -1.64844,0 -2.98828,1.335938 -2.98828,2.988281 v 13.863282 c 0,1.652344 1.33984,2.988281 2.98828,2.988281 h 34.17969 c 1.65234,0 2.98828,-1.335937 2.98828,-2.988281 V 49.757812 c 0,-1.652343 -1.33594,-2.988281 -2.98828,-2.988281 z m 0,0"
+ id="path269" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g279">
+ <use
+ xlink:href="#glyph0-17"
+ x="276.61499"
+ y="60.036999"
+ id="use271"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-17"
+ x="281.59631"
+ y="60.036999"
+ id="use273"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-10"
+ x="286.57761"
+ y="60.036999"
+ id="use275"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-18"
+ x="290.48294"
+ y="60.036999"
+ id="use277"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g287">
+ <use
+ xlink:href="#glyph0-5"
+ x="294.62738"
+ y="60.036999"
+ id="use281"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-19"
+ x="300.1666"
+ y="60.036999"
+ id="use283"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-20"
+ x="305.14789"
+ y="60.036999"
+ id="use285"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 292.16797,24.089844 h -15.88672 c -1.64844,0 -2.98828,1.339844 -2.98828,2.988281 v 13.867187 c 0,1.648438 1.33984,2.988282 2.98828,2.988282 h 15.88672 c 1.65234,0 2.99219,-1.339844 2.99219,-2.988282 V 27.078125 c 0,-1.648437 -1.33985,-2.988281 -2.99219,-2.988281 z m 0,0"
+ id="path289" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g297">
+ <use
+ xlink:href="#glyph0-21"
+ x="276.61499"
+ y="37.220001"
+ id="use291"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-22"
+ x="281.87524"
+ y="37.220001"
+ id="use293"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-19"
+ x="286.85657"
+ y="37.220001"
+ id="use295"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g301">
+ <use
+ xlink:href="#glyph1-1"
+ x="276.61499"
+ y="19.218"
+ id="use299"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g305">
+ <use
+ xlink:href="#glyph1-1"
+ x="281.02844"
+ y="19.218"
+ id="use303"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g309">
+ <use
+ xlink:href="#glyph1-1"
+ x="285.45181"
+ y="19.218"
+ id="use307"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g313">
+ <use
+ xlink:href="#glyph1-1"
+ x="236.10201"
+ y="58.903"
+ id="use311"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g317">
+ <use
+ xlink:href="#glyph1-1"
+ x="240.51543"
+ y="58.903"
+ id="use315"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g321">
+ <use
+ xlink:href="#glyph1-1"
+ x="244.93883"
+ y="58.903"
+ id="use319"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 178.98828,89.289062 h -21.55469 c -1.64843,0 -2.98828,1.335938 -2.98828,2.988282 v 13.863286 c 0,1.65234 1.33985,2.98828 2.98828,2.98828 h 21.55469 c 1.65234,0 2.98828,-1.33594 2.98828,-2.98828 V 92.277344 c 0,-1.652344 -1.33594,-2.988282 -2.98828,-2.988282 z m 0,0"
+ id="path323" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g331">
+ <use
+ xlink:href="#glyph0-23"
+ x="157.76601"
+ y="102.611"
+ id="use325"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-16"
+ x="165.23795"
+ y="102.611"
+ id="use327"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-15"
+ x="172.43095"
+ y="102.611"
+ id="use329"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 240.47656,89.289062 h -31.14062 c -1.65235,0 -2.98828,1.335938 -2.98828,2.988282 v 13.863286 c 0,1.65234 1.33593,2.98828 2.98828,2.98828 h 31.14062 c 1.64844,0 2.98828,-1.33594 2.98828,-2.98828 V 92.277344 c 0,-1.652344 -1.33984,-2.988282 -2.98828,-2.988282 z m 0,0"
+ id="path333" />
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g337">
+ <use
+ xlink:href="#glyph0-24"
+ x="209.66701"
+ y="101.64"
+ id="use335"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g351">
+ <use
+ xlink:href="#glyph0-12"
+ x="216.31206"
+ y="101.64"
+ id="use339"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-10"
+ x="220.73544"
+ y="101.64"
+ id="use341"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-3"
+ x="224.64079"
+ y="101.64"
+ id="use343"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-2"
+ x="227.41039"
+ y="101.64"
+ id="use345"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-9"
+ x="230.17999"
+ y="101.64"
+ id="use347"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph0-4"
+ x="235.16129"
+ y="101.64"
+ id="use349"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g369">
+ <use
+ xlink:href="#glyph2-1"
+ x="12.99"
+ y="13.84"
+ id="use353"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-2"
+ x="21.268921"
+ y="13.84"
+ id="use355"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-3"
+ x="26.997416"
+ y="13.84"
+ id="use357"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-4"
+ x="36.541588"
+ y="13.84"
+ id="use359"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-1"
+ x="42.907688"
+ y="13.84"
+ id="use361"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-5"
+ x="51.186607"
+ y="13.84"
+ id="use363"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-6"
+ x="56.436897"
+ y="13.84"
+ id="use365"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-7"
+ x="61.159172"
+ y="13.84"
+ id="use367"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g373">
+ <use
+ xlink:href="#glyph2-8"
+ x="12.99"
+ y="99.751999"
+ id="use371"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g389">
+ <use
+ xlink:href="#glyph2-5"
+ x="20.69109"
+ y="99.751999"
+ id="use375"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-6"
+ x="25.94138"
+ y="99.751999"
+ id="use377"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-9"
+ x="30.663652"
+ y="99.751999"
+ id="use379"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-10"
+ x="33.841721"
+ y="99.751999"
+ id="use381"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-5"
+ x="38.93261"
+ y="99.751999"
+ id="use383"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-6"
+ x="44.182899"
+ y="99.751999"
+ id="use385"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph2-7"
+ x="48.905174"
+ y="99.751999"
+ id="use387"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g397">
+ <use
+ xlink:href="#glyph3-1"
+ x="115.526"
+ y="112.701"
+ id="use391"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-2"
+ x="121.75862"
+ y="112.701"
+ id="use393"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-3"
+ x="128.10281"
+ y="112.701"
+ id="use395"
+ width="100%"
+ height="100%" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1"
+ id="g417">
+ <use
+ xlink:href="#glyph3-4"
+ x="109.676"
+ y="119.675"
+ id="use399"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-5"
+ x="112.02718"
+ y="119.675"
+ id="use401"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-6"
+ x="116.72954"
+ y="119.675"
+ id="use403"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-7"
+ x="120.06901"
+ y="119.675"
+ id="use405"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-8"
+ x="123.83089"
+ y="119.675"
+ id="use407"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-9"
+ x="127.13052"
+ y="119.675"
+ id="use409"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-4"
+ x="130.42216"
+ y="119.675"
+ id="use411"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-10"
+ x="132.77335"
+ y="119.675"
+ id="use413"
+ width="100%"
+ height="100%" />
+ <use
+ xlink:href="#glyph3-5"
+ x="137.00548"
+ y="119.675"
+ id="use415"
+ width="100%"
+ height="100%" />
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 8.439875,0.0015 h 9.777344"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path419" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.552025,3.110875 C -2.083275,1.243687 -1.044213,0.364781 -0.00124375,0.0015 -1.044213,-0.361781 -2.083275,-1.244594 -2.552025,-3.111781"
+ transform="matrix(1,0,0,-1,53.5989,56.689)"
+ id="path421" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="M 37.678156,0.0015 H 49.510188"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path423" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.549976,3.110875 C -2.085132,1.243687 -1.04607,0.364781 8.05e-4,0.0015 -1.04607,-0.361781 -2.085132,-1.244594 -2.549976,-3.111781"
+ transform="matrix(1,0,0,-1,84.88982,56.689)"
+ id="path425" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 102.768,0.0015 h 16.46094"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path427" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.551166,3.110875 C -2.086322,1.243687 -1.04726,0.364781 -3.85e-4,0.0015 -1.04726,-0.361781 -2.086322,-1.244594 -2.551166,-3.111781"
+ transform="matrix(1,0,0,-1,154.60976,56.689)"
+ id="path429" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 146.43206,0.0015 h 15.58985"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path431" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.552408,3.110875 C -2.083658,1.243687 -1.044595,0.364781 -0.00162625,0.0015 -1.044595,-0.361781 -2.083658,-1.244594 -2.552408,-3.111781"
+ transform="matrix(1,0,0,-1,197.40397,56.689)"
+ id="path433" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 188.67816,0.0015 h 8.125"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path435" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.551057,3.110875 C -2.086214,1.243687 -1.047151,0.364781 -2.7625e-4,0.0015 -1.047151,-0.361781 -2.086214,-1.244594 -2.551057,-3.111781"
+ transform="matrix(1,0,0,-1,232.18387,56.689)"
+ id="path437" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 216.26409,0.0015 h 21.05078"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path439" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.551979,3.110875 C -2.083229,1.243687 -1.048072,0.364781 -0.0011975,0.0015 -1.048072,-0.361781 -2.083229,-1.244594 -2.551979,-3.111781"
+ transform="matrix(1,0,0,-1,272.69651,56.689)"
+ id="path441" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 216.26409,0.0015 c 12.28516,0 10.30469,18.472656 21.10157,22.402344"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path443" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.549132,3.109508 C -2.084774,1.244442 -1.046101,0.363405 -0.00193857,-4.77835e-6 -1.044977,-0.364479 -2.084828,-1.245581 -2.550933,-3.108709"
+ transform="matrix(0.93968,-0.34201,-0.34201,-0.93968,272.72057,34.14777)"
+ id="path445" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 216.26409,0.0015 c 17.67578,0 4.44141,36.613281 21.0625,39.546875"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path447" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.549055,3.109583 C -2.084879,1.242801 -1.046318,0.361581 3.08915e-4,-0.00144434 -1.047336,-0.364117 -2.083134,-1.244529 -2.550801,-3.109646"
+ transform="matrix(0.9848,-0.17363,-0.17363,-0.9848,272.70257,17.07285)"
+ id="path449" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="M 133.22894,-10.119594 V -31.603969"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path451" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="m -2.549445,3.112319 c 0.464844,-1.867188 1.503906,-2.75 2.55078125,-3.1132815 C -1.045539,-0.364244 -2.084601,-1.24315 -2.549445,-3.110337"
+ transform="matrix(0,1,1,0,168.2119,88.69007)"
+ id="path453" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 147.19378,-42.521938 h 23.17578"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path455" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.549931,3.111544 C -2.085087,1.244356 -1.046025,0.361544 8.5e-4,-0.0017375 -1.046025,-0.361113 -2.085087,-1.243925 -2.549931,-3.111113"
+ transform="matrix(1,0,0,-1,205.74915,99.2092)"
+ id="path457" />
+ <g
+ clip-path="url(#clip3)"
+ clip-rule="nonzero"
+ id="g461">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1"
+ d="m 119.26409,-42.521938 c -8.08593,0 -12.8789,-15.800781 -5.875,-19.839843 7.48438,-4.324219 19.83985,1.074218 19.83985,8.925781"
+ transform="matrix(1,0,0,-1,34.982,56.689)"
+ id="path459" />
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.79701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
+ d="M -2.549004,3.110337 C -2.08416,1.24315 -1.045097,0.364244 0.0017775,9.625e-4 -1.045097,-0.362319 -2.08416,-1.245131 -2.549004,-3.112319"
+ transform="matrix(0,-1,-1,0,168.2119,109.72834)"
+ id="path463" />
+ </g>
+</svg>
diff --git a/index.html b/index.html
index 1c98f50..621794f 100644
--- a/index.html
+++ b/index.html
@@ -1,5 +1,5 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="A formally verified high-level synthesis (HLS) tool written in Coq, building on top of CompCert. This ensures the correctness of the C to Verilog translation according to our Verilog semantics and CompCert&rsquo;s C semantics, removing the need to check the resulting hardware for behavioural correctness.
-Features # The project is currently a work in progress, so proofs remain to be finished. Currently, the following C features are supported, but are not all proven correct yet:"><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Vericert"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/"><title>Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+Features # The project is currently a work in progress, so proofs remain to be finished. Currently, the following C features are supported, but are not all proven correct yet:"><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Vericert"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/"><title>Vericert | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Vericert</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav id=TableOfContents><ul><li><ul><li><a href=#features>Features</a></li><li><a href=#content>Content</a></li><li><a href=#papers>Papers</a></li></ul></li></ul></nav></aside></header><article class=markdown><p>A formally verified high-level synthesis (HLS) tool written in Coq, building on top of <a href=https://github.com/AbsInt/CompCert>CompCert</a>.
diff --git a/tags/index.html b/tags/index.html
index 51e7d45..090e745 100644
--- a/tags/index.html
+++ b/tags/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Tags"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/tags/"><title>Tags | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.92c1de61cce4ee29dff6c954131fab2f5270d34b966e42f893b9227dc1d3f68f.css integrity="sha256-ksHeYczk7inf9slUEx+rL1Jw00uWbkL4k7kifcHT9o8="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/tags/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
+<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.80.0"><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content><meta name=theme-color content="#FFFFFF"><meta property="og:title" content="Tags"><meta property="og:description" content><meta property="og:type" content="website"><meta property="og:url" content="https://vericert.ymhg.org/tags/"><title>Tags | Vericert</title><link rel=manifest href=/manifest.json><link rel=icon href=/favicon.png type=image/x-icon><link rel=stylesheet href=/book.min.5a9f57a8e1685690972994e6e1e9ab35c2c25c5d0245ebb00c95ec8272bee21c.css integrity="sha256-Wp9XqOFoVpCXKZTm4emrNcLCXF0CReuwDJXsgnK+4hw="><script defer src=/en.search.min.8744a59deef42a09f73b965fa29a56c40c4f8892dff5bfae0b331df4b63bb70d.js integrity="sha256-h0Slne70Kgn3O5ZfoppWxAxPiJLf9b+uCzMd9LY7tw0="></script><link rel=alternate type=application/rss+xml href=https://vericert.ymhg.org/tags/index.xml title=Vericert></head><body><input type=checkbox class="hidden toggle" id=menu-control>
<input type=checkbox class="hidden toggle" id=toc-control><main class="container flex"><aside class=book-menu><nav><div class=book-brand><a href=/><div id=book-logo></div></a><p>A formally verified high-level synthesis tool written in Coq.</p></div><div class=book-search><input type=text id=book-search-input placeholder=Search aria-label=Search maxlength=64 data-hotkeys=s/><div class="book-search-spinner hidden"></div><ul id=book-search-results></ul></div><ul><li><a href=https://vericert.ymhg.org/blog/>Blog</a><ul></ul></li><li><a href=https://vericert.ymhg.org/docs/>Docs</a><ul><li><a href=https://vericert.ymhg.org/docs/building/>Building Vericert</a></li><li><a href=https://vericert.ymhg.org/docs/coq-style-guide/>Coq Style Guide</a></li><li><a href=https://vericert.ymhg.org/docs/unreleased/>Unreleased Features</a></li><li><a href=https://vericert.ymhg.org/docs/using-vericert/>Using Vericert</a></li></ul></li><li><a href=https://vericert.ymhg.org/future/>Future Work</a></li></ul><ul><li><a href=https://github.com/ymherklotz/vericert target=_blank rel=noopener>Github⤴</a></li></ul></nav><script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script></aside><div class=book-page><header class=book-header><div class="flex align-center justify-between"><label for=menu-control><img src=/svg/menu.svg class=book-icon alt=Menu></label>
<strong>Tags</strong>
<label for=toc-control><img src=/svg/toc.svg class=book-icon alt="Table of Contents"></label></div><aside class="hidden clearfix"><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></header><footer class=book-footer><div class="flex flex-wrap justify-between"></div></footer><label for=menu-control class="hidden book-menu-overlay"></label></div><aside class=book-toc><nav><ul><li class=book-section-flat><strong>Categories</strong><ul></ul></li><li class=book-section-flat><strong>Tags</strong><ul></ul></li></ul></nav></aside></main></body></html> \ No newline at end of file