helics  3.5.2
indexPage.hpp
1 /*
2 Copyright (c) 2017-2024,
3 Battelle Memorial Institute; Lawrence Livermore National Security, LLC; Alliance for Sustainable
4 Energy, LLC. See the top-level NOTICE for additional details. All rights reserved.
5 SPDX-License-Identifier: BSD-3-Clause
6 */
7 #pragma once
8 
9 namespace helics::webserver {
10 
11 static constexpr const char* style =
12  R"raw(<style>
13 html {
14  font-size: 100%;
15  overflow-y: scroll;
16  -webkit-text-size-adjust: 100%;
17  -ms-text-size-adjust: 100%;
18 }
19 
20 body {
21  color: #444;
22  font-family: Georgia, Palatino, 'Palatino Linotype', Times, 'Times New Roman', serif;
23  font-size: 12px;
24  line-height: 1.7;
25  padding: 1em;
26  margin: auto;
27  max-width: 42em;
28  background: #fefefe;
29 }
30 
31 a {
32  color: #0645ad;
33  text-decoration: none;
34 }
35 
36 a:visited {
37  color: #0b0080;
38 }
39 
40 a:hover {
41  color: #06e;
42 }
43 
44 a:active {
45  color: #faa700;
46 }
47 
48 a:focus {
49  outline: thin dotted;
50 }
51 
52 *::-moz-selection {
53  background: rgba(255, 255, 0, 0.3);
54  color: #000;
55 }
56 
57 *::selection {
58  background: rgba(255, 255, 0, 0.3);
59  color: #000;
60 }
61 
62 a::-moz-selection {
63  background: rgba(255, 255, 0, 0.3);
64  color: #0645ad;
65 }
66 
67 a::selection {
68  background: rgba(255, 255, 0, 0.3);
69  color: #0645ad;
70 }
71 
72 p {
73  margin: 1em 0;
74 }
75 
76 img {
77  max-width: 100%;
78 }
79 
80 h1, h2, h3, h4, h5, h6 {
81  color: #111;
82  line-height: 125%;
83  margin-top: 2em;
84  font-weight: normal;
85 }
86 
87 h4, h5, h6 {
88  font-weight: bold;
89 }
90 
91 h1 {
92  font-size: 2.5em;
93 }
94 
95 h2 {
96  font-size: 2em;
97 }
98 
99 h3 {
100  font-size: 1.5em;
101 }
102 
103 h4 {
104  font-size: 1.2em;
105 }
106 
107 h5 {
108  font-size: 1em;
109 }
110 
111 h6 {
112  font-size: 0.9em;
113 }
114 
115 blockquote {
116  color: #666666;
117  margin: 0;
118  padding-left: 3em;
119  border-left: 0.5em #EEE solid;
120 }
121 
122 hr {
123  display: block;
124  height: 2px;
125  border: 0;
126  border-top: 1px solid #aaa;
127  border-bottom: 1px solid #eee;
128  margin: 1em 0;
129  padding: 0;
130 }
131 
132 pre, code, kbd, samp {
133  color: #000;
134  font-family: monospace, monospace;
135  _font-family: 'courier new', monospace;
136  font-size: 0.98em;
137 }
138 
139 pre {
140  white-space: pre;
141  white-space: pre-wrap;
142  word-wrap: break-word;
143 }
144 
145 b, strong {
146  font-weight: bold;
147 }
148 
149 dfn {
150  font-style: italic;
151 }
152 
153 ins {
154  background: #ff9;
155  color: #000;
156  text-decoration: none;
157 }
158 
159 mark {
160  background: #ff0;
161  color: #000;
162  font-style: italic;
163  font-weight: bold;
164 }
165 
166 sub, sup {
167  font-size: 75%;
168  line-height: 0;
169  position: relative;
170  vertical-align: baseline;
171 }
172 
173 sup {
174  top: -0.5em;
175 }
176 
177 sub {
178  bottom: -0.25em;
179 }
180 
181 ul, ol {
182  margin: 1em 0;
183  padding: 0 0 0 2em;
184 }
185 
186 li p:last-child {
187  margin-bottom: 0;
188 }
189 
190 ul ul, ol ol {
191  margin: .3em 0;
192 }
193 
194 dl {
195  margin-bottom: 1em;
196 }
197 
198 dt {
199  font-weight: bold;
200  margin-bottom: .8em;
201 }
202 
203 dd {
204  margin: 0 0 .8em 2em;
205 }
206 
207 dd:last-child {
208  margin-bottom: 0;
209 }
210 
211 img {
212  border: 0;
213  -ms-interpolation-mode: bicubic;
214  vertical-align: middle;
215 }
216 
217 figure {
218  display: block;
219  text-align: center;
220  margin: 1em 0;
221 }
222 
223 figure img {
224  border: none;
225  margin: 0 auto;
226 }
227 
228 figcaption {
229  font-size: 0.8em;
230  font-style: italic;
231  margin: 0 0 .8em;
232 }
233 
234 table {
235  margin-bottom: 2em;
236  border-bottom: 1px solid #ddd;
237  border-right: 1px solid #ddd;
238  border-spacing: 0;
239  border-collapse: collapse;
240 }
241 
242 table th {
243  padding: .2em 1em;
244  background-color: #eee;
245  border-top: 1px solid #ddd;
246  border-left: 1px solid #ddd;
247 }
248 
249 table td {
250  padding: .2em 1em;
251  border-top: 1px solid #ddd;
252  border-left: 1px solid #ddd;
253  vertical-align: top;
254 }
255 
256 .author {
257  font-size: 1.2em;
258  text-align: center;
259 }
260 
261 @media only screen and (min-width: 480px) {
262  body {
263  font-size: 14px;
264  }
265 }
266 @media only screen and (min-width: 768px) {
267  body {
268  font-size: 16px;
269  }
270 }
271 @media print {
272  * {
273  background: transparent !important;
274  color: black !important;
275  filter: none !important;
276  -ms-filter: none !important;
277  }
278 
279  body {
280  font-size: 12pt;
281  max-width: 100%;
282  }
283 
284  a, a:visited {
285  text-decoration: underline;
286  }
287 
288  hr {
289  height: 1px;
290  border: 0;
291  border-bottom: 1px solid black;
292  }
293 
294  a[href]:after {
295  content: " (" attr(href) ")";
296  }
297 
298  abbr[title]:after {
299  content: " (" attr(title) ")";
300  }
301 
302  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
303  content: "";
304  }
305 
306  pre, blockquote {
307  border: 1px solid #999;
308  padding-right: 1em;
309  page-break-inside: avoid;
310  }
311 
312  tr, img {
313  page-break-inside: avoid;
314  }
315 
316  img {
317  max-width: 100% !important;
318  }
319 
320  @page :left {
321  margin: 15mm 20mm 15mm 10mm;
322 }
323 
324  @page :right {
325  margin: 15mm 10mm 15mm 20mm;
326 }
327 
328  p, h2, h3 {
329  orphans: 3;
330  widows: 3;
331  }
332 
333  h2, h3 {
334  page-break-after: avoid;
335  }
336 }
337  </style>
338  )raw";
339 
340 static const char* indexPage1 =
341  R"raw(<html>
342  <head>
343  <meta charset="utf-8" />
344  <title>HELICS web server interface</title>
345  )raw";
346 
347 static const char* indexPage2 =
348  R"raw(</head>
349 
350  <body>
351  )raw";
352 
353 static constexpr const char* svg1 = R"raw(<svg version = "1.1" id = "Layer_1" xmlns =
354  "http://www.w3.org/2000/svg" xmlns:
355  xlink = "http://www.w3.org/1999/xlink" x = "0px" y = "0px"
356  viewBox="0 0 432 140.1" style="enable-background:new 0 0 432 140.1;" xml:space="preserve" width="20%">
357 <style type="text/css">
358  .st0{fill:#231F20;}
359  .st1{fill:url(#SVGID_1_);}
360  .st2{fill:url(#SVGID_2_);}
361  .st3{fill:url(#SVGID_3_);}
362  .st4{fill:url(#SVGID_4_);}
363  .st5{fill:url(#SVGID_5_);}
364  .st6{fill:#1D1D1D;}
365 </style>
366 <g>
367  <g>
368  <path class="st0" d="M129.1,118.5c0.2,0.3,0.4,0.6,0.7,0.8c0.3,0.2,0.6,0.3,1,0.4c0.4,0.1,0.8,0.1,1.1,0.1c0.3,0,0.6,0,0.9-0.1
369  c0.3,0,0.6-0.1,0.9-0.3c0.3-0.1,0.5-0.3,0.7-0.5c0.2-0.2,0.3-0.5,0.3-0.8c0-0.4-0.1-0.7-0.4-0.9c-0.2-0.2-0.5-0.4-0.9-0.6
370  c-0.4-0.2-0.8-0.3-1.3-0.4s-1-0.2-1.5-0.4c-0.5-0.1-1-0.3-1.5-0.5c-0.5-0.2-0.9-0.4-1.3-0.7c-0.4-0.3-0.7-0.7-0.9-1.1
371  c-0.2-0.4-0.4-1-0.4-1.6c0-0.7,0.1-1.3,0.4-1.8c0.3-0.5,0.7-0.9,1.2-1.3c0.5-0.3,1-0.6,1.6-0.8c0.6-0.2,1.2-0.2,1.8-0.2
372  c0.7,0,1.4,0.1,2.1,0.2c0.7,0.2,1.2,0.4,1.7,0.8c0.5,0.4,0.9,0.8,1.2,1.4c0.3,0.6,0.4,1.2,0.4,2H134c0-0.4-0.1-0.7-0.3-1
373  c-0.1-0.3-0.3-0.5-0.6-0.6c-0.2-0.2-0.5-0.3-0.8-0.3c-0.3-0.1-0.7-0.1-1-0.1c-0.2,0-0.5,0-0.7,0.1c-0.2,0.1-0.5,0.1-0.7,0.3
374  c-0.2,0.1-0.4,0.3-0.5,0.5c-0.1,0.2-0.2,0.4-0.2,0.7c0,0.3,0.1,0.5,0.2,0.6c0.1,0.2,0.3,0.3,0.6,0.5c0.3,0.1,0.7,0.3,1.2,0.4
375  c0.5,0.1,1.2,0.3,2.1,0.5c0.3,0.1,0.6,0.1,1.1,0.3c0.5,0.1,0.9,0.3,1.3,0.6c0.4,0.3,0.8,0.7,1.2,1.2c0.3,0.5,0.5,1.1,0.5,1.9
376  c0,0.6-0.1,1.2-0.4,1.7c-0.2,0.5-0.6,1-1.1,1.4c-0.5,0.4-1.1,0.7-1.8,0.9s-1.5,0.3-2.5,0.3c-0.8,0-1.5-0.1-2.2-0.3
377  c-0.7-0.2-1.3-0.5-1.9-0.9c-0.5-0.4-1-0.9-1.3-1.5s-0.5-1.3-0.5-2.2h2.9C128.8,117.8,128.9,118.2,129.1,118.5z"/>
378  <path class="st0" d="M139,110.5v-2.2h2.7v2.2H139z M141.7,112v9.9H139V112H141.7z"/>
379  <path class="st0" d="M146.4,112v1.3h0c0.4-0.5,0.8-0.9,1.3-1.2c0.5-0.3,1.1-0.4,1.7-0.4c0.6,0,1.2,0.1,1.7,0.4s0.9,0.7,1.2,1.3
380  c0.3-0.4,0.7-0.8,1.2-1.1c0.5-0.3,1.1-0.5,1.8-0.5c0.5,0,1,0.1,1.5,0.2c0.4,0.1,0.8,0.3,1.1,0.6c0.3,0.3,0.6,0.6,0.7,1.1
381  c0.2,0.5,0.3,1,0.3,1.6v6.6h-2.7v-5.6c0-0.3,0-0.6,0-0.9c0-0.3-0.1-0.5-0.2-0.8c-0.1-0.2-0.3-0.4-0.5-0.5
382  c-0.2-0.1-0.5-0.2-0.9-0.2s-0.7,0.1-0.9,0.2c-0.2,0.1-0.4,0.3-0.6,0.6c-0.1,0.2-0.2,0.5-0.3,0.8c0,0.3-0.1,0.6-0.1,0.9v5.5h-2.7
383  v-5.5c0-0.3,0-0.6,0-0.9c0-0.3-0.1-0.5-0.2-0.8c-0.1-0.2-0.3-0.4-0.5-0.6c-0.2-0.1-0.6-0.2-1-0.2c-0.1,0-0.3,0-0.5,0.1
384  c-0.2,0.1-0.4,0.2-0.6,0.3c-0.2,0.2-0.4,0.4-0.5,0.7c-0.1,0.3-0.2,0.7-0.2,1.2v5.7h-2.7V112H146.4z"/>
385  <path class="st0" d="M167.8,121.9v-1.4h-0.1c-0.3,0.6-0.8,1-1.3,1.2c-0.5,0.3-1.1,0.4-1.7,0.4c-0.7,0-1.3-0.1-1.8-0.3
386  c-0.5-0.2-0.8-0.5-1.1-0.8c-0.3-0.3-0.5-0.8-0.6-1.3c-0.1-0.5-0.2-1.1-0.2-1.7V112h2.7v5.6c0,0.8,0.1,1.4,0.4,1.8
387  c0.3,0.4,0.7,0.6,1.4,0.6c0.7,0,1.3-0.2,1.6-0.7c0.3-0.4,0.5-1.2,0.5-2.2V112h2.7v9.9H167.8z"/>
388  <path class="st0" d="M175.2,108.3v13.6h-2.7v-13.6H175.2z"/>
389  <path class="st0" d="M177.2,115.1c0-0.6,0.2-1.2,0.5-1.6c0.3-0.4,0.6-0.8,1.1-1c0.4-0.3,0.9-0.4,1.5-0.5c0.5-0.1,1.1-0.2,1.6-0.2
390  c0.5,0,1,0,1.5,0.1c0.5,0.1,1,0.2,1.4,0.4c0.4,0.2,0.8,0.5,1,0.8c0.3,0.4,0.4,0.8,0.4,1.4v5.1c0,0.4,0,0.9,0.1,1.3
391  c0.1,0.4,0.1,0.7,0.3,0.9h-2.7c-0.1-0.2-0.1-0.3-0.1-0.5c0-0.2-0.1-0.3-0.1-0.5c-0.4,0.4-0.9,0.8-1.5,0.9
392  c-0.6,0.2-1.2,0.3-1.8,0.3c-0.5,0-0.9-0.1-1.3-0.2c-0.4-0.1-0.8-0.3-1.1-0.5c-0.3-0.2-0.5-0.5-0.7-0.9c-0.2-0.4-0.3-0.8-0.3-1.3
393  c0-0.6,0.1-1,0.3-1.4c0.2-0.4,0.5-0.7,0.8-0.9c0.3-0.2,0.7-0.4,1.1-0.5c0.4-0.1,0.8-0.2,1.2-0.3c0.4-0.1,0.8-0.1,1.2-0.2
394  c0.4,0,0.7-0.1,1-0.2c0.3-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.3-0.4,0.2-0.6c0-0.3,0-0.5-0.1-0.7c-0.1-0.2-0.2-0.3-0.4-0.4
395  c-0.2-0.1-0.3-0.2-0.6-0.2c-0.2,0-0.4,0-0.7,0c-0.5,0-1,0.1-1.3,0.3c-0.3,0.2-0.5,0.6-0.5,1.1H177.2z M183.5,117.1
396  c-0.1,0.1-0.3,0.2-0.4,0.2c-0.2,0.1-0.4,0.1-0.6,0.1c-0.2,0-0.4,0.1-0.6,0.1c-0.2,0-0.4,0.1-0.6,0.1c-0.2,0-0.4,0.1-0.6,0.2
397  c-0.2,0.1-0.4,0.2-0.5,0.3c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.4-0.1,0.6c0,0.2,0,0.4,0.1,0.6c0.1,0.2,0.2,0.3,0.4,0.4
398  c0.2,0.1,0.3,0.2,0.5,0.2c0.2,0,0.4,0.1,0.6,0.1c0.5,0,0.9-0.1,1.2-0.3c0.3-0.2,0.5-0.4,0.6-0.6c0.1-0.2,0.2-0.5,0.3-0.8
399  c0-0.3,0-0.5,0-0.6V117.1z"/>
400  <path class="st0" d="M193.7,112v1.8h-2v4.9c0,0.5,0.1,0.8,0.2,0.9c0.2,0.2,0.5,0.2,0.9,0.2c0.2,0,0.3,0,0.4,0c0.1,0,0.3,0,0.4-0.1
401  v2.1c-0.2,0-0.5,0.1-0.8,0.1c-0.3,0-0.6,0-0.8,0c-0.4,0-0.8,0-1.2-0.1c-0.4-0.1-0.7-0.2-1-0.3c-0.3-0.2-0.5-0.4-0.7-0.7
402  c-0.2-0.3-0.2-0.7-0.2-1.2v-5.8h-1.6V112h1.6v-3h2.7v3H193.7z"/>
403  <path class="st0" d="M195.1,110.5v-2.2h2.7v2.2H195.1z M197.8,112v9.9h-2.7V112H197.8z"/>
404  <path class="st0" d="M200,114.8c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1c0.6-0.2,1.3-0.4,2.1-0.4c0.8,0,1.5,0.1,2.1,0.4
405  c0.6,0.2,1.2,0.6,1.6,1c0.4,0.5,0.8,1,1,1.6c0.2,0.6,0.4,1.4,0.4,2.1c0,0.8-0.1,1.5-0.4,2.1c-0.2,0.6-0.6,1.2-1,1.6
406  c-0.4,0.5-1,0.8-1.6,1c-0.6,0.2-1.3,0.4-2.1,0.4c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1c-0.4-0.5-0.8-1-1-1.6
407  c-0.2-0.6-0.4-1.3-0.4-2.1C199.6,116.2,199.8,115.5,200,114.8z M202.5,118.1c0.1,0.4,0.2,0.7,0.4,1c0.2,0.3,0.4,0.5,0.7,0.7
408  c0.3,0.2,0.7,0.3,1.1,0.3s0.8-0.1,1.2-0.3c0.3-0.2,0.6-0.4,0.7-0.7c0.2-0.3,0.3-0.6,0.4-1c0.1-0.4,0.1-0.8,0.1-1.2
409  c0-0.4,0-0.8-0.1-1.2c-0.1-0.4-0.2-0.7-0.4-1s-0.4-0.5-0.7-0.7c-0.3-0.2-0.7-0.3-1.2-0.3s-0.8,0.1-1.1,0.3
410  c-0.3,0.2-0.5,0.4-0.7,0.7c-0.2,0.3-0.3,0.6-0.4,1c-0.1,0.4-0.1,0.8-0.1,1.2C202.3,117.4,202.4,117.7,202.5,118.1z"/>
411  <path class="st0" d="M214.2,112v1.4h0.1c0.3-0.6,0.8-1,1.3-1.2c0.5-0.3,1.1-0.4,1.7-0.4c0.7,0,1.3,0.1,1.8,0.3
412  c0.5,0.2,0.8,0.5,1.1,0.8c0.3,0.3,0.5,0.8,0.6,1.3c0.1,0.5,0.2,1.1,0.2,1.7v6.1h-2.7v-5.6c0-0.8-0.1-1.4-0.4-1.8
413  c-0.3-0.4-0.7-0.6-1.4-0.6c-0.7,0-1.3,0.2-1.6,0.7c-0.3,0.4-0.5,1.2-0.5,2.2v5.2h-2.7V112H214.2z"/>
414  <path class="st0" d="M225.2,119.4c0.1,0.2,0.3,0.4,0.5,0.5c0.2,0.1,0.4,0.2,0.7,0.3c0.2,0.1,0.5,0.1,0.8,0.1c0.2,0,0.4,0,0.6-0.1
415  c0.2,0,0.4-0.1,0.6-0.2c0.2-0.1,0.3-0.2,0.4-0.4c0.1-0.2,0.2-0.4,0.2-0.6c0-0.4-0.3-0.7-0.8-0.9c-0.5-0.2-1.3-0.4-2.3-0.6
416  c-0.4-0.1-0.8-0.2-1.2-0.3c-0.4-0.1-0.7-0.3-1-0.5c-0.3-0.2-0.5-0.4-0.7-0.7c-0.2-0.3-0.3-0.7-0.3-1.1c0-0.6,0.1-1.2,0.4-1.6
417  c0.2-0.4,0.6-0.7,1-1c0.4-0.2,0.9-0.4,1.4-0.5c0.5-0.1,1-0.1,1.6-0.1c0.5,0,1.1,0.1,1.6,0.2c0.5,0.1,1,0.3,1.3,0.5
418  c0.4,0.2,0.7,0.6,1,1c0.3,0.4,0.4,0.9,0.5,1.5h-2.6c0-0.5-0.2-0.9-0.6-1.1c-0.4-0.2-0.8-0.3-1.3-0.3c-0.2,0-0.3,0-0.5,0
419  c-0.2,0-0.3,0.1-0.5,0.1c-0.1,0.1-0.3,0.2-0.4,0.3c-0.1,0.1-0.2,0.3-0.2,0.5c0,0.2,0.1,0.4,0.3,0.6c0.2,0.2,0.4,0.3,0.7,0.4
420  c0.3,0.1,0.6,0.2,1,0.3c0.4,0.1,0.7,0.2,1.1,0.2c0.4,0.1,0.8,0.2,1.2,0.3c0.4,0.1,0.7,0.3,1,0.5c0.3,0.2,0.5,0.5,0.7,0.8
421  c0.2,0.3,0.3,0.7,0.3,1.2c0,0.6-0.1,1.2-0.4,1.6c-0.3,0.4-0.6,0.8-1,1.1s-0.9,0.5-1.4,0.6c-0.5,0.1-1.1,0.2-1.7,0.2
422  c-0.6,0-1.1-0.1-1.7-0.2c-0.5-0.1-1-0.3-1.5-0.6c-0.4-0.3-0.8-0.6-1-1.1c-0.3-0.4-0.4-1-0.4-1.6h2.6
423  C225,119,225.1,119.2,225.2,119.4z"/>
424  <path class="st0" d="M245.5,108.3l5.1,13.6h-3.1l-1-3h-5.1l-1.1,3h-3l5.2-13.6H245.5z M245.7,116.6l-1.7-5h0l-1.8,5H245.7z"/>
425  <path class="st0" d="M254.1,112v1.8h0c0.1-0.3,0.3-0.6,0.5-0.8c0.2-0.3,0.5-0.5,0.7-0.7c0.3-0.2,0.6-0.3,0.9-0.4
426  c0.3-0.1,0.6-0.2,1-0.2c0.2,0,0.4,0,0.6,0.1v2.5c-0.1,0-0.3,0-0.5-0.1c-0.2,0-0.4,0-0.5,0c-0.5,0-0.9,0.1-1.3,0.2
427  c-0.3,0.2-0.6,0.4-0.8,0.7c-0.2,0.3-0.4,0.6-0.4,1c-0.1,0.4-0.1,0.8-0.1,1.2v4.4h-2.7V112H254.1z"/>
428  <path class="st0" d="M261.5,119.5c0.4,0.4,1,0.6,1.8,0.6c0.5,0,1-0.1,1.4-0.4c0.4-0.3,0.6-0.6,0.7-0.9h2.4c-0.4,1.2-1,2-1.8,2.5
429  c-0.8,0.5-1.7,0.8-2.9,0.8c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1.1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
430  c0-0.7,0.1-1.4,0.4-2.1c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1.1c0.6-0.3,1.3-0.4,2.1-0.4c0.8,0,1.6,0.2,2.2,0.5
431  c0.6,0.3,1.1,0.8,1.5,1.3c0.4,0.5,0.7,1.2,0.9,1.9c0.2,0.7,0.2,1.4,0.2,2.2h-7.1C260.9,118.5,261.1,119.1,261.5,119.5z
432  M264.6,114.3c-0.3-0.4-0.8-0.5-1.5-0.5c-0.4,0-0.8,0.1-1.1,0.2c-0.3,0.1-0.5,0.3-0.7,0.5c-0.2,0.2-0.3,0.4-0.4,0.7
433  c-0.1,0.2-0.1,0.5-0.1,0.6h4.4C265.1,115.2,264.9,114.7,264.6,114.3z"/>
434  <path class="st0" d="M281.6,108.3c0.6,0,1.2,0.1,1.8,0.2s1,0.3,1.4,0.6c0.4,0.3,0.7,0.6,0.9,1c0.2,0.4,0.3,1,0.3,1.6
435  c0,0.7-0.2,1.3-0.5,1.7c-0.3,0.5-0.8,0.8-1.4,1.1c0.8,0.2,1.5,0.7,1.9,1.3c0.4,0.6,0.6,1.3,0.6,2.2c0,0.7-0.1,1.3-0.4,1.8
436  c-0.3,0.5-0.6,0.9-1.1,1.2c-0.5,0.3-1,0.6-1.5,0.7c-0.6,0.2-1.2,0.2-1.8,0.2h-6.6v-13.6H281.6z M281.2,113.8c0.5,0,1-0.1,1.3-0.4
437  c0.3-0.3,0.5-0.7,0.5-1.2c0-0.3-0.1-0.6-0.2-0.8c-0.1-0.2-0.3-0.4-0.5-0.5c-0.2-0.1-0.4-0.2-0.7-0.2c-0.2,0-0.5-0.1-0.8-0.1h-2.8
438  v3.2H281.2z M281.4,119.6c0.3,0,0.6,0,0.8-0.1c0.3-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.5,0.2-0.9
439  c0-0.7-0.2-1.2-0.6-1.5c-0.4-0.3-0.9-0.4-1.6-0.4h-3.3v3.7H281.4z"/>
440  <path class="st0" d="M291.2,119.5c0.4,0.4,1,0.6,1.8,0.6c0.5,0,1-0.1,1.4-0.4c0.4-0.3,0.6-0.6,0.7-0.9h2.4c-0.4,1.2-1,2-1.8,2.5
441  c-0.8,0.5-1.7,0.8-2.9,0.8c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1.1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
442  c0-0.7,0.1-1.4,0.4-2.1c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1.1c0.6-0.3,1.3-0.4,2.1-0.4c0.8,0,1.6,0.2,2.2,0.5
443  c0.6,0.3,1.1,0.8,1.5,1.3c0.4,0.5,0.7,1.2,0.9,1.9c0.2,0.7,0.2,1.4,0.2,2.2h-7.1C290.6,118.5,290.8,119.1,291.2,119.5z
444  M294.3,114.3c-0.3-0.4-0.8-0.5-1.5-0.5c-0.4,0-0.8,0.1-1.1,0.2c-0.3,0.1-0.5,0.3-0.7,0.5c-0.2,0.2-0.3,0.4-0.4,0.7
445  c-0.1,0.2-0.1,0.5-0.1,0.6h4.4C294.8,115.2,294.6,114.7,294.3,114.3z"/>
446  <path class="st0" d="M304.7,112v1.8h-2v4.9c0,0.5,0.1,0.8,0.2,0.9s0.5,0.2,0.9,0.2c0.2,0,0.3,0,0.4,0c0.1,0,0.3,0,0.4-0.1v2.1
447  c-0.2,0-0.5,0.1-0.8,0.1c-0.3,0-0.6,0-0.8,0c-0.4,0-0.8,0-1.2-0.1c-0.4-0.1-0.7-0.2-1-0.3c-0.3-0.2-0.5-0.4-0.7-0.7
448  c-0.2-0.3-0.2-0.7-0.2-1.2v-5.8h-1.6V112h1.6v-3h2.7v3H304.7z"/>
449  <path class="st0" d="M311.4,112v1.8h-2v4.9c0,0.5,0.1,0.8,0.2,0.9c0.2,0.2,0.5,0.2,0.9,0.2c0.2,0,0.3,0,0.4,0c0.1,0,0.3,0,0.4-0.1
450  v2.1c-0.2,0-0.5,0.1-0.8,0.1c-0.3,0-0.6,0-0.8,0c-0.4,0-0.8,0-1.2-0.1c-0.4-0.1-0.7-0.2-1-0.3c-0.3-0.2-0.5-0.4-0.7-0.7
451  c-0.2-0.3-0.2-0.7-0.2-1.2v-5.8h-1.6V112h1.6v-3h2.7v3H311.4z"/>
452  <path class="st0" d="M315.6,119.5c0.4,0.4,1,0.6,1.8,0.6c0.5,0,1-0.1,1.4-0.4c0.4-0.3,0.6-0.6,0.7-0.9h2.4c-0.4,1.2-1,2-1.8,2.5
453  c-0.8,0.5-1.7,0.8-2.9,0.8c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1.1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
454  c0-0.7,0.1-1.4,0.4-2.1c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1.1c0.6-0.3,1.3-0.4,2.1-0.4c0.8,0,1.6,0.2,2.2,0.5
455  c0.6,0.3,1.1,0.8,1.5,1.3c0.4,0.5,0.7,1.2,0.9,1.9c0.2,0.7,0.2,1.4,0.2,2.2h-7.1C315,118.5,315.2,119.1,315.6,119.5z M318.6,114.3
456  c-0.3-0.4-0.8-0.5-1.5-0.5c-0.4,0-0.8,0.1-1.1,0.2c-0.3,0.1-0.5,0.3-0.7,0.5c-0.2,0.2-0.3,0.4-0.4,0.7c-0.1,0.2-0.1,0.5-0.1,0.6
457  h4.4C319.2,115.2,319,114.7,318.6,114.3z"/>
458  <path class="st0" d="M326.2,112v1.8h0c0.1-0.3,0.3-0.6,0.5-0.8c0.2-0.3,0.5-0.5,0.7-0.7c0.3-0.2,0.6-0.3,0.9-0.4
459  c0.3-0.1,0.6-0.2,1-0.2c0.2,0,0.4,0,0.6,0.1v2.5c-0.1,0-0.3,0-0.5-0.1s-0.4,0-0.5,0c-0.5,0-0.9,0.1-1.3,0.2
460  c-0.3,0.2-0.6,0.4-0.8,0.7c-0.2,0.3-0.4,0.6-0.4,1c-0.1,0.4-0.1,0.8-0.1,1.2v4.4h-2.7V112H326.2z"/>
461  <path class="st0" d="M335.6,110.8v-2.5h11.2v2.5h-4.1v11.1h-3v-11.1H335.6z"/>
462  <path class="st0" d="M346,114.8c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1c0.6-0.2,1.3-0.4,2.1-0.4c0.8,0,1.5,0.1,2.1,0.4
463  s1.2,0.6,1.6,1c0.4,0.5,0.8,1,1,1.6c0.2,0.6,0.4,1.4,0.4,2.1c0,0.8-0.1,1.5-0.4,2.1c-0.2,0.6-0.6,1.2-1,1.6c-0.4,0.5-1,0.8-1.6,1
464  s-1.3,0.4-2.1,0.4c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
465  C345.6,116.2,345.7,115.5,346,114.8z M348.4,118.1c0.1,0.4,0.2,0.7,0.4,1c0.2,0.3,0.4,0.5,0.7,0.7c0.3,0.2,0.7,0.3,1.1,0.3
466  s0.8-0.1,1.2-0.3c0.3-0.2,0.6-0.4,0.7-0.7c0.2-0.3,0.3-0.6,0.4-1c0.1-0.4,0.1-0.8,0.1-1.2c0-0.4,0-0.8-0.1-1.2
467  c-0.1-0.4-0.2-0.7-0.4-1s-0.4-0.5-0.7-0.7c-0.3-0.2-0.7-0.3-1.2-0.3s-0.8,0.1-1.1,0.3c-0.3,0.2-0.5,0.4-0.7,0.7
468  c-0.2,0.3-0.3,0.6-0.4,1c-0.1,0.4-0.1,0.8-0.1,1.2C348.3,117.4,348.3,117.7,348.4,118.1z"/>
469  <path class="st0" d="M366.9,122.6c-0.1,0.5-0.3,1-0.7,1.4c-0.4,0.4-0.9,0.8-1.5,1.1c-0.7,0.3-1.6,0.5-2.7,0.5
470  c-0.5,0-1-0.1-1.5-0.2c-0.5-0.1-1-0.3-1.4-0.6c-0.4-0.3-0.8-0.6-1-1c-0.3-0.4-0.4-0.9-0.5-1.4h2.7c0.1,0.5,0.4,0.9,0.7,1.1
471  c0.4,0.2,0.8,0.3,1.3,0.3c0.8,0,1.3-0.2,1.7-0.7c0.3-0.5,0.5-1,0.5-1.7v-1.3h0c-0.3,0.5-0.7,0.9-1.3,1.2c-0.5,0.2-1.1,0.4-1.7,0.4
472  c-0.7,0-1.4-0.1-1.9-0.4c-0.5-0.3-1-0.6-1.3-1.1c-0.3-0.5-0.6-1-0.8-1.6c-0.2-0.6-0.2-1.2-0.2-1.9c0-0.6,0.1-1.3,0.3-1.8
473  s0.5-1.1,0.8-1.6c0.4-0.5,0.8-0.8,1.3-1.1c0.5-0.3,1.1-0.4,1.8-0.4c0.6,0,1.2,0.1,1.7,0.4c0.5,0.2,0.9,0.6,1.2,1.2h0V112h2.6v9.2
474  C367,121.6,367,122.1,366.9,122.6z M363.2,119.3c0.3-0.2,0.5-0.4,0.7-0.6c0.2-0.3,0.3-0.5,0.4-0.9c0.1-0.3,0.1-0.7,0.1-1
475  c0-0.4,0-0.8-0.1-1.2s-0.2-0.7-0.4-1c-0.2-0.3-0.4-0.5-0.7-0.7c-0.3-0.2-0.7-0.2-1.1-0.2c-0.4,0-0.7,0.1-1,0.2
476  c-0.3,0.2-0.5,0.4-0.7,0.6c-0.2,0.3-0.3,0.6-0.4,0.9c-0.1,0.3-0.1,0.7-0.1,1.1c0,0.4,0,0.7,0.1,1.1c0.1,0.4,0.2,0.7,0.4,0.9
477  c0.2,0.3,0.4,0.5,0.7,0.7c0.3,0.2,0.6,0.3,1,0.3C362.5,119.6,362.9,119.5,363.2,119.3z"/>
478  <path class="st0" d="M372.1,119.5c0.4,0.4,1,0.6,1.8,0.6c0.5,0,1-0.1,1.4-0.4c0.4-0.3,0.6-0.6,0.7-0.9h2.4c-0.4,1.2-1,2-1.8,2.5
479  c-0.8,0.5-1.7,0.8-2.9,0.8c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1.1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
480  c0-0.7,0.1-1.4,0.4-2.1c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1.1c0.6-0.3,1.3-0.4,2.1-0.4c0.8,0,1.6,0.2,2.2,0.5
481  c0.6,0.3,1.1,0.8,1.5,1.3c0.4,0.5,0.7,1.2,0.9,1.9c0.2,0.7,0.2,1.4,0.2,2.2h-7.1C371.5,118.5,371.7,119.1,372.1,119.5z
482  M375.2,114.3c-0.3-0.4-0.8-0.5-1.5-0.5c-0.4,0-0.8,0.1-1.1,0.2c-0.3,0.1-0.5,0.3-0.7,0.5c-0.2,0.2-0.3,0.4-0.4,0.7
483  c-0.1,0.2-0.1,0.5-0.1,0.6h4.4C375.7,115.2,375.5,114.7,375.2,114.3z"/>
484  <path class="st0" d="M385.6,112v1.8h-2v4.9c0,0.5,0.1,0.8,0.2,0.9s0.5,0.2,0.9,0.2c0.2,0,0.3,0,0.4,0c0.1,0,0.3,0,0.4-0.1v2.1
485  c-0.2,0-0.5,0.1-0.8,0.1c-0.3,0-0.6,0-0.8,0c-0.4,0-0.8,0-1.2-0.1c-0.4-0.1-0.7-0.2-1-0.3c-0.3-0.2-0.5-0.4-0.7-0.7
486  c-0.2-0.3-0.2-0.7-0.2-1.2v-5.8h-1.6V112h1.6v-3h2.7v3H385.6z"/>
487  <path class="st0" d="M389.6,108.3v5.1h0.1c0.3-0.6,0.8-1,1.3-1.2c0.5-0.3,1.1-0.4,1.6-0.4c0.7,0,1.3,0.1,1.8,0.3
488  c0.5,0.2,0.8,0.5,1.1,0.8c0.3,0.3,0.5,0.8,0.6,1.3c0.1,0.5,0.2,1.1,0.2,1.7v6.1h-2.7v-5.6c0-0.8-0.1-1.4-0.4-1.8
489  c-0.3-0.4-0.7-0.6-1.4-0.6c-0.7,0-1.3,0.2-1.6,0.7c-0.3,0.4-0.5,1.2-0.5,2.2v5.2h-2.7v-13.6H389.6z"/>
490  <path class="st0" d="M401.1,119.5c0.4,0.4,1,0.6,1.8,0.6c0.5,0,1-0.1,1.4-0.4c0.4-0.3,0.6-0.6,0.7-0.9h2.4c-0.4,1.2-1,2-1.8,2.5
491  c-0.8,0.5-1.7,0.8-2.9,0.8c-0.8,0-1.5-0.1-2.1-0.4c-0.6-0.2-1.2-0.6-1.6-1.1c-0.4-0.5-0.8-1-1-1.6c-0.2-0.6-0.4-1.3-0.4-2.1
492  c0-0.7,0.1-1.4,0.4-2.1c0.2-0.6,0.6-1.2,1-1.6c0.4-0.5,1-0.8,1.6-1.1c0.6-0.3,1.3-0.4,2.1-0.4c0.8,0,1.6,0.2,2.2,0.5
493  c0.6,0.3,1.1,0.8,1.5,1.3c0.4,0.5,0.7,1.2,0.9,1.9c0.2,0.7,0.2,1.4,0.2,2.2h-7.1C400.5,118.5,400.7,119.1,401.1,119.5z
494  M404.2,114.3c-0.3-0.4-0.8-0.5-1.5-0.5c-0.4,0-0.8,0.1-1.1,0.2c-0.3,0.1-0.5,0.3-0.7,0.5c-0.2,0.2-0.3,0.4-0.4,0.7
495  c-0.1,0.2-0.1,0.5-0.1,0.6h4.4C404.7,115.2,404.5,114.7,404.2,114.3z"/>
496  <path class="st0" d="M411.7,112v1.8h0c0.1-0.3,0.3-0.6,0.5-0.8c0.2-0.3,0.5-0.5,0.7-0.7c0.3-0.2,0.6-0.3,0.9-0.4
497  c0.3-0.1,0.6-0.2,1-0.2c0.2,0,0.4,0,0.6,0.1v2.5c-0.1,0-0.3,0-0.5-0.1c-0.2,0-0.4,0-0.5,0c-0.5,0-0.9,0.1-1.3,0.2
498  c-0.3,0.2-0.6,0.4-0.8,0.7c-0.2,0.3-0.4,0.6-0.4,1c-0.1,0.4-0.1,0.8-0.1,1.2v4.4h-2.7V112H411.7z"/>
499  </g>)raw";
500 
501 static constexpr const char* svg2 = R"raw(
502 <g>
503  <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="30.5941" y1="54.4356" x2="30.5941" y2="127.221">
504  <stop offset="0.1127" style="stop-color:#235075"/>
505  <stop offset="0.7537" style="stop-color:#0C96D0"/>
506  </linearGradient>
507  <path class="st1" d="M46.8,86.8L46.8,86.8c-17.9,0-32.3-14.5-32.3-32.3v72.8h0l0,0v0h32.3V95.7h0c0-0.3,0-0.5,0-0.8V86.8z"/>
508 
509  <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-239.4459" y1="105.6518" x2="-174.7478" y2="105.6518" gradientTransform="matrix(-1 0 0 -1 -128 176.2619)">
510  <stop offset="0.197" style="stop-color:#144A71"/>
511  <stop offset="0.3768" style="stop-color:#ADC5D1"/>
512  <stop offset="0.6305" style="stop-color:#0C96D0"/>
513  <stop offset="0.8873" style="stop-color:#235075"/>
514  </linearGradient>
515  <path class="st2" d="M46.7,54.4c0,17.9,14.5,32.3,32.3,32.3C79.1,68.9,64.6,54.4,46.7,54.4z"/>
516  <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="95.2714" y1="86.7846" x2="95.2714" y2="13.9992">
517  <stop offset="0.1127" style="stop-color:#235075"/>
518  <stop offset="0.7537" style="stop-color:#0C96D0"/>
519  </linearGradient>
520  <path class="st3" d="M111.4,14H79.1v31.5h0c0,0.3,0,0.5,0,0.8v8.1h0c12,0,22.4,6.5,28,16.2c2.8,4.8,4.3,10.3,4.3,16.2L111.4,14
521  L111.4,14L111.4,14z"/>
522  <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="21.8517" y1="75.288" x2="64.9416" y2="32.1981">
523  <stop offset="0.2463" style="stop-color:#0C96D0"/>
524  <stop offset="0.8873" style="stop-color:#235075"/>
525  </linearGradient>
526  <path class="st4" d="M46.7,54.4v-8.1c0-0.3,0-0.5,0-0.8h0V14H14.4v0l0,0h0v40.4v0c0,17.9,14.5,32.3,32.3,32.3h0h32.3
527  C61.2,86.8,46.7,72.3,46.7,54.4z"/>
528  <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="48.0744" y1="53.109" x2="116.8162" y2="121.8507">
529  <stop offset="0.1127" style="stop-color:#235075"/>
530  <stop offset="0.7537" style="stop-color:#0C96D0"/>
531  </linearGradient>
532  <path class="st5" d="M107.1,70.6c-5.6-9.7-16-16.2-28-16.2h0H46.7c17.9,0,32.3,14.5,32.3,32.3v8.1c0,0.3,0,0.5,0,0.8h0v31.5h32.3
533  v0l0,0h0V86.8v0C111.4,80.9,109.9,75.4,107.1,70.6z"/>
534  </g>
535  <g>
536  <path class="st6" d="M174.6,59.9h-32v21.7h37.5V95h-54.2V14H180v13.5h-37.4v19.3h32V59.9z"/>
537  <path class="st6" d="M206.5,81.6h35.4V95h-52V14h16.7V81.6z"/>
538  <path class="st6" d="M269.2,95h-16.7V14h16.7V95z"/>
539  <path class="st6" d="M348,68c-0.6,8.7-3.8,15.6-9.6,20.6c-5.8,5-13.4,7.5-22.9,7.5c-10.4,0-18.5-3.5-24.5-10.5
540  c-5.9-7-8.9-16.6-8.9-28.8v-4.9c0-7.8,1.4-14.6,4.1-20.6c2.7-5.9,6.7-10.5,11.7-13.7c5.1-3.2,11-4.8,17.7-4.8
541  c9.3,0,16.8,2.5,22.5,7.5c5.7,5,9,12,9.9,21.1h-16.7c-0.4-5.2-1.9-9-4.4-11.4s-6.3-3.5-11.4-3.5c-5.6,0-9.7,2-12.5,6
542  s-4.2,10.2-4.2,18.5v6.1c0,8.7,1.3,15.1,4,19.2c2.6,4,6.8,6.1,12.5,6.1c5.1,0,9-1.2,11.5-3.5c2.5-2.4,4-6,4.4-10.9H348z"/>
543  <path class="st6" d="M400.9,73.7c0-3.2-1.1-5.6-3.3-7.3c-2.2-1.7-6.2-3.5-12-5.3c-5.8-1.9-10.3-3.7-13.7-5.5
544  c-9.2-5-13.8-11.7-13.8-20.1c0-4.4,1.2-8.3,3.7-11.7c2.5-3.4,6-6.1,10.6-8s9.8-2.9,15.5-2.9c5.8,0,10.9,1,15.4,3.1
545  c4.5,2.1,8,5.1,10.5,8.9c2.5,3.8,3.7,8.2,3.7,13h-16.7c0-3.7-1.2-6.6-3.5-8.6c-2.3-2.1-5.6-3.1-9.8-3.1c-4.1,0-7.2,0.9-9.5,2.6
546  c-2.3,1.7-3.4,4-3.4,6.8c0,2.6,1.3,4.8,4,6.6c2.6,1.8,6.5,3.4,11.7,5c9.5,2.9,16.4,6.4,20.7,10.6c4.3,4.2,6.5,9.5,6.5,15.8
547  c0,7-2.6,12.5-7.9,16.5c-5.3,4-12.4,6-21.4,6c-6.2,0-11.9-1.1-17-3.4c-5.1-2.3-9-5.4-11.7-9.4c-2.7-4-4-8.6-4-13.8h16.7
548  c0,8.9,5.3,13.4,16,13.4c4,0,7.1-0.8,9.3-2.4C399.8,78.9,400.9,76.6,400.9,73.7z"/>
549  </g>
550 </g>
551 </svg>)raw";
552 
553 static constexpr const char* indexPage3 = R"raw(<br>
554  <h1>Web server interface</h1>
555  <h2>
556  <a href="https://github.com/GMLC-TDC/HELICS">HELICS Source repository</a><br>
557  <a href="https://docs.helics.org/en/latest/index.html"
558  >HELICS Documentation</a
559  ><br>
560 
561 <a href="https://docs.helics.org/en/latest/user-guide/advanced_topics/webserver.html"
562  >Using the web server</a
563  ><br>
564 
565 <a href="https://docs.helics.org/en/latest/user-guide/advanced_topics/queries.html"
566  >Available queries</a
567  ><br>
568  </h2>
569  </body>
570 </html>
571 )raw";
572 
573 } // namespace helics::webserver