@greenpandastudios/aug-cli 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/THIRD_PARTY_NOTICES.md +18 -0
  4. package/bin/aug.mjs +3 -0
  5. package/docs/api/crypto.md +351 -0
  6. package/docs/api/io.md +207 -0
  7. package/docs/api/json.md +21 -0
  8. package/docs/api/memory.md +109 -0
  9. package/docs/api/time.md +54 -0
  10. package/docs/api/web.md +184 -0
  11. package/docs/assets/benchmarks/execution.svg +2978 -0
  12. package/docs/assets/benchmarks/http.svg +1674 -0
  13. package/docs/assets/benchmarks/improvements.svg +2315 -0
  14. package/docs/assets/benchmarks/memory.svg +1891 -0
  15. package/docs/benchmark-baseline.json +1087 -0
  16. package/docs/benchmark-results.json +91123 -0
  17. package/docs/benchmarks.json +38 -0
  18. package/docs/compatibility.md +42 -0
  19. package/docs/concurrency-implementation.md +18 -0
  20. package/docs/diagnostics.md +97 -0
  21. package/docs/docker.md +35 -0
  22. package/docs/example-projects.json +26 -0
  23. package/docs/examples/approved-design/counters.md +253 -0
  24. package/docs/examples/approved-design/dependencies/august/0.19.0/io/contracts.md +395 -0
  25. package/docs/examples/approved-design/domain/app.md +165 -0
  26. package/docs/examples/approved-design/domain/export.md +83 -0
  27. package/docs/examples/approved-design/domain/models.md +80 -0
  28. package/docs/examples/approved-design/domain/numbers.md +248 -0
  29. package/docs/examples/approved-design/index.md +39 -0
  30. package/docs/examples/approved-design/main-yaml.md +24 -0
  31. package/docs/examples/approved-design/main.md +215 -0
  32. package/docs/examples/benchmark/index.md +33 -0
  33. package/docs/examples/benchmark/main-yaml.md +17 -0
  34. package/docs/examples/benchmark/main.md +117 -0
  35. package/docs/examples/cli-args/index.md +32 -0
  36. package/docs/examples/cli-args/main.md +107 -0
  37. package/docs/examples/collections/index.md +32 -0
  38. package/docs/examples/collections/main.md +118 -0
  39. package/docs/examples/collections-benchmark/index.md +34 -0
  40. package/docs/examples/collections-benchmark/main.md +115 -0
  41. package/docs/examples/cpu-benchmark/index.md +34 -0
  42. package/docs/examples/cpu-benchmark/main.md +90 -0
  43. package/docs/examples/developer-workflow/calculator.md +357 -0
  44. package/docs/examples/developer-workflow/dependencies/august/0.19.0/io/contracts.md +395 -0
  45. package/docs/examples/developer-workflow/index.md +37 -0
  46. package/docs/examples/developer-workflow/logging/console.md +124 -0
  47. package/docs/examples/developer-workflow/logging/export.md +70 -0
  48. package/docs/examples/developer-workflow/logging/logger.md +111 -0
  49. package/docs/examples/developer-workflow/main.md +172 -0
  50. package/docs/examples/drop/index.md +33 -0
  51. package/docs/examples/drop/main.md +85 -0
  52. package/docs/examples/drop/resource.md +95 -0
  53. package/docs/examples/errors/errors.md +85 -0
  54. package/docs/examples/errors/index.md +33 -0
  55. package/docs/examples/errors/main.md +92 -0
  56. package/docs/examples/ffi/index.md +33 -0
  57. package/docs/examples/ffi/main.md +75 -0
  58. package/docs/examples/ffi/native.md +93 -0
  59. package/docs/examples/generic-di/dependencies/august/0.19.0/io/contracts.md +395 -0
  60. package/docs/examples/generic-di/index.md +33 -0
  61. package/docs/examples/generic-di/main.md +111 -0
  62. package/docs/examples/generic-di/types.md +180 -0
  63. package/docs/examples/generics/index.md +33 -0
  64. package/docs/examples/generics/main.md +120 -0
  65. package/docs/examples/generics/types.md +189 -0
  66. package/docs/examples/hello/app/export.md +67 -0
  67. package/docs/examples/hello/app/greeter.md +190 -0
  68. package/docs/examples/hello/dependencies/august/0.19.0/io/contracts.md +395 -0
  69. package/docs/examples/hello/index.md +37 -0
  70. package/docs/examples/hello/logging/console.md +121 -0
  71. package/docs/examples/hello/logging/export.md +71 -0
  72. package/docs/examples/hello/logging/logger.md +120 -0
  73. package/docs/examples/hello/main.md +115 -0
  74. package/docs/examples/http-benchmark/index.md +35 -0
  75. package/docs/examples/http-benchmark/main.md +79 -0
  76. package/docs/examples/http-benchmark/routes.md +88 -0
  77. package/docs/examples/index.md +60 -0
  78. package/docs/examples/interceptors/app.md +250 -0
  79. package/docs/examples/interceptors/dependencies/august/0.19.0/io/contracts.md +395 -0
  80. package/docs/examples/interceptors/index.md +35 -0
  81. package/docs/examples/interceptors/interceptors.md +284 -0
  82. package/docs/examples/interceptors/logging.md +155 -0
  83. package/docs/examples/interceptors/main.md +162 -0
  84. package/docs/examples/json-benchmark/data.md +71 -0
  85. package/docs/examples/json-benchmark/dependencies/august/0.19.0/json/contracts.md +103 -0
  86. package/docs/examples/json-benchmark/index.md +35 -0
  87. package/docs/examples/json-benchmark/main.md +131 -0
  88. package/docs/examples/new-syntax/console.md +118 -0
  89. package/docs/examples/new-syntax/dependencies/august/0.19.0/io/contracts.md +395 -0
  90. package/docs/examples/new-syntax/greeter.md +145 -0
  91. package/docs/examples/new-syntax/index.md +36 -0
  92. package/docs/examples/new-syntax/logger.md +111 -0
  93. package/docs/examples/new-syntax/main.md +135 -0
  94. package/docs/examples/new-syntax/math.md +79 -0
  95. package/docs/examples/oidc-login/client/contracts.md +151 -0
  96. package/docs/examples/oidc-login/client/endpoints.md +263 -0
  97. package/docs/examples/oidc-login/client/export.md +107 -0
  98. package/docs/examples/oidc-login/client/login.md +515 -0
  99. package/docs/examples/oidc-login/client/logout.md +249 -0
  100. package/docs/examples/oidc-login/client/protocol.md +595 -0
  101. package/docs/examples/oidc-login/client/session.md +297 -0
  102. package/docs/examples/oidc-login/client/views.md +144 -0
  103. package/docs/examples/oidc-login/common/export.md +115 -0
  104. package/docs/examples/oidc-login/common/headers.md +162 -0
  105. package/docs/examples/oidc-login/common/keys.md +336 -0
  106. package/docs/examples/oidc-login/common/settings.md +116 -0
  107. package/docs/examples/oidc-login/common/views.md +103 -0
  108. package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/contracts.md +925 -0
  109. package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/jose.md +434 -0
  110. package/docs/examples/oidc-login/dependencies/august/0.19.0/json/contracts.md +103 -0
  111. package/docs/examples/oidc-login/dependencies/august/0.19.0/memory/store.md +374 -0
  112. package/docs/examples/oidc-login/dependencies/august/0.19.0/time/contracts.md +150 -0
  113. package/docs/examples/oidc-login/dependencies/august/0.19.0/web/contracts.md +532 -0
  114. package/docs/examples/oidc-login/index.md +57 -0
  115. package/docs/examples/oidc-login/main-yaml.md +28 -0
  116. package/docs/examples/oidc-login/main.md +283 -0
  117. package/docs/examples/oidc-login/provider/authorization.md +457 -0
  118. package/docs/examples/oidc-login/provider/contracts.md +267 -0
  119. package/docs/examples/oidc-login/provider/credentials.md +148 -0
  120. package/docs/examples/oidc-login/provider/discovery.md +215 -0
  121. package/docs/examples/oidc-login/provider/export.md +131 -0
  122. package/docs/examples/oidc-login/provider/token.md +364 -0
  123. package/docs/examples/oidc-login/provider/userinfo.md +228 -0
  124. package/docs/examples/oidc-login/provider/views.md +137 -0
  125. package/docs/examples/ownership/counter.md +140 -0
  126. package/docs/examples/ownership/index.md +33 -0
  127. package/docs/examples/ownership/main.md +90 -0
  128. package/docs/examples/ownership-transfer/dependencies/august/0.19.0/io/contracts.md +395 -0
  129. package/docs/examples/ownership-transfer/index.md +33 -0
  130. package/docs/examples/ownership-transfer/main.md +125 -0
  131. package/docs/examples/ownership-transfer/resource.md +150 -0
  132. package/docs/examples/packages-app/dependencies/packages/@example/aug-math/0.1.0/arithmetic.md +117 -0
  133. package/docs/examples/packages-app/index.md +34 -0
  134. package/docs/examples/packages-app/main-yaml.md +18 -0
  135. package/docs/examples/packages-app/main.md +80 -0
  136. package/docs/examples/packages-math/aug-package-json.md +24 -0
  137. package/docs/examples/packages-math/index.md +36 -0
  138. package/docs/examples/packages-math/package-json.md +25 -0
  139. package/docs/examples/packages-math/src/arithmetic.md +121 -0
  140. package/docs/examples/packages-math/src/export.md +63 -0
  141. package/docs/examples/startup-benchmark/index.md +34 -0
  142. package/docs/examples/startup-benchmark/main.md +68 -0
  143. package/docs/examples/visibility/counter.md +142 -0
  144. package/docs/examples/visibility/index.md +33 -0
  145. package/docs/examples/visibility/main.md +96 -0
  146. package/docs/examples.json +47 -0
  147. package/docs/getting-started.md +5 -0
  148. package/docs/grammar.md +136 -0
  149. package/docs/implementation-map.md +106 -0
  150. package/docs/index.md +46 -0
  151. package/docs/language-conformance.md +30 -0
  152. package/docs/language-constructs.md +1461 -0
  153. package/docs/language-design-audit.md +147 -0
  154. package/docs/maintaining-docs.md +43 -0
  155. package/docs/packages.md +184 -0
  156. package/docs/performance.md +535 -0
  157. package/docs/production-readiness.md +39 -0
  158. package/docs/reference.md +361 -0
  159. package/docs/release-review.md +23 -0
  160. package/docs/releasing.md +79 -0
  161. package/docs/roadmap.md +13 -0
  162. package/docs/specifications.md +86 -0
  163. package/docs/testing.md +120 -0
  164. package/docs/tooling.md +197 -0
  165. package/docs/web-implementation-plan.md +39 -0
  166. package/docs/web-library-gaps.md +27 -0
  167. package/docs/web.md +197 -0
  168. package/examples/approved-design/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  169. package/examples/approved-design/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  170. package/examples/approved-design/.aug-spec/manifest.json +14 -0
  171. package/examples/approved-design/counters.aug +22 -0
  172. package/examples/approved-design/counters.aug.md +177 -0
  173. package/examples/approved-design/domain/app.aug +12 -0
  174. package/examples/approved-design/domain/app.aug.md +97 -0
  175. package/examples/approved-design/domain/export.aug +5 -0
  176. package/examples/approved-design/domain/export.aug.md +25 -0
  177. package/examples/approved-design/domain/models.aug +2 -0
  178. package/examples/approved-design/domain/models.aug.md +30 -0
  179. package/examples/approved-design/domain/numbers.aug +29 -0
  180. package/examples/approved-design/domain/numbers.aug.md +141 -0
  181. package/examples/approved-design/main.aug +26 -0
  182. package/examples/approved-design/main.aug.md +108 -0
  183. package/examples/approved-design/main.yaml +8 -0
  184. package/examples/benchmark/.aug-spec/manifest.json +7 -0
  185. package/examples/benchmark/main.aug +17 -0
  186. package/examples/benchmark/main.aug.md +43 -0
  187. package/examples/benchmark/main.yaml +1 -0
  188. package/examples/cli-args/.aug-spec/manifest.json +7 -0
  189. package/examples/cli-args/main.aug +15 -0
  190. package/examples/cli-args/main.aug.md +38 -0
  191. package/examples/collections/.aug-spec/manifest.json +7 -0
  192. package/examples/collections/main.aug +18 -0
  193. package/examples/collections/main.aug.md +43 -0
  194. package/examples/developer-workflow/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  195. package/examples/developer-workflow/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  196. package/examples/developer-workflow/.aug-spec/manifest.json +13 -0
  197. package/examples/developer-workflow/calculator.aug +55 -0
  198. package/examples/developer-workflow/calculator.aug.md +228 -0
  199. package/examples/developer-workflow/logging/console.aug +8 -0
  200. package/examples/developer-workflow/logging/console.aug.md +67 -0
  201. package/examples/developer-workflow/logging/export.aug +2 -0
  202. package/examples/developer-workflow/logging/export.aug.md +19 -0
  203. package/examples/developer-workflow/logging/logger.aug +6 -0
  204. package/examples/developer-workflow/logging/logger.aug.md +57 -0
  205. package/examples/developer-workflow/main.aug +25 -0
  206. package/examples/developer-workflow/main.aug.md +79 -0
  207. package/examples/drop/.aug-spec/manifest.json +8 -0
  208. package/examples/drop/main.aug +3 -0
  209. package/examples/drop/main.aug.md +35 -0
  210. package/examples/drop/resource.aug +8 -0
  211. package/examples/drop/resource.aug.md +44 -0
  212. package/examples/errors/.aug-spec/manifest.json +8 -0
  213. package/examples/errors/errors.aug +6 -0
  214. package/examples/errors/errors.aug.md +33 -0
  215. package/examples/errors/main.aug +7 -0
  216. package/examples/errors/main.aug.md +36 -0
  217. package/examples/ffi/.aug-spec/manifest.json +8 -0
  218. package/examples/ffi/main.aug +2 -0
  219. package/examples/ffi/main.aug.md +27 -0
  220. package/examples/ffi/native.aug +6 -0
  221. package/examples/ffi/native.aug.md +43 -0
  222. package/examples/generic-di/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  223. package/examples/generic-di/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  224. package/examples/generic-di/.aug-spec/manifest.json +10 -0
  225. package/examples/generic-di/main.aug +9 -0
  226. package/examples/generic-di/main.aug.md +49 -0
  227. package/examples/generic-di/types.aug +17 -0
  228. package/examples/generic-di/types.aug.md +124 -0
  229. package/examples/generics/.aug-spec/manifest.json +8 -0
  230. package/examples/generics/main.aug +9 -0
  231. package/examples/generics/main.aug.md +58 -0
  232. package/examples/generics/types.aug +19 -0
  233. package/examples/generics/types.aug.md +132 -0
  234. package/examples/hello/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  235. package/examples/hello/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  236. package/examples/hello/.aug-spec/manifest.json +14 -0
  237. package/examples/hello/app/export.aug +1 -0
  238. package/examples/hello/app/export.aug.md +17 -0
  239. package/examples/hello/app/greeter.aug +22 -0
  240. package/examples/hello/app/greeter.aug.md +109 -0
  241. package/examples/hello/logging/console.aug +7 -0
  242. package/examples/hello/logging/console.aug.md +65 -0
  243. package/examples/hello/logging/export.aug +2 -0
  244. package/examples/hello/logging/export.aug.md +19 -0
  245. package/examples/hello/logging/logger.aug +9 -0
  246. package/examples/hello/logging/logger.aug.md +59 -0
  247. package/examples/hello/main.aug +9 -0
  248. package/examples/hello/main.aug.md +49 -0
  249. package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  250. package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  251. package/examples/interceptors/.aug-spec/manifest.json +12 -0
  252. package/examples/interceptors/app.aug +28 -0
  253. package/examples/interceptors/app.aug.md +162 -0
  254. package/examples/interceptors/interceptors.aug +40 -0
  255. package/examples/interceptors/interceptors.aug.md +180 -0
  256. package/examples/interceptors/logging.aug +12 -0
  257. package/examples/interceptors/logging.aug.md +96 -0
  258. package/examples/interceptors/main.aug +22 -0
  259. package/examples/interceptors/main.aug.md +76 -0
  260. package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  261. package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  262. package/examples/new-syntax/.aug-spec/manifest.json +13 -0
  263. package/examples/new-syntax/console.aug +7 -0
  264. package/examples/new-syntax/console.aug.md +63 -0
  265. package/examples/new-syntax/greeter.aug +10 -0
  266. package/examples/new-syntax/greeter.aug.md +89 -0
  267. package/examples/new-syntax/logger.aug +6 -0
  268. package/examples/new-syntax/logger.aug.md +57 -0
  269. package/examples/new-syntax/main.aug +12 -0
  270. package/examples/new-syntax/main.aug.md +64 -0
  271. package/examples/new-syntax/math.aug +3 -0
  272. package/examples/new-syntax/math.aug.md +29 -0
  273. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/contracts.aug +73 -0
  274. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/contracts.aug.md +791 -0
  275. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/jose.aug +68 -0
  276. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/jose.aug.md +266 -0
  277. package/examples/oidc-login/.aug-spec/august/0.19.0/json/contracts.aug +6 -0
  278. package/examples/oidc-login/.aug-spec/august/0.19.0/json/contracts.aug.md +55 -0
  279. package/examples/oidc-login/.aug-spec/august/0.19.0/memory/store.aug +45 -0
  280. package/examples/oidc-login/.aug-spec/august/0.19.0/memory/store.aug.md +250 -0
  281. package/examples/oidc-login/.aug-spec/august/0.19.0/time/contracts.aug +11 -0
  282. package/examples/oidc-login/.aug-spec/august/0.19.0/time/contracts.aug.md +96 -0
  283. package/examples/oidc-login/.aug-spec/august/0.19.0/web/contracts.aug +58 -0
  284. package/examples/oidc-login/.aug-spec/august/0.19.0/web/contracts.aug.md +420 -0
  285. package/examples/oidc-login/.aug-spec/manifest.json +40 -0
  286. package/examples/oidc-login/README.md +29 -0
  287. package/examples/oidc-login/client/contracts.aug +7 -0
  288. package/examples/oidc-login/client/contracts.aug.md +80 -0
  289. package/examples/oidc-login/client/endpoints.aug +21 -0
  290. package/examples/oidc-login/client/endpoints.aug.md +161 -0
  291. package/examples/oidc-login/client/export.aug +7 -0
  292. package/examples/oidc-login/client/export.aug.md +29 -0
  293. package/examples/oidc-login/client/login.aug +58 -0
  294. package/examples/oidc-login/client/login.aug.md +331 -0
  295. package/examples/oidc-login/client/logout.aug +18 -0
  296. package/examples/oidc-login/client/logout.aug.md +150 -0
  297. package/examples/oidc-login/client/protocol.aug +106 -0
  298. package/examples/oidc-login/client/protocol.aug.md +326 -0
  299. package/examples/oidc-login/client/session.aug +34 -0
  300. package/examples/oidc-login/client/session.aug.md +155 -0
  301. package/examples/oidc-login/client/views.aug +21 -0
  302. package/examples/oidc-login/client/views.aug.md +68 -0
  303. package/examples/oidc-login/common/export.aug +9 -0
  304. package/examples/oidc-login/common/export.aug.md +33 -0
  305. package/examples/oidc-login/common/headers.aug +11 -0
  306. package/examples/oidc-login/common/headers.aug.md +79 -0
  307. package/examples/oidc-login/common/keys.aug +37 -0
  308. package/examples/oidc-login/common/keys.aug.md +207 -0
  309. package/examples/oidc-login/common/settings.aug +4 -0
  310. package/examples/oidc-login/common/settings.aug.md +47 -0
  311. package/examples/oidc-login/common/views.aug +16 -0
  312. package/examples/oidc-login/common/views.aug.md +34 -0
  313. package/examples/oidc-login/main.aug +39 -0
  314. package/examples/oidc-login/main.aug.md +166 -0
  315. package/examples/oidc-login/main.yaml +12 -0
  316. package/examples/oidc-login/provider/authorization.aug +59 -0
  317. package/examples/oidc-login/provider/authorization.aug.md +264 -0
  318. package/examples/oidc-login/provider/contracts.aug +15 -0
  319. package/examples/oidc-login/provider/contracts.aug.md +193 -0
  320. package/examples/oidc-login/provider/credentials.aug +10 -0
  321. package/examples/oidc-login/provider/credentials.aug.md +64 -0
  322. package/examples/oidc-login/provider/discovery.aug +13 -0
  323. package/examples/oidc-login/provider/discovery.aug.md +133 -0
  324. package/examples/oidc-login/provider/export.aug +13 -0
  325. package/examples/oidc-login/provider/export.aug.md +41 -0
  326. package/examples/oidc-login/provider/token.aug +37 -0
  327. package/examples/oidc-login/provider/token.aug.md +223 -0
  328. package/examples/oidc-login/provider/userinfo.aug +26 -0
  329. package/examples/oidc-login/provider/userinfo.aug.md +104 -0
  330. package/examples/oidc-login/provider/views.aug +18 -0
  331. package/examples/oidc-login/provider/views.aug.md +63 -0
  332. package/examples/ownership/.aug-spec/manifest.json +8 -0
  333. package/examples/ownership/counter.aug +14 -0
  334. package/examples/ownership/counter.aug.md +85 -0
  335. package/examples/ownership/main.aug +4 -0
  336. package/examples/ownership/main.aug.md +38 -0
  337. package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  338. package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  339. package/examples/ownership-transfer/.aug-spec/manifest.json +10 -0
  340. package/examples/ownership-transfer/main.aug +9 -0
  341. package/examples/ownership-transfer/main.aug.md +63 -0
  342. package/examples/ownership-transfer/resource.aug +16 -0
  343. package/examples/ownership-transfer/resource.aug.md +89 -0
  344. package/examples/packages/README.md +15 -0
  345. package/examples/packages/app/.aug-spec/manifest.json +9 -0
  346. package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug +9 -0
  347. package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug.md +63 -0
  348. package/examples/packages/app/main.aug +2 -0
  349. package/examples/packages/app/main.aug.md +33 -0
  350. package/examples/packages/app/main.yaml +2 -0
  351. package/examples/packages/math/.aug-spec/manifest.json +8 -0
  352. package/examples/packages/math/README.md +3 -0
  353. package/examples/packages/math/aug-package.json +8 -0
  354. package/examples/packages/math/package.json +9 -0
  355. package/examples/packages/math/src/arithmetic.aug +8 -0
  356. package/examples/packages/math/src/arithmetic.aug.md +63 -0
  357. package/examples/packages/math/src/export.aug +1 -0
  358. package/examples/packages/math/src/export.aug.md +17 -0
  359. package/examples/visibility/.aug-spec/manifest.json +8 -0
  360. package/examples/visibility/counter.aug +14 -0
  361. package/examples/visibility/counter.aug.md +87 -0
  362. package/examples/visibility/main.aug +7 -0
  363. package/examples/visibility/main.aug.md +39 -0
  364. package/package.json +50 -0
  365. package/runtime/aug_crypto.c +121 -0
  366. package/runtime/aug_html.c +93 -0
  367. package/runtime/aug_http.c +829 -0
  368. package/runtime/aug_json.c +165 -0
  369. package/runtime/aug_runtime.c +792 -0
  370. package/runtime/aug_runtime.h +245 -0
  371. package/runtime/aug_tasks.c +172 -0
  372. package/runtime/aug_time.c +5 -0
  373. package/runtime/aug_values.c +80 -0
  374. package/scripts/bootstrap-native.mjs +121 -0
  375. package/scripts/native-dependencies.lock.json +65 -0
  376. package/scripts/native-home.mjs +11 -0
  377. package/src/actions.js +109 -0
  378. package/src/ast.js +19 -0
  379. package/src/builtins.js +93 -0
  380. package/src/checker.js +2896 -0
  381. package/src/cli.js +344 -0
  382. package/src/codegen.js +1159 -0
  383. package/src/config.js +149 -0
  384. package/src/continuation.js +110 -0
  385. package/src/di.js +24 -0
  386. package/src/documentation.js +27 -0
  387. package/src/editor.js +782 -0
  388. package/src/effects.js +29 -0
  389. package/src/fixes.js +222 -0
  390. package/src/formatter.js +296 -0
  391. package/src/freshness.js +154 -0
  392. package/src/help.js +212 -0
  393. package/src/html.js +27 -0
  394. package/src/http-policies.js +90 -0
  395. package/src/inference.js +16 -0
  396. package/src/interceptors.js +70 -0
  397. package/src/javadoc.js +67 -0
  398. package/src/lexer.js +199 -0
  399. package/src/libraries.js +31 -0
  400. package/src/lsp.js +180 -0
  401. package/src/native.js +144 -0
  402. package/src/navigation.js +162 -0
  403. package/src/openapi.js +220 -0
  404. package/src/ownership.js +232 -0
  405. package/src/package-manager.js +299 -0
  406. package/src/parser.js +1155 -0
  407. package/src/policies.js +130 -0
  408. package/src/project-init.js +19 -0
  409. package/src/project.js +292 -0
  410. package/src/schemas.js +62 -0
  411. package/src/semantic.js +255 -0
  412. package/src/spec.js +738 -0
  413. package/src/testing.js +186 -0
  414. package/src/types.js +10 -0
@@ -0,0 +1,1674 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <svg role="img" aria-label="HTTP throughput at three concurrency levels" xmlns:xlink="http://www.w3.org/1999/xlink" width="432pt" height="288pt" viewBox="0 0 432 288" xmlns="http://www.w3.org/2000/svg" version="1.1">
5
+ <title>HTTP throughput at three concurrency levels</title>
6
+ <metadata>
7
+ <rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
8
+ <cc:Work>
9
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
10
+ <dc:title>HTTP throughput at three concurrency levels</dc:title>
11
+ <dc:description>Median of 3 5000-request rounds. Error bars show the observed minimum and maximum, not confidence intervals.</dc:description>
12
+ <dc:format>image/svg+xml</dc:format>
13
+ <dc:creator>
14
+ <cc:Agent>
15
+ <dc:title>Matplotlib v3.10.7, https://matplotlib.org/</dc:title>
16
+ </cc:Agent>
17
+ </dc:creator>
18
+ </cc:Work>
19
+ </rdf:RDF>
20
+ </metadata>
21
+ <defs>
22
+ <style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
23
+ </defs>
24
+ <g id="figure_1">
25
+ <g id="patch_1">
26
+ <path d="M 0 288
27
+ L 432 288
28
+ L 432 0
29
+ L 0 0
30
+ z
31
+ " style="fill: #ffffff"/>
32
+ </g>
33
+ <g id="axes_1">
34
+ <g id="patch_2">
35
+ <path d="M 38.643678 252.707885
36
+ L 428.99976 252.707885
37
+ L 428.99976 25.030177
38
+ L 38.643678 25.030177
39
+ z
40
+ " style="fill: #ffffff"/>
41
+ </g>
42
+ <g id="matplotlib.axis_1">
43
+ <g id="xtick_1">
44
+ <g id="line2d_1">
45
+ <path d="M 60.033052 252.707885
46
+ L 60.033052 25.030177
47
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
48
+ </g>
49
+ <g id="line2d_2">
50
+ <defs>
51
+ <path id="m9cd3e2f3f9" d="M 0 0
52
+ L 0 3.5
53
+ " style="stroke: #52606d; stroke-width: 0.8"/>
54
+ </defs>
55
+ <g>
56
+ <use xlink:href="#m9cd3e2f3f9" x="60.033052" y="252.707885" style="fill: #52606d; stroke: #52606d; stroke-width: 0.8"/>
57
+ </g>
58
+ </g>
59
+ <g id="text_1">
60
+ <!-- 1 -->
61
+ <g style="fill: #52606d" transform="translate(56.533677 268.066166) scale(0.11 -0.11)">
62
+ <defs>
63
+ <path id="DejaVuSans-31" d="M 794 531
64
+ L 1825 531
65
+ L 1825 4091
66
+ L 703 3866
67
+ L 703 4441
68
+ L 1819 4666
69
+ L 2450 4666
70
+ L 2450 531
71
+ L 3481 531
72
+ L 3481 0
73
+ L 794 0
74
+ L 794 531
75
+ z
76
+ " transform="scale(0.015625)"/>
77
+ </defs>
78
+ <use xlink:href="#DejaVuSans-31"/>
79
+ </g>
80
+ </g>
81
+ </g>
82
+ <g id="xtick_2">
83
+ <g id="line2d_3">
84
+ <path d="M 140.243206 252.707885
85
+ L 140.243206 25.030177
86
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
87
+ </g>
88
+ <g id="line2d_4">
89
+ <g>
90
+ <use xlink:href="#m9cd3e2f3f9" x="140.243206" y="252.707885" style="fill: #52606d; stroke: #52606d; stroke-width: 0.8"/>
91
+ </g>
92
+ </g>
93
+ <g id="text_2">
94
+ <!-- 16 -->
95
+ <g style="fill: #52606d" transform="translate(133.244456 268.066166) scale(0.11 -0.11)">
96
+ <defs>
97
+ <path id="DejaVuSans-36" d="M 2113 2584
98
+ Q 1688 2584 1439 2293
99
+ Q 1191 2003 1191 1497
100
+ Q 1191 994 1439 701
101
+ Q 1688 409 2113 409
102
+ Q 2538 409 2786 701
103
+ Q 3034 994 3034 1497
104
+ Q 3034 2003 2786 2293
105
+ Q 2538 2584 2113 2584
106
+ z
107
+ M 3366 4563
108
+ L 3366 3988
109
+ Q 3128 4100 2886 4159
110
+ Q 2644 4219 2406 4219
111
+ Q 1781 4219 1451 3797
112
+ Q 1122 3375 1075 2522
113
+ Q 1259 2794 1537 2939
114
+ Q 1816 3084 2150 3084
115
+ Q 2853 3084 3261 2657
116
+ Q 3669 2231 3669 1497
117
+ Q 3669 778 3244 343
118
+ Q 2819 -91 2113 -91
119
+ Q 1303 -91 875 529
120
+ Q 447 1150 447 2328
121
+ Q 447 3434 972 4092
122
+ Q 1497 4750 2381 4750
123
+ Q 2619 4750 2861 4703
124
+ Q 3103 4656 3366 4563
125
+ z
126
+ " transform="scale(0.015625)"/>
127
+ </defs>
128
+ <use xlink:href="#DejaVuSans-31"/>
129
+ <use xlink:href="#DejaVuSans-36" transform="translate(63.623047 0)"/>
130
+ </g>
131
+ </g>
132
+ </g>
133
+ <g id="xtick_3">
134
+ <g id="line2d_5">
135
+ <path d="M 396.915698 252.707885
136
+ L 396.915698 25.030177
137
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
138
+ </g>
139
+ <g id="line2d_6">
140
+ <g>
141
+ <use xlink:href="#m9cd3e2f3f9" x="396.915698" y="252.707885" style="fill: #52606d; stroke: #52606d; stroke-width: 0.8"/>
142
+ </g>
143
+ </g>
144
+ <g id="text_3">
145
+ <!-- 64 -->
146
+ <g style="fill: #52606d" transform="translate(389.916948 268.066166) scale(0.11 -0.11)">
147
+ <defs>
148
+ <path id="DejaVuSans-34" d="M 2419 4116
149
+ L 825 1625
150
+ L 2419 1625
151
+ L 2419 4116
152
+ z
153
+ M 2253 4666
154
+ L 3047 4666
155
+ L 3047 1625
156
+ L 3713 1625
157
+ L 3713 1100
158
+ L 3047 1100
159
+ L 3047 0
160
+ L 2419 0
161
+ L 2419 1100
162
+ L 313 1100
163
+ L 313 1709
164
+ L 2253 4666
165
+ z
166
+ " transform="scale(0.015625)"/>
167
+ </defs>
168
+ <use xlink:href="#DejaVuSans-36"/>
169
+ <use xlink:href="#DejaVuSans-34" transform="translate(63.623047 0)"/>
170
+ </g>
171
+ </g>
172
+ </g>
173
+ <g id="text_4">
174
+ <!-- Concurrent keep-alive clients -->
175
+ <g style="fill: #263445" transform="translate(153.529453 282.712104) scale(0.11 -0.11)">
176
+ <defs>
177
+ <path id="DejaVuSans-43" d="M 4122 4306
178
+ L 4122 3641
179
+ Q 3803 3938 3442 4084
180
+ Q 3081 4231 2675 4231
181
+ Q 1875 4231 1450 3742
182
+ Q 1025 3253 1025 2328
183
+ Q 1025 1406 1450 917
184
+ Q 1875 428 2675 428
185
+ Q 3081 428 3442 575
186
+ Q 3803 722 4122 1019
187
+ L 4122 359
188
+ Q 3791 134 3420 21
189
+ Q 3050 -91 2638 -91
190
+ Q 1578 -91 968 557
191
+ Q 359 1206 359 2328
192
+ Q 359 3453 968 4101
193
+ Q 1578 4750 2638 4750
194
+ Q 3056 4750 3426 4639
195
+ Q 3797 4528 4122 4306
196
+ z
197
+ " transform="scale(0.015625)"/>
198
+ <path id="DejaVuSans-6f" d="M 1959 3097
199
+ Q 1497 3097 1228 2736
200
+ Q 959 2375 959 1747
201
+ Q 959 1119 1226 758
202
+ Q 1494 397 1959 397
203
+ Q 2419 397 2687 759
204
+ Q 2956 1122 2956 1747
205
+ Q 2956 2369 2687 2733
206
+ Q 2419 3097 1959 3097
207
+ z
208
+ M 1959 3584
209
+ Q 2709 3584 3137 3096
210
+ Q 3566 2609 3566 1747
211
+ Q 3566 888 3137 398
212
+ Q 2709 -91 1959 -91
213
+ Q 1206 -91 779 398
214
+ Q 353 888 353 1747
215
+ Q 353 2609 779 3096
216
+ Q 1206 3584 1959 3584
217
+ z
218
+ " transform="scale(0.015625)"/>
219
+ <path id="DejaVuSans-6e" d="M 3513 2113
220
+ L 3513 0
221
+ L 2938 0
222
+ L 2938 2094
223
+ Q 2938 2591 2744 2837
224
+ Q 2550 3084 2163 3084
225
+ Q 1697 3084 1428 2787
226
+ Q 1159 2491 1159 1978
227
+ L 1159 0
228
+ L 581 0
229
+ L 581 3500
230
+ L 1159 3500
231
+ L 1159 2956
232
+ Q 1366 3272 1645 3428
233
+ Q 1925 3584 2291 3584
234
+ Q 2894 3584 3203 3211
235
+ Q 3513 2838 3513 2113
236
+ z
237
+ " transform="scale(0.015625)"/>
238
+ <path id="DejaVuSans-63" d="M 3122 3366
239
+ L 3122 2828
240
+ Q 2878 2963 2633 3030
241
+ Q 2388 3097 2138 3097
242
+ Q 1578 3097 1268 2742
243
+ Q 959 2388 959 1747
244
+ Q 959 1106 1268 751
245
+ Q 1578 397 2138 397
246
+ Q 2388 397 2633 464
247
+ Q 2878 531 3122 666
248
+ L 3122 134
249
+ Q 2881 22 2623 -34
250
+ Q 2366 -91 2075 -91
251
+ Q 1284 -91 818 406
252
+ Q 353 903 353 1747
253
+ Q 353 2603 823 3093
254
+ Q 1294 3584 2113 3584
255
+ Q 2378 3584 2631 3529
256
+ Q 2884 3475 3122 3366
257
+ z
258
+ " transform="scale(0.015625)"/>
259
+ <path id="DejaVuSans-75" d="M 544 1381
260
+ L 544 3500
261
+ L 1119 3500
262
+ L 1119 1403
263
+ Q 1119 906 1312 657
264
+ Q 1506 409 1894 409
265
+ Q 2359 409 2629 706
266
+ Q 2900 1003 2900 1516
267
+ L 2900 3500
268
+ L 3475 3500
269
+ L 3475 0
270
+ L 2900 0
271
+ L 2900 538
272
+ Q 2691 219 2414 64
273
+ Q 2138 -91 1772 -91
274
+ Q 1169 -91 856 284
275
+ Q 544 659 544 1381
276
+ z
277
+ M 1991 3584
278
+ L 1991 3584
279
+ z
280
+ " transform="scale(0.015625)"/>
281
+ <path id="DejaVuSans-72" d="M 2631 2963
282
+ Q 2534 3019 2420 3045
283
+ Q 2306 3072 2169 3072
284
+ Q 1681 3072 1420 2755
285
+ Q 1159 2438 1159 1844
286
+ L 1159 0
287
+ L 581 0
288
+ L 581 3500
289
+ L 1159 3500
290
+ L 1159 2956
291
+ Q 1341 3275 1631 3429
292
+ Q 1922 3584 2338 3584
293
+ Q 2397 3584 2469 3576
294
+ Q 2541 3569 2628 3553
295
+ L 2631 2963
296
+ z
297
+ " transform="scale(0.015625)"/>
298
+ <path id="DejaVuSans-65" d="M 3597 1894
299
+ L 3597 1613
300
+ L 953 1613
301
+ Q 991 1019 1311 708
302
+ Q 1631 397 2203 397
303
+ Q 2534 397 2845 478
304
+ Q 3156 559 3463 722
305
+ L 3463 178
306
+ Q 3153 47 2828 -22
307
+ Q 2503 -91 2169 -91
308
+ Q 1331 -91 842 396
309
+ Q 353 884 353 1716
310
+ Q 353 2575 817 3079
311
+ Q 1281 3584 2069 3584
312
+ Q 2775 3584 3186 3129
313
+ Q 3597 2675 3597 1894
314
+ z
315
+ M 3022 2063
316
+ Q 3016 2534 2758 2815
317
+ Q 2500 3097 2075 3097
318
+ Q 1594 3097 1305 2825
319
+ Q 1016 2553 972 2059
320
+ L 3022 2063
321
+ z
322
+ " transform="scale(0.015625)"/>
323
+ <path id="DejaVuSans-74" d="M 1172 4494
324
+ L 1172 3500
325
+ L 2356 3500
326
+ L 2356 3053
327
+ L 1172 3053
328
+ L 1172 1153
329
+ Q 1172 725 1289 603
330
+ Q 1406 481 1766 481
331
+ L 2356 481
332
+ L 2356 0
333
+ L 1766 0
334
+ Q 1100 0 847 248
335
+ Q 594 497 594 1153
336
+ L 594 3053
337
+ L 172 3053
338
+ L 172 3500
339
+ L 594 3500
340
+ L 594 4494
341
+ L 1172 4494
342
+ z
343
+ " transform="scale(0.015625)"/>
344
+ <path id="DejaVuSans-20" transform="scale(0.015625)"/>
345
+ <path id="DejaVuSans-6b" d="M 581 4863
346
+ L 1159 4863
347
+ L 1159 1991
348
+ L 2875 3500
349
+ L 3609 3500
350
+ L 1753 1863
351
+ L 3688 0
352
+ L 2938 0
353
+ L 1159 1709
354
+ L 1159 0
355
+ L 581 0
356
+ L 581 4863
357
+ z
358
+ " transform="scale(0.015625)"/>
359
+ <path id="DejaVuSans-70" d="M 1159 525
360
+ L 1159 -1331
361
+ L 581 -1331
362
+ L 581 3500
363
+ L 1159 3500
364
+ L 1159 2969
365
+ Q 1341 3281 1617 3432
366
+ Q 1894 3584 2278 3584
367
+ Q 2916 3584 3314 3078
368
+ Q 3713 2572 3713 1747
369
+ Q 3713 922 3314 415
370
+ Q 2916 -91 2278 -91
371
+ Q 1894 -91 1617 61
372
+ Q 1341 213 1159 525
373
+ z
374
+ M 3116 1747
375
+ Q 3116 2381 2855 2742
376
+ Q 2594 3103 2138 3103
377
+ Q 1681 3103 1420 2742
378
+ Q 1159 2381 1159 1747
379
+ Q 1159 1113 1420 752
380
+ Q 1681 391 2138 391
381
+ Q 2594 391 2855 752
382
+ Q 3116 1113 3116 1747
383
+ z
384
+ " transform="scale(0.015625)"/>
385
+ <path id="DejaVuSans-2d" d="M 313 2009
386
+ L 1997 2009
387
+ L 1997 1497
388
+ L 313 1497
389
+ L 313 2009
390
+ z
391
+ " transform="scale(0.015625)"/>
392
+ <path id="DejaVuSans-61" d="M 2194 1759
393
+ Q 1497 1759 1228 1600
394
+ Q 959 1441 959 1056
395
+ Q 959 750 1161 570
396
+ Q 1363 391 1709 391
397
+ Q 2188 391 2477 730
398
+ Q 2766 1069 2766 1631
399
+ L 2766 1759
400
+ L 2194 1759
401
+ z
402
+ M 3341 1997
403
+ L 3341 0
404
+ L 2766 0
405
+ L 2766 531
406
+ Q 2569 213 2275 61
407
+ Q 1981 -91 1556 -91
408
+ Q 1019 -91 701 211
409
+ Q 384 513 384 1019
410
+ Q 384 1609 779 1909
411
+ Q 1175 2209 1959 2209
412
+ L 2766 2209
413
+ L 2766 2266
414
+ Q 2766 2663 2505 2880
415
+ Q 2244 3097 1772 3097
416
+ Q 1472 3097 1187 3025
417
+ Q 903 2953 641 2809
418
+ L 641 3341
419
+ Q 956 3463 1253 3523
420
+ Q 1550 3584 1831 3584
421
+ Q 2591 3584 2966 3190
422
+ Q 3341 2797 3341 1997
423
+ z
424
+ " transform="scale(0.015625)"/>
425
+ <path id="DejaVuSans-6c" d="M 603 4863
426
+ L 1178 4863
427
+ L 1178 0
428
+ L 603 0
429
+ L 603 4863
430
+ z
431
+ " transform="scale(0.015625)"/>
432
+ <path id="DejaVuSans-69" d="M 603 3500
433
+ L 1178 3500
434
+ L 1178 0
435
+ L 603 0
436
+ L 603 3500
437
+ z
438
+ M 603 4863
439
+ L 1178 4863
440
+ L 1178 4134
441
+ L 603 4134
442
+ L 603 4863
443
+ z
444
+ " transform="scale(0.015625)"/>
445
+ <path id="DejaVuSans-76" d="M 191 3500
446
+ L 800 3500
447
+ L 1894 563
448
+ L 2988 3500
449
+ L 3597 3500
450
+ L 2284 0
451
+ L 1503 0
452
+ L 191 3500
453
+ z
454
+ " transform="scale(0.015625)"/>
455
+ <path id="DejaVuSans-73" d="M 2834 3397
456
+ L 2834 2853
457
+ Q 2591 2978 2328 3040
458
+ Q 2066 3103 1784 3103
459
+ Q 1356 3103 1142 2972
460
+ Q 928 2841 928 2578
461
+ Q 928 2378 1081 2264
462
+ Q 1234 2150 1697 2047
463
+ L 1894 2003
464
+ Q 2506 1872 2764 1633
465
+ Q 3022 1394 3022 966
466
+ Q 3022 478 2636 193
467
+ Q 2250 -91 1575 -91
468
+ Q 1294 -91 989 -36
469
+ Q 684 19 347 128
470
+ L 347 722
471
+ Q 666 556 975 473
472
+ Q 1284 391 1588 391
473
+ Q 1994 391 2212 530
474
+ Q 2431 669 2431 922
475
+ Q 2431 1156 2273 1281
476
+ Q 2116 1406 1581 1522
477
+ L 1381 1569
478
+ Q 847 1681 609 1914
479
+ Q 372 2147 372 2553
480
+ Q 372 3047 722 3315
481
+ Q 1072 3584 1716 3584
482
+ Q 2034 3584 2315 3537
483
+ Q 2597 3491 2834 3397
484
+ z
485
+ " transform="scale(0.015625)"/>
486
+ </defs>
487
+ <use xlink:href="#DejaVuSans-43"/>
488
+ <use xlink:href="#DejaVuSans-6f" transform="translate(69.824219 0)"/>
489
+ <use xlink:href="#DejaVuSans-6e" transform="translate(131.005859 0)"/>
490
+ <use xlink:href="#DejaVuSans-63" transform="translate(194.384766 0)"/>
491
+ <use xlink:href="#DejaVuSans-75" transform="translate(249.365234 0)"/>
492
+ <use xlink:href="#DejaVuSans-72" transform="translate(312.744141 0)"/>
493
+ <use xlink:href="#DejaVuSans-72" transform="translate(352.107422 0)"/>
494
+ <use xlink:href="#DejaVuSans-65" transform="translate(390.970703 0)"/>
495
+ <use xlink:href="#DejaVuSans-6e" transform="translate(452.494141 0)"/>
496
+ <use xlink:href="#DejaVuSans-74" transform="translate(515.873047 0)"/>
497
+ <use xlink:href="#DejaVuSans-20" transform="translate(555.082031 0)"/>
498
+ <use xlink:href="#DejaVuSans-6b" transform="translate(586.869141 0)"/>
499
+ <use xlink:href="#DejaVuSans-65" transform="translate(641.154297 0)"/>
500
+ <use xlink:href="#DejaVuSans-65" transform="translate(702.677734 0)"/>
501
+ <use xlink:href="#DejaVuSans-70" transform="translate(764.201172 0)"/>
502
+ <use xlink:href="#DejaVuSans-2d" transform="translate(827.677734 0)"/>
503
+ <use xlink:href="#DejaVuSans-61" transform="translate(863.761719 0)"/>
504
+ <use xlink:href="#DejaVuSans-6c" transform="translate(925.041016 0)"/>
505
+ <use xlink:href="#DejaVuSans-69" transform="translate(952.824219 0)"/>
506
+ <use xlink:href="#DejaVuSans-76" transform="translate(980.607422 0)"/>
507
+ <use xlink:href="#DejaVuSans-65" transform="translate(1039.787109 0)"/>
508
+ <use xlink:href="#DejaVuSans-20" transform="translate(1101.310547 0)"/>
509
+ <use xlink:href="#DejaVuSans-63" transform="translate(1133.097656 0)"/>
510
+ <use xlink:href="#DejaVuSans-6c" transform="translate(1188.078125 0)"/>
511
+ <use xlink:href="#DejaVuSans-69" transform="translate(1215.861328 0)"/>
512
+ <use xlink:href="#DejaVuSans-65" transform="translate(1243.644531 0)"/>
513
+ <use xlink:href="#DejaVuSans-6e" transform="translate(1305.167969 0)"/>
514
+ <use xlink:href="#DejaVuSans-74" transform="translate(1368.546875 0)"/>
515
+ <use xlink:href="#DejaVuSans-73" transform="translate(1407.755859 0)"/>
516
+ </g>
517
+ </g>
518
+ </g>
519
+ <g id="matplotlib.axis_2">
520
+ <g id="ytick_1">
521
+ <g id="line2d_7">
522
+ <path d="M 38.643678 252.707885
523
+ L 428.99976 252.707885
524
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
525
+ </g>
526
+ <g id="line2d_8">
527
+ <defs>
528
+ <path id="m3109c17da4" d="M 0 0
529
+ L -3.5 0
530
+ " style="stroke: #263445; stroke-width: 0.8"/>
531
+ </defs>
532
+ <g>
533
+ <use xlink:href="#m3109c17da4" x="38.643678" y="252.707885" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
534
+ </g>
535
+ </g>
536
+ <g id="text_5">
537
+ <!-- 0 -->
538
+ <g style="fill: #263445" transform="translate(24.644928 256.887026) scale(0.11 -0.11)">
539
+ <defs>
540
+ <path id="DejaVuSans-30" d="M 2034 4250
541
+ Q 1547 4250 1301 3770
542
+ Q 1056 3291 1056 2328
543
+ Q 1056 1369 1301 889
544
+ Q 1547 409 2034 409
545
+ Q 2525 409 2770 889
546
+ Q 3016 1369 3016 2328
547
+ Q 3016 3291 2770 3770
548
+ Q 2525 4250 2034 4250
549
+ z
550
+ M 2034 4750
551
+ Q 2819 4750 3233 4129
552
+ Q 3647 3509 3647 2328
553
+ Q 3647 1150 3233 529
554
+ Q 2819 -91 2034 -91
555
+ Q 1250 -91 836 529
556
+ Q 422 1150 422 2328
557
+ Q 422 3509 836 4129
558
+ Q 1250 4750 2034 4750
559
+ z
560
+ " transform="scale(0.015625)"/>
561
+ </defs>
562
+ <use xlink:href="#DejaVuSans-30"/>
563
+ </g>
564
+ </g>
565
+ </g>
566
+ <g id="ytick_2">
567
+ <g id="line2d_9">
568
+ <path d="M 38.643678 204.967256
569
+ L 428.99976 204.967256
570
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
571
+ </g>
572
+ <g id="line2d_10">
573
+ <g>
574
+ <use xlink:href="#m3109c17da4" x="38.643678" y="204.967256" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
575
+ </g>
576
+ </g>
577
+ <g id="text_6">
578
+ <!-- 20 -->
579
+ <g style="fill: #263445" transform="translate(17.646178 209.146397) scale(0.11 -0.11)">
580
+ <defs>
581
+ <path id="DejaVuSans-32" d="M 1228 531
582
+ L 3431 531
583
+ L 3431 0
584
+ L 469 0
585
+ L 469 531
586
+ Q 828 903 1448 1529
587
+ Q 2069 2156 2228 2338
588
+ Q 2531 2678 2651 2914
589
+ Q 2772 3150 2772 3378
590
+ Q 2772 3750 2511 3984
591
+ Q 2250 4219 1831 4219
592
+ Q 1534 4219 1204 4116
593
+ Q 875 4013 500 3803
594
+ L 500 4441
595
+ Q 881 4594 1212 4672
596
+ Q 1544 4750 1819 4750
597
+ Q 2544 4750 2975 4387
598
+ Q 3406 4025 3406 3419
599
+ Q 3406 3131 3298 2873
600
+ Q 3191 2616 2906 2266
601
+ Q 2828 2175 2409 1742
602
+ Q 1991 1309 1228 531
603
+ z
604
+ " transform="scale(0.015625)"/>
605
+ </defs>
606
+ <use xlink:href="#DejaVuSans-32"/>
607
+ <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
608
+ </g>
609
+ </g>
610
+ </g>
611
+ <g id="ytick_3">
612
+ <g id="line2d_11">
613
+ <path d="M 38.643678 157.226627
614
+ L 428.99976 157.226627
615
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
616
+ </g>
617
+ <g id="line2d_12">
618
+ <g>
619
+ <use xlink:href="#m3109c17da4" x="38.643678" y="157.226627" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
620
+ </g>
621
+ </g>
622
+ <g id="text_7">
623
+ <!-- 40 -->
624
+ <g style="fill: #263445" transform="translate(17.646178 161.405768) scale(0.11 -0.11)">
625
+ <use xlink:href="#DejaVuSans-34"/>
626
+ <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
627
+ </g>
628
+ </g>
629
+ </g>
630
+ <g id="ytick_4">
631
+ <g id="line2d_13">
632
+ <path d="M 38.643678 109.485999
633
+ L 428.99976 109.485999
634
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
635
+ </g>
636
+ <g id="line2d_14">
637
+ <g>
638
+ <use xlink:href="#m3109c17da4" x="38.643678" y="109.485999" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
639
+ </g>
640
+ </g>
641
+ <g id="text_8">
642
+ <!-- 60 -->
643
+ <g style="fill: #263445" transform="translate(17.646178 113.665139) scale(0.11 -0.11)">
644
+ <use xlink:href="#DejaVuSans-36"/>
645
+ <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
646
+ </g>
647
+ </g>
648
+ </g>
649
+ <g id="ytick_5">
650
+ <g id="line2d_15">
651
+ <path d="M 38.643678 61.74537
652
+ L 428.99976 61.74537
653
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
654
+ </g>
655
+ <g id="line2d_16">
656
+ <g>
657
+ <use xlink:href="#m3109c17da4" x="38.643678" y="61.74537" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
658
+ </g>
659
+ </g>
660
+ <g id="text_9">
661
+ <!-- 80 -->
662
+ <g style="fill: #263445" transform="translate(17.646178 65.92451) scale(0.11 -0.11)">
663
+ <defs>
664
+ <path id="DejaVuSans-38" d="M 2034 2216
665
+ Q 1584 2216 1326 1975
666
+ Q 1069 1734 1069 1313
667
+ Q 1069 891 1326 650
668
+ Q 1584 409 2034 409
669
+ Q 2484 409 2743 651
670
+ Q 3003 894 3003 1313
671
+ Q 3003 1734 2745 1975
672
+ Q 2488 2216 2034 2216
673
+ z
674
+ M 1403 2484
675
+ Q 997 2584 770 2862
676
+ Q 544 3141 544 3541
677
+ Q 544 4100 942 4425
678
+ Q 1341 4750 2034 4750
679
+ Q 2731 4750 3128 4425
680
+ Q 3525 4100 3525 3541
681
+ Q 3525 3141 3298 2862
682
+ Q 3072 2584 2669 2484
683
+ Q 3125 2378 3379 2068
684
+ Q 3634 1759 3634 1313
685
+ Q 3634 634 3220 271
686
+ Q 2806 -91 2034 -91
687
+ Q 1263 -91 848 271
688
+ Q 434 634 434 1313
689
+ Q 434 1759 690 2068
690
+ Q 947 2378 1403 2484
691
+ z
692
+ M 1172 3481
693
+ Q 1172 3119 1398 2916
694
+ Q 1625 2713 2034 2713
695
+ Q 2441 2713 2670 2916
696
+ Q 2900 3119 2900 3481
697
+ Q 2900 3844 2670 4047
698
+ Q 2441 4250 2034 4250
699
+ Q 1625 4250 1398 4047
700
+ Q 1172 3844 1172 3481
701
+ z
702
+ " transform="scale(0.015625)"/>
703
+ </defs>
704
+ <use xlink:href="#DejaVuSans-38"/>
705
+ <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
706
+ </g>
707
+ </g>
708
+ </g>
709
+ <g id="text_10">
710
+ <!-- Thousands of requests/sec · higher is faster -->
711
+ <g style="fill: #263445" transform="translate(11.358521 259.078406) rotate(-90) scale(0.11 -0.11)">
712
+ <defs>
713
+ <path id="DejaVuSans-54" d="M -19 4666
714
+ L 3928 4666
715
+ L 3928 4134
716
+ L 2272 4134
717
+ L 2272 0
718
+ L 1638 0
719
+ L 1638 4134
720
+ L -19 4134
721
+ L -19 4666
722
+ z
723
+ " transform="scale(0.015625)"/>
724
+ <path id="DejaVuSans-68" d="M 3513 2113
725
+ L 3513 0
726
+ L 2938 0
727
+ L 2938 2094
728
+ Q 2938 2591 2744 2837
729
+ Q 2550 3084 2163 3084
730
+ Q 1697 3084 1428 2787
731
+ Q 1159 2491 1159 1978
732
+ L 1159 0
733
+ L 581 0
734
+ L 581 4863
735
+ L 1159 4863
736
+ L 1159 2956
737
+ Q 1366 3272 1645 3428
738
+ Q 1925 3584 2291 3584
739
+ Q 2894 3584 3203 3211
740
+ Q 3513 2838 3513 2113
741
+ z
742
+ " transform="scale(0.015625)"/>
743
+ <path id="DejaVuSans-64" d="M 2906 2969
744
+ L 2906 4863
745
+ L 3481 4863
746
+ L 3481 0
747
+ L 2906 0
748
+ L 2906 525
749
+ Q 2725 213 2448 61
750
+ Q 2172 -91 1784 -91
751
+ Q 1150 -91 751 415
752
+ Q 353 922 353 1747
753
+ Q 353 2572 751 3078
754
+ Q 1150 3584 1784 3584
755
+ Q 2172 3584 2448 3432
756
+ Q 2725 3281 2906 2969
757
+ z
758
+ M 947 1747
759
+ Q 947 1113 1208 752
760
+ Q 1469 391 1925 391
761
+ Q 2381 391 2643 752
762
+ Q 2906 1113 2906 1747
763
+ Q 2906 2381 2643 2742
764
+ Q 2381 3103 1925 3103
765
+ Q 1469 3103 1208 2742
766
+ Q 947 2381 947 1747
767
+ z
768
+ " transform="scale(0.015625)"/>
769
+ <path id="DejaVuSans-66" d="M 2375 4863
770
+ L 2375 4384
771
+ L 1825 4384
772
+ Q 1516 4384 1395 4259
773
+ Q 1275 4134 1275 3809
774
+ L 1275 3500
775
+ L 2222 3500
776
+ L 2222 3053
777
+ L 1275 3053
778
+ L 1275 0
779
+ L 697 0
780
+ L 697 3053
781
+ L 147 3053
782
+ L 147 3500
783
+ L 697 3500
784
+ L 697 3744
785
+ Q 697 4328 969 4595
786
+ Q 1241 4863 1831 4863
787
+ L 2375 4863
788
+ z
789
+ " transform="scale(0.015625)"/>
790
+ <path id="DejaVuSans-71" d="M 947 1747
791
+ Q 947 1113 1208 752
792
+ Q 1469 391 1925 391
793
+ Q 2381 391 2643 752
794
+ Q 2906 1113 2906 1747
795
+ Q 2906 2381 2643 2742
796
+ Q 2381 3103 1925 3103
797
+ Q 1469 3103 1208 2742
798
+ Q 947 2381 947 1747
799
+ z
800
+ M 2906 525
801
+ Q 2725 213 2448 61
802
+ Q 2172 -91 1784 -91
803
+ Q 1150 -91 751 415
804
+ Q 353 922 353 1747
805
+ Q 353 2572 751 3078
806
+ Q 1150 3584 1784 3584
807
+ Q 2172 3584 2448 3432
808
+ Q 2725 3281 2906 2969
809
+ L 2906 3500
810
+ L 3481 3500
811
+ L 3481 -1331
812
+ L 2906 -1331
813
+ L 2906 525
814
+ z
815
+ " transform="scale(0.015625)"/>
816
+ <path id="DejaVuSans-2f" d="M 1625 4666
817
+ L 2156 4666
818
+ L 531 -594
819
+ L 0 -594
820
+ L 1625 4666
821
+ z
822
+ " transform="scale(0.015625)"/>
823
+ <path id="DejaVuSans-b7" d="M 684 2619
824
+ L 1344 2619
825
+ L 1344 1825
826
+ L 684 1825
827
+ L 684 2619
828
+ z
829
+ " transform="scale(0.015625)"/>
830
+ <path id="DejaVuSans-67" d="M 2906 1791
831
+ Q 2906 2416 2648 2759
832
+ Q 2391 3103 1925 3103
833
+ Q 1463 3103 1205 2759
834
+ Q 947 2416 947 1791
835
+ Q 947 1169 1205 825
836
+ Q 1463 481 1925 481
837
+ Q 2391 481 2648 825
838
+ Q 2906 1169 2906 1791
839
+ z
840
+ M 3481 434
841
+ Q 3481 -459 3084 -895
842
+ Q 2688 -1331 1869 -1331
843
+ Q 1566 -1331 1297 -1286
844
+ Q 1028 -1241 775 -1147
845
+ L 775 -588
846
+ Q 1028 -725 1275 -790
847
+ Q 1522 -856 1778 -856
848
+ Q 2344 -856 2625 -561
849
+ Q 2906 -266 2906 331
850
+ L 2906 616
851
+ Q 2728 306 2450 153
852
+ Q 2172 0 1784 0
853
+ Q 1141 0 747 490
854
+ Q 353 981 353 1791
855
+ Q 353 2603 747 3093
856
+ Q 1141 3584 1784 3584
857
+ Q 2172 3584 2450 3431
858
+ Q 2728 3278 2906 2969
859
+ L 2906 3500
860
+ L 3481 3500
861
+ L 3481 434
862
+ z
863
+ " transform="scale(0.015625)"/>
864
+ </defs>
865
+ <use xlink:href="#DejaVuSans-54"/>
866
+ <use xlink:href="#DejaVuSans-68" transform="translate(61.083984 0)"/>
867
+ <use xlink:href="#DejaVuSans-6f" transform="translate(124.462891 0)"/>
868
+ <use xlink:href="#DejaVuSans-75" transform="translate(185.644531 0)"/>
869
+ <use xlink:href="#DejaVuSans-73" transform="translate(249.023438 0)"/>
870
+ <use xlink:href="#DejaVuSans-61" transform="translate(301.123047 0)"/>
871
+ <use xlink:href="#DejaVuSans-6e" transform="translate(362.402344 0)"/>
872
+ <use xlink:href="#DejaVuSans-64" transform="translate(425.78125 0)"/>
873
+ <use xlink:href="#DejaVuSans-73" transform="translate(489.257812 0)"/>
874
+ <use xlink:href="#DejaVuSans-20" transform="translate(541.357422 0)"/>
875
+ <use xlink:href="#DejaVuSans-6f" transform="translate(573.144531 0)"/>
876
+ <use xlink:href="#DejaVuSans-66" transform="translate(634.326172 0)"/>
877
+ <use xlink:href="#DejaVuSans-20" transform="translate(669.53125 0)"/>
878
+ <use xlink:href="#DejaVuSans-72" transform="translate(701.318359 0)"/>
879
+ <use xlink:href="#DejaVuSans-65" transform="translate(740.181641 0)"/>
880
+ <use xlink:href="#DejaVuSans-71" transform="translate(801.705078 0)"/>
881
+ <use xlink:href="#DejaVuSans-75" transform="translate(865.181641 0)"/>
882
+ <use xlink:href="#DejaVuSans-65" transform="translate(928.560547 0)"/>
883
+ <use xlink:href="#DejaVuSans-73" transform="translate(990.083984 0)"/>
884
+ <use xlink:href="#DejaVuSans-74" transform="translate(1042.183594 0)"/>
885
+ <use xlink:href="#DejaVuSans-73" transform="translate(1081.392578 0)"/>
886
+ <use xlink:href="#DejaVuSans-2f" transform="translate(1133.492188 0)"/>
887
+ <use xlink:href="#DejaVuSans-73" transform="translate(1167.183594 0)"/>
888
+ <use xlink:href="#DejaVuSans-65" transform="translate(1219.283203 0)"/>
889
+ <use xlink:href="#DejaVuSans-63" transform="translate(1280.806641 0)"/>
890
+ <use xlink:href="#DejaVuSans-20" transform="translate(1335.787109 0)"/>
891
+ <use xlink:href="#DejaVuSans-b7" transform="translate(1367.574219 0)"/>
892
+ <use xlink:href="#DejaVuSans-20" transform="translate(1399.361328 0)"/>
893
+ <use xlink:href="#DejaVuSans-68" transform="translate(1431.148438 0)"/>
894
+ <use xlink:href="#DejaVuSans-69" transform="translate(1494.527344 0)"/>
895
+ <use xlink:href="#DejaVuSans-67" transform="translate(1522.310547 0)"/>
896
+ <use xlink:href="#DejaVuSans-68" transform="translate(1585.787109 0)"/>
897
+ <use xlink:href="#DejaVuSans-65" transform="translate(1649.166016 0)"/>
898
+ <use xlink:href="#DejaVuSans-72" transform="translate(1710.689453 0)"/>
899
+ <use xlink:href="#DejaVuSans-20" transform="translate(1751.802734 0)"/>
900
+ <use xlink:href="#DejaVuSans-69" transform="translate(1783.589844 0)"/>
901
+ <use xlink:href="#DejaVuSans-73" transform="translate(1811.373047 0)"/>
902
+ <use xlink:href="#DejaVuSans-20" transform="translate(1863.472656 0)"/>
903
+ <use xlink:href="#DejaVuSans-66" transform="translate(1895.259766 0)"/>
904
+ <use xlink:href="#DejaVuSans-61" transform="translate(1930.464844 0)"/>
905
+ <use xlink:href="#DejaVuSans-73" transform="translate(1991.744141 0)"/>
906
+ <use xlink:href="#DejaVuSans-74" transform="translate(2043.84375 0)"/>
907
+ <use xlink:href="#DejaVuSans-65" transform="translate(2083.052734 0)"/>
908
+ <use xlink:href="#DejaVuSans-72" transform="translate(2144.576172 0)"/>
909
+ </g>
910
+ </g>
911
+ </g>
912
+ <g id="LineCollection_1">
913
+ <path d="M 60.033052 204.199498
914
+ L 60.033052 195.487955
915
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #087e8b; stroke-width: 2"/>
916
+ <path d="M 140.243206 84.159793
917
+ L 140.243206 77.283417
918
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #087e8b; stroke-width: 2"/>
919
+ <path d="M 396.915698 126.557434
920
+ L 396.915698 93.746694
921
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #087e8b; stroke-width: 2"/>
922
+ </g>
923
+ <g id="line2d_17">
924
+ <defs>
925
+ <path id="mc321cda826" d="M 4 0
926
+ L -4 -0
927
+ " style="stroke: #087e8b"/>
928
+ </defs>
929
+ <g clip-path="url(#pb0c19a4416)">
930
+ <use xlink:href="#mc321cda826" x="60.033052" y="204.199498" style="fill: #087e8b; stroke: #087e8b"/>
931
+ <use xlink:href="#mc321cda826" x="140.243206" y="84.159793" style="fill: #087e8b; stroke: #087e8b"/>
932
+ <use xlink:href="#mc321cda826" x="396.915698" y="126.557434" style="fill: #087e8b; stroke: #087e8b"/>
933
+ </g>
934
+ </g>
935
+ <g id="line2d_18">
936
+ <g clip-path="url(#pb0c19a4416)">
937
+ <use xlink:href="#mc321cda826" x="60.033052" y="195.487955" style="fill: #087e8b; stroke: #087e8b"/>
938
+ <use xlink:href="#mc321cda826" x="140.243206" y="77.283417" style="fill: #087e8b; stroke: #087e8b"/>
939
+ <use xlink:href="#mc321cda826" x="396.915698" y="93.746694" style="fill: #087e8b; stroke: #087e8b"/>
940
+ </g>
941
+ </g>
942
+ <g id="LineCollection_2">
943
+ <path d="M 60.033052 194.574475
944
+ L 60.033052 191.572779
945
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #587f25; stroke-width: 2"/>
946
+ <path d="M 140.243206 91.872516
947
+ L 140.243206 86.483155
948
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #587f25; stroke-width: 2"/>
949
+ <path d="M 396.915698 120.41107
950
+ L 396.915698 87.078496
951
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #587f25; stroke-width: 2"/>
952
+ </g>
953
+ <g id="line2d_19">
954
+ <defs>
955
+ <path id="m9f3afdf400" d="M 4 0
956
+ L -4 -0
957
+ " style="stroke: #587f25"/>
958
+ </defs>
959
+ <g clip-path="url(#pb0c19a4416)">
960
+ <use xlink:href="#m9f3afdf400" x="60.033052" y="194.574475" style="fill: #587f25; stroke: #587f25"/>
961
+ <use xlink:href="#m9f3afdf400" x="140.243206" y="91.872516" style="fill: #587f25; stroke: #587f25"/>
962
+ <use xlink:href="#m9f3afdf400" x="396.915698" y="120.41107" style="fill: #587f25; stroke: #587f25"/>
963
+ </g>
964
+ </g>
965
+ <g id="line2d_20">
966
+ <g clip-path="url(#pb0c19a4416)">
967
+ <use xlink:href="#m9f3afdf400" x="60.033052" y="191.572779" style="fill: #587f25; stroke: #587f25"/>
968
+ <use xlink:href="#m9f3afdf400" x="140.243206" y="86.483155" style="fill: #587f25; stroke: #587f25"/>
969
+ <use xlink:href="#m9f3afdf400" x="396.915698" y="87.078496" style="fill: #587f25; stroke: #587f25"/>
970
+ </g>
971
+ </g>
972
+ <g id="line2d_21">
973
+ <path d="M 60.033052 196.550588
974
+ L 140.243206 77.571187
975
+ L 396.915698 96.678991
976
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #087e8b; stroke-width: 2; stroke-linecap: square"/>
977
+ <defs>
978
+ <path id="m10e397791f" d="M 0 3.5
979
+ C 0.928211 3.5 1.81853 3.131218 2.474874 2.474874
980
+ C 3.131218 1.81853 3.5 0.928211 3.5 0
981
+ C 3.5 -0.928211 3.131218 -1.81853 2.474874 -2.474874
982
+ C 1.81853 -3.131218 0.928211 -3.5 0 -3.5
983
+ C -0.928211 -3.5 -1.81853 -3.131218 -2.474874 -2.474874
984
+ C -3.131218 -1.81853 -3.5 -0.928211 -3.5 0
985
+ C -3.5 0.928211 -3.131218 1.81853 -2.474874 2.474874
986
+ C -1.81853 3.131218 -0.928211 3.5 0 3.5
987
+ z
988
+ " style="stroke: #087e8b"/>
989
+ </defs>
990
+ <g clip-path="url(#pb0c19a4416)">
991
+ <use xlink:href="#m10e397791f" x="60.033052" y="196.550588" style="fill: #087e8b; stroke: #087e8b"/>
992
+ <use xlink:href="#m10e397791f" x="140.243206" y="77.571187" style="fill: #087e8b; stroke: #087e8b"/>
993
+ <use xlink:href="#m10e397791f" x="396.915698" y="96.678991" style="fill: #087e8b; stroke: #087e8b"/>
994
+ </g>
995
+ </g>
996
+ <g id="line2d_22">
997
+ <path d="M 60.033052 191.646645
998
+ L 140.243206 87.605376
999
+ L 396.915698 87.381249
1000
+ " clip-path="url(#pb0c19a4416)" style="fill: none; stroke: #587f25; stroke-width: 2; stroke-linecap: square"/>
1001
+ <defs>
1002
+ <path id="m6ad4daa390" d="M -3.5 3.5
1003
+ L 3.5 3.5
1004
+ L 3.5 -3.5
1005
+ L -3.5 -3.5
1006
+ z
1007
+ " style="stroke: #587f25; stroke-linejoin: miter"/>
1008
+ </defs>
1009
+ <g clip-path="url(#pb0c19a4416)">
1010
+ <use xlink:href="#m6ad4daa390" x="60.033052" y="191.646645" style="fill: #587f25; stroke: #587f25; stroke-linejoin: miter"/>
1011
+ <use xlink:href="#m6ad4daa390" x="140.243206" y="87.605376" style="fill: #587f25; stroke: #587f25; stroke-linejoin: miter"/>
1012
+ <use xlink:href="#m6ad4daa390" x="396.915698" y="87.381249" style="fill: #587f25; stroke: #587f25; stroke-linejoin: miter"/>
1013
+ </g>
1014
+ </g>
1015
+ <g id="patch_3">
1016
+ <path d="M 38.643678 252.707885
1017
+ L 428.99976 252.707885
1018
+ " style="fill: none; stroke: #c4cbd2; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
1019
+ </g>
1020
+ <g id="text_11">
1021
+ <!-- 23.5k -->
1022
+ <g style="fill: #087e8b" transform="translate(46.004927 215.550588) scale(0.1 -0.1)">
1023
+ <defs>
1024
+ <path id="DejaVuSans-33" d="M 2597 2516
1025
+ Q 3050 2419 3304 2112
1026
+ Q 3559 1806 3559 1356
1027
+ Q 3559 666 3084 287
1028
+ Q 2609 -91 1734 -91
1029
+ Q 1441 -91 1130 -33
1030
+ Q 819 25 488 141
1031
+ L 488 750
1032
+ Q 750 597 1062 519
1033
+ Q 1375 441 1716 441
1034
+ Q 2309 441 2620 675
1035
+ Q 2931 909 2931 1356
1036
+ Q 2931 1769 2642 2001
1037
+ Q 2353 2234 1838 2234
1038
+ L 1294 2234
1039
+ L 1294 2753
1040
+ L 1863 2753
1041
+ Q 2328 2753 2575 2939
1042
+ Q 2822 3125 2822 3475
1043
+ Q 2822 3834 2567 4026
1044
+ Q 2313 4219 1838 4219
1045
+ Q 1578 4219 1281 4162
1046
+ Q 984 4106 628 3988
1047
+ L 628 4550
1048
+ Q 988 4650 1302 4700
1049
+ Q 1616 4750 1894 4750
1050
+ Q 2613 4750 3031 4423
1051
+ Q 3450 4097 3450 3541
1052
+ Q 3450 3153 3228 2886
1053
+ Q 3006 2619 2597 2516
1054
+ z
1055
+ " transform="scale(0.015625)"/>
1056
+ <path id="DejaVuSans-2e" d="M 684 794
1057
+ L 1344 794
1058
+ L 1344 0
1059
+ L 684 0
1060
+ L 684 794
1061
+ z
1062
+ " transform="scale(0.015625)"/>
1063
+ <path id="DejaVuSans-35" d="M 691 4666
1064
+ L 3169 4666
1065
+ L 3169 4134
1066
+ L 1269 4134
1067
+ L 1269 2991
1068
+ Q 1406 3038 1543 3061
1069
+ Q 1681 3084 1819 3084
1070
+ Q 2600 3084 3056 2656
1071
+ Q 3513 2228 3513 1497
1072
+ Q 3513 744 3044 326
1073
+ Q 2575 -91 1722 -91
1074
+ Q 1428 -91 1123 -41
1075
+ Q 819 9 494 109
1076
+ L 494 744
1077
+ Q 775 591 1075 516
1078
+ Q 1375 441 1709 441
1079
+ Q 2250 441 2565 725
1080
+ Q 2881 1009 2881 1497
1081
+ Q 2881 1984 2565 2268
1082
+ Q 2250 2553 1709 2553
1083
+ Q 1456 2553 1204 2497
1084
+ Q 953 2441 691 2322
1085
+ L 691 4666
1086
+ z
1087
+ " transform="scale(0.015625)"/>
1088
+ </defs>
1089
+ <use xlink:href="#DejaVuSans-32"/>
1090
+ <use xlink:href="#DejaVuSans-33" transform="translate(63.623047 0)"/>
1091
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1092
+ <use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
1093
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1094
+ </g>
1095
+ </g>
1096
+ <g id="text_12">
1097
+ <!-- 73.4k -->
1098
+ <g style="fill: #087e8b" transform="translate(126.215081 68.571187) scale(0.1 -0.1)">
1099
+ <defs>
1100
+ <path id="DejaVuSans-37" d="M 525 4666
1101
+ L 3525 4666
1102
+ L 3525 4397
1103
+ L 1831 0
1104
+ L 1172 0
1105
+ L 2766 4134
1106
+ L 525 4134
1107
+ L 525 4666
1108
+ z
1109
+ " transform="scale(0.015625)"/>
1110
+ </defs>
1111
+ <use xlink:href="#DejaVuSans-37"/>
1112
+ <use xlink:href="#DejaVuSans-33" transform="translate(63.623047 0)"/>
1113
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1114
+ <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
1115
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1116
+ </g>
1117
+ </g>
1118
+ <g id="text_13">
1119
+ <!-- 65.4k -->
1120
+ <g style="fill: #087e8b" transform="translate(382.887573 115.678991) scale(0.1 -0.1)">
1121
+ <use xlink:href="#DejaVuSans-36"/>
1122
+ <use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
1123
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1124
+ <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
1125
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1126
+ </g>
1127
+ </g>
1128
+ <g id="text_14">
1129
+ <!-- 25.6k -->
1130
+ <g style="fill: #587f25" transform="translate(46.004927 182.646645) scale(0.1 -0.1)">
1131
+ <use xlink:href="#DejaVuSans-32"/>
1132
+ <use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
1133
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1134
+ <use xlink:href="#DejaVuSans-36" transform="translate(159.033203 0)"/>
1135
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1136
+ </g>
1137
+ </g>
1138
+ <g id="text_15">
1139
+ <!-- 69.2k -->
1140
+ <g style="fill: #587f25" transform="translate(126.215081 106.605376) scale(0.1 -0.1)">
1141
+ <defs>
1142
+ <path id="DejaVuSans-39" d="M 703 97
1143
+ L 703 672
1144
+ Q 941 559 1184 500
1145
+ Q 1428 441 1663 441
1146
+ Q 2288 441 2617 861
1147
+ Q 2947 1281 2994 2138
1148
+ Q 2813 1869 2534 1725
1149
+ Q 2256 1581 1919 1581
1150
+ Q 1219 1581 811 2004
1151
+ Q 403 2428 403 3163
1152
+ Q 403 3881 828 4315
1153
+ Q 1253 4750 1959 4750
1154
+ Q 2769 4750 3195 4129
1155
+ Q 3622 3509 3622 2328
1156
+ Q 3622 1225 3098 567
1157
+ Q 2575 -91 1691 -91
1158
+ Q 1453 -91 1209 -44
1159
+ Q 966 3 703 97
1160
+ z
1161
+ M 1959 2075
1162
+ Q 2384 2075 2632 2365
1163
+ Q 2881 2656 2881 3163
1164
+ Q 2881 3666 2632 3958
1165
+ Q 2384 4250 1959 4250
1166
+ Q 1534 4250 1286 3958
1167
+ Q 1038 3666 1038 3163
1168
+ Q 1038 2656 1286 2365
1169
+ Q 1534 2075 1959 2075
1170
+ z
1171
+ " transform="scale(0.015625)"/>
1172
+ </defs>
1173
+ <use xlink:href="#DejaVuSans-36"/>
1174
+ <use xlink:href="#DejaVuSans-39" transform="translate(63.623047 0)"/>
1175
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1176
+ <use xlink:href="#DejaVuSans-32" transform="translate(159.033203 0)"/>
1177
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1178
+ </g>
1179
+ </g>
1180
+ <g id="text_16">
1181
+ <!-- 69.3k -->
1182
+ <g style="fill: #587f25" transform="translate(382.887573 78.381249) scale(0.1 -0.1)">
1183
+ <use xlink:href="#DejaVuSans-36"/>
1184
+ <use xlink:href="#DejaVuSans-39" transform="translate(63.623047 0)"/>
1185
+ <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1186
+ <use xlink:href="#DejaVuSans-33" transform="translate(159.033203 0)"/>
1187
+ <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
1188
+ </g>
1189
+ </g>
1190
+ <g id="text_17">
1191
+ <!-- HTTP · typed JSON response -->
1192
+ <g style="fill: #263445" transform="translate(38.643678 13.030177) scale(0.132 -0.132)">
1193
+ <defs>
1194
+ <path id="DejaVuSans-Bold-48" d="M 588 4666
1195
+ L 1791 4666
1196
+ L 1791 2888
1197
+ L 3566 2888
1198
+ L 3566 4666
1199
+ L 4769 4666
1200
+ L 4769 0
1201
+ L 3566 0
1202
+ L 3566 1978
1203
+ L 1791 1978
1204
+ L 1791 0
1205
+ L 588 0
1206
+ L 588 4666
1207
+ z
1208
+ " transform="scale(0.015625)"/>
1209
+ <path id="DejaVuSans-Bold-54" d="M 31 4666
1210
+ L 4331 4666
1211
+ L 4331 3756
1212
+ L 2784 3756
1213
+ L 2784 0
1214
+ L 1581 0
1215
+ L 1581 3756
1216
+ L 31 3756
1217
+ L 31 4666
1218
+ z
1219
+ " transform="scale(0.015625)"/>
1220
+ <path id="DejaVuSans-Bold-50" d="M 588 4666
1221
+ L 2584 4666
1222
+ Q 3475 4666 3951 4270
1223
+ Q 4428 3875 4428 3144
1224
+ Q 4428 2409 3951 2014
1225
+ Q 3475 1619 2584 1619
1226
+ L 1791 1619
1227
+ L 1791 0
1228
+ L 588 0
1229
+ L 588 4666
1230
+ z
1231
+ M 1791 3794
1232
+ L 1791 2491
1233
+ L 2456 2491
1234
+ Q 2806 2491 2997 2661
1235
+ Q 3188 2831 3188 3144
1236
+ Q 3188 3456 2997 3625
1237
+ Q 2806 3794 2456 3794
1238
+ L 1791 3794
1239
+ z
1240
+ " transform="scale(0.015625)"/>
1241
+ <path id="DejaVuSans-Bold-20" transform="scale(0.015625)"/>
1242
+ <path id="DejaVuSans-Bold-b7" d="M 653 2828
1243
+ L 1778 2828
1244
+ L 1778 1619
1245
+ L 653 1619
1246
+ L 653 2828
1247
+ z
1248
+ " transform="scale(0.015625)"/>
1249
+ <path id="DejaVuSans-Bold-74" d="M 1759 4494
1250
+ L 1759 3500
1251
+ L 2913 3500
1252
+ L 2913 2700
1253
+ L 1759 2700
1254
+ L 1759 1216
1255
+ Q 1759 972 1856 886
1256
+ Q 1953 800 2241 800
1257
+ L 2816 800
1258
+ L 2816 0
1259
+ L 1856 0
1260
+ Q 1194 0 917 276
1261
+ Q 641 553 641 1216
1262
+ L 641 2700
1263
+ L 84 2700
1264
+ L 84 3500
1265
+ L 641 3500
1266
+ L 641 4494
1267
+ L 1759 4494
1268
+ z
1269
+ " transform="scale(0.015625)"/>
1270
+ <path id="DejaVuSans-Bold-79" d="M 78 3500
1271
+ L 1197 3500
1272
+ L 2138 1125
1273
+ L 2938 3500
1274
+ L 4056 3500
1275
+ L 2584 -331
1276
+ Q 2363 -916 2067 -1148
1277
+ Q 1772 -1381 1288 -1381
1278
+ L 641 -1381
1279
+ L 641 -647
1280
+ L 991 -647
1281
+ Q 1275 -647 1404 -556
1282
+ Q 1534 -466 1606 -231
1283
+ L 1638 -134
1284
+ L 78 3500
1285
+ z
1286
+ " transform="scale(0.015625)"/>
1287
+ <path id="DejaVuSans-Bold-70" d="M 1656 506
1288
+ L 1656 -1331
1289
+ L 538 -1331
1290
+ L 538 3500
1291
+ L 1656 3500
1292
+ L 1656 2988
1293
+ Q 1888 3294 2169 3439
1294
+ Q 2450 3584 2816 3584
1295
+ Q 3463 3584 3878 3070
1296
+ Q 4294 2556 4294 1747
1297
+ Q 4294 938 3878 423
1298
+ Q 3463 -91 2816 -91
1299
+ Q 2450 -91 2169 54
1300
+ Q 1888 200 1656 506
1301
+ z
1302
+ M 2400 2772
1303
+ Q 2041 2772 1848 2508
1304
+ Q 1656 2244 1656 1747
1305
+ Q 1656 1250 1848 986
1306
+ Q 2041 722 2400 722
1307
+ Q 2759 722 2948 984
1308
+ Q 3138 1247 3138 1747
1309
+ Q 3138 2247 2948 2509
1310
+ Q 2759 2772 2400 2772
1311
+ z
1312
+ " transform="scale(0.015625)"/>
1313
+ <path id="DejaVuSans-Bold-65" d="M 4031 1759
1314
+ L 4031 1441
1315
+ L 1416 1441
1316
+ Q 1456 1047 1700 850
1317
+ Q 1944 653 2381 653
1318
+ Q 2734 653 3104 758
1319
+ Q 3475 863 3866 1075
1320
+ L 3866 213
1321
+ Q 3469 63 3072 -14
1322
+ Q 2675 -91 2278 -91
1323
+ Q 1328 -91 801 392
1324
+ Q 275 875 275 1747
1325
+ Q 275 2603 792 3093
1326
+ Q 1309 3584 2216 3584
1327
+ Q 3041 3584 3536 3087
1328
+ Q 4031 2591 4031 1759
1329
+ z
1330
+ M 2881 2131
1331
+ Q 2881 2450 2695 2645
1332
+ Q 2509 2841 2209 2841
1333
+ Q 1884 2841 1681 2658
1334
+ Q 1478 2475 1428 2131
1335
+ L 2881 2131
1336
+ z
1337
+ " transform="scale(0.015625)"/>
1338
+ <path id="DejaVuSans-Bold-64" d="M 2919 2988
1339
+ L 2919 4863
1340
+ L 4044 4863
1341
+ L 4044 0
1342
+ L 2919 0
1343
+ L 2919 506
1344
+ Q 2688 197 2409 53
1345
+ Q 2131 -91 1766 -91
1346
+ Q 1119 -91 703 423
1347
+ Q 288 938 288 1747
1348
+ Q 288 2556 703 3070
1349
+ Q 1119 3584 1766 3584
1350
+ Q 2128 3584 2408 3439
1351
+ Q 2688 3294 2919 2988
1352
+ z
1353
+ M 2181 722
1354
+ Q 2541 722 2730 984
1355
+ Q 2919 1247 2919 1747
1356
+ Q 2919 2247 2730 2509
1357
+ Q 2541 2772 2181 2772
1358
+ Q 1825 2772 1636 2509
1359
+ Q 1447 2247 1447 1747
1360
+ Q 1447 1247 1636 984
1361
+ Q 1825 722 2181 722
1362
+ z
1363
+ " transform="scale(0.015625)"/>
1364
+ <path id="DejaVuSans-Bold-4a" d="M 588 4666
1365
+ L 1791 4666
1366
+ L 1791 453
1367
+ Q 1791 -419 1317 -850
1368
+ Q 844 -1281 -116 -1281
1369
+ L -359 -1281
1370
+ L -359 -372
1371
+ L -172 -372
1372
+ Q 203 -372 395 -162
1373
+ Q 588 47 588 453
1374
+ L 588 4666
1375
+ z
1376
+ " transform="scale(0.015625)"/>
1377
+ <path id="DejaVuSans-Bold-53" d="M 3834 4519
1378
+ L 3834 3531
1379
+ Q 3450 3703 3084 3790
1380
+ Q 2719 3878 2394 3878
1381
+ Q 1963 3878 1756 3759
1382
+ Q 1550 3641 1550 3391
1383
+ Q 1550 3203 1689 3098
1384
+ Q 1828 2994 2194 2919
1385
+ L 2706 2816
1386
+ Q 3484 2659 3812 2340
1387
+ Q 4141 2022 4141 1434
1388
+ Q 4141 663 3683 286
1389
+ Q 3225 -91 2284 -91
1390
+ Q 1841 -91 1394 -6
1391
+ Q 947 78 500 244
1392
+ L 500 1259
1393
+ Q 947 1022 1364 901
1394
+ Q 1781 781 2169 781
1395
+ Q 2563 781 2772 912
1396
+ Q 2981 1044 2981 1288
1397
+ Q 2981 1506 2839 1625
1398
+ Q 2697 1744 2272 1838
1399
+ L 1806 1941
1400
+ Q 1106 2091 782 2419
1401
+ Q 459 2747 459 3303
1402
+ Q 459 4000 909 4375
1403
+ Q 1359 4750 2203 4750
1404
+ Q 2588 4750 2994 4692
1405
+ Q 3400 4634 3834 4519
1406
+ z
1407
+ " transform="scale(0.015625)"/>
1408
+ <path id="DejaVuSans-Bold-4f" d="M 2719 3878
1409
+ Q 2169 3878 1866 3472
1410
+ Q 1563 3066 1563 2328
1411
+ Q 1563 1594 1866 1187
1412
+ Q 2169 781 2719 781
1413
+ Q 3272 781 3575 1187
1414
+ Q 3878 1594 3878 2328
1415
+ Q 3878 3066 3575 3472
1416
+ Q 3272 3878 2719 3878
1417
+ z
1418
+ M 2719 4750
1419
+ Q 3844 4750 4481 4106
1420
+ Q 5119 3463 5119 2328
1421
+ Q 5119 1197 4481 553
1422
+ Q 3844 -91 2719 -91
1423
+ Q 1597 -91 958 553
1424
+ Q 319 1197 319 2328
1425
+ Q 319 3463 958 4106
1426
+ Q 1597 4750 2719 4750
1427
+ z
1428
+ " transform="scale(0.015625)"/>
1429
+ <path id="DejaVuSans-Bold-4e" d="M 588 4666
1430
+ L 1931 4666
1431
+ L 3628 1466
1432
+ L 3628 4666
1433
+ L 4769 4666
1434
+ L 4769 0
1435
+ L 3425 0
1436
+ L 1728 3200
1437
+ L 1728 0
1438
+ L 588 0
1439
+ L 588 4666
1440
+ z
1441
+ " transform="scale(0.015625)"/>
1442
+ <path id="DejaVuSans-Bold-72" d="M 3138 2547
1443
+ Q 2991 2616 2845 2648
1444
+ Q 2700 2681 2553 2681
1445
+ Q 2122 2681 1889 2404
1446
+ Q 1656 2128 1656 1613
1447
+ L 1656 0
1448
+ L 538 0
1449
+ L 538 3500
1450
+ L 1656 3500
1451
+ L 1656 2925
1452
+ Q 1872 3269 2151 3426
1453
+ Q 2431 3584 2822 3584
1454
+ Q 2878 3584 2943 3579
1455
+ Q 3009 3575 3134 3559
1456
+ L 3138 2547
1457
+ z
1458
+ " transform="scale(0.015625)"/>
1459
+ <path id="DejaVuSans-Bold-73" d="M 3272 3391
1460
+ L 3272 2541
1461
+ Q 2913 2691 2578 2766
1462
+ Q 2244 2841 1947 2841
1463
+ Q 1628 2841 1473 2761
1464
+ Q 1319 2681 1319 2516
1465
+ Q 1319 2381 1436 2309
1466
+ Q 1553 2238 1856 2203
1467
+ L 2053 2175
1468
+ Q 2913 2066 3209 1816
1469
+ Q 3506 1566 3506 1031
1470
+ Q 3506 472 3093 190
1471
+ Q 2681 -91 1863 -91
1472
+ Q 1516 -91 1145 -36
1473
+ Q 775 19 384 128
1474
+ L 384 978
1475
+ Q 719 816 1070 734
1476
+ Q 1422 653 1784 653
1477
+ Q 2113 653 2278 743
1478
+ Q 2444 834 2444 1013
1479
+ Q 2444 1163 2330 1236
1480
+ Q 2216 1309 1875 1350
1481
+ L 1678 1375
1482
+ Q 931 1469 631 1722
1483
+ Q 331 1975 331 2491
1484
+ Q 331 3047 712 3315
1485
+ Q 1094 3584 1881 3584
1486
+ Q 2191 3584 2531 3537
1487
+ Q 2872 3491 3272 3391
1488
+ z
1489
+ " transform="scale(0.015625)"/>
1490
+ <path id="DejaVuSans-Bold-6f" d="M 2203 2784
1491
+ Q 1831 2784 1636 2517
1492
+ Q 1441 2250 1441 1747
1493
+ Q 1441 1244 1636 976
1494
+ Q 1831 709 2203 709
1495
+ Q 2569 709 2762 976
1496
+ Q 2956 1244 2956 1747
1497
+ Q 2956 2250 2762 2517
1498
+ Q 2569 2784 2203 2784
1499
+ z
1500
+ M 2203 3584
1501
+ Q 3106 3584 3614 3096
1502
+ Q 4122 2609 4122 1747
1503
+ Q 4122 884 3614 396
1504
+ Q 3106 -91 2203 -91
1505
+ Q 1297 -91 786 396
1506
+ Q 275 884 275 1747
1507
+ Q 275 2609 786 3096
1508
+ Q 1297 3584 2203 3584
1509
+ z
1510
+ " transform="scale(0.015625)"/>
1511
+ <path id="DejaVuSans-Bold-6e" d="M 4056 2131
1512
+ L 4056 0
1513
+ L 2931 0
1514
+ L 2931 347
1515
+ L 2931 1631
1516
+ Q 2931 2084 2911 2256
1517
+ Q 2891 2428 2841 2509
1518
+ Q 2775 2619 2662 2680
1519
+ Q 2550 2741 2406 2741
1520
+ Q 2056 2741 1856 2470
1521
+ Q 1656 2200 1656 1722
1522
+ L 1656 0
1523
+ L 538 0
1524
+ L 538 3500
1525
+ L 1656 3500
1526
+ L 1656 2988
1527
+ Q 1909 3294 2193 3439
1528
+ Q 2478 3584 2822 3584
1529
+ Q 3428 3584 3742 3212
1530
+ Q 4056 2841 4056 2131
1531
+ z
1532
+ " transform="scale(0.015625)"/>
1533
+ </defs>
1534
+ <use xlink:href="#DejaVuSans-Bold-48"/>
1535
+ <use xlink:href="#DejaVuSans-Bold-54" transform="translate(83.691406 0)"/>
1536
+ <use xlink:href="#DejaVuSans-Bold-54" transform="translate(154.154297 0)"/>
1537
+ <use xlink:href="#DejaVuSans-Bold-50" transform="translate(222.367188 0)"/>
1538
+ <use xlink:href="#DejaVuSans-Bold-20" transform="translate(295.658203 0)"/>
1539
+ <use xlink:href="#DejaVuSans-Bold-b7" transform="translate(330.472656 0)"/>
1540
+ <use xlink:href="#DejaVuSans-Bold-20" transform="translate(368.460938 0)"/>
1541
+ <use xlink:href="#DejaVuSans-Bold-74" transform="translate(403.275391 0)"/>
1542
+ <use xlink:href="#DejaVuSans-Bold-79" transform="translate(451.078125 0)"/>
1543
+ <use xlink:href="#DejaVuSans-Bold-70" transform="translate(516.263672 0)"/>
1544
+ <use xlink:href="#DejaVuSans-Bold-65" transform="translate(587.845703 0)"/>
1545
+ <use xlink:href="#DejaVuSans-Bold-64" transform="translate(655.667969 0)"/>
1546
+ <use xlink:href="#DejaVuSans-Bold-20" transform="translate(727.25 0)"/>
1547
+ <use xlink:href="#DejaVuSans-Bold-4a" transform="translate(762.064453 0)"/>
1548
+ <use xlink:href="#DejaVuSans-Bold-53" transform="translate(799.271484 0)"/>
1549
+ <use xlink:href="#DejaVuSans-Bold-4f" transform="translate(871.292969 0)"/>
1550
+ <use xlink:href="#DejaVuSans-Bold-4e" transform="translate(956.302734 0)"/>
1551
+ <use xlink:href="#DejaVuSans-Bold-20" transform="translate(1039.994141 0)"/>
1552
+ <use xlink:href="#DejaVuSans-Bold-72" transform="translate(1074.808594 0)"/>
1553
+ <use xlink:href="#DejaVuSans-Bold-65" transform="translate(1124.125 0)"/>
1554
+ <use xlink:href="#DejaVuSans-Bold-73" transform="translate(1191.947266 0)"/>
1555
+ <use xlink:href="#DejaVuSans-Bold-70" transform="translate(1251.46875 0)"/>
1556
+ <use xlink:href="#DejaVuSans-Bold-6f" transform="translate(1323.050781 0)"/>
1557
+ <use xlink:href="#DejaVuSans-Bold-6e" transform="translate(1391.751953 0)"/>
1558
+ <use xlink:href="#DejaVuSans-Bold-73" transform="translate(1462.943359 0)"/>
1559
+ <use xlink:href="#DejaVuSans-Bold-65" transform="translate(1522.464844 0)"/>
1560
+ </g>
1561
+ </g>
1562
+ <g id="legend_1">
1563
+ <g id="LineCollection_3">
1564
+ <path d="M 59.543678 44.938459
1565
+ L 59.543678 33.938459
1566
+ " style="fill: none; stroke: #087e8b; stroke-width: 2"/>
1567
+ </g>
1568
+ <g id="line2d_23">
1569
+ <g>
1570
+ <use xlink:href="#mc321cda826" x="59.543678" y="44.938459" style="fill: #087e8b; stroke: #087e8b"/>
1571
+ </g>
1572
+ </g>
1573
+ <g id="line2d_24">
1574
+ <g>
1575
+ <use xlink:href="#mc321cda826" x="59.543678" y="33.938459" style="fill: #087e8b; stroke: #087e8b"/>
1576
+ </g>
1577
+ </g>
1578
+ <g id="line2d_25">
1579
+ <path d="M 48.543678 39.438459
1580
+ L 70.543678 39.438459
1581
+ " style="fill: none; stroke: #087e8b; stroke-width: 2; stroke-linecap: square"/>
1582
+ </g>
1583
+ <g id="line2d_26">
1584
+ <g>
1585
+ <use xlink:href="#m10e397791f" x="59.543678" y="39.438459" style="fill: #087e8b; stroke: #087e8b"/>
1586
+ </g>
1587
+ </g>
1588
+ <g id="text_18">
1589
+ <!-- August -->
1590
+ <g style="fill: #263445" transform="translate(79.343678 43.288459) scale(0.11 -0.11)">
1591
+ <defs>
1592
+ <path id="DejaVuSans-41" d="M 2188 4044
1593
+ L 1331 1722
1594
+ L 3047 1722
1595
+ L 2188 4044
1596
+ z
1597
+ M 1831 4666
1598
+ L 2547 4666
1599
+ L 4325 0
1600
+ L 3669 0
1601
+ L 3244 1197
1602
+ L 1141 1197
1603
+ L 716 0
1604
+ L 50 0
1605
+ L 1831 4666
1606
+ z
1607
+ " transform="scale(0.015625)"/>
1608
+ </defs>
1609
+ <use xlink:href="#DejaVuSans-41"/>
1610
+ <use xlink:href="#DejaVuSans-75" transform="translate(68.408203 0)"/>
1611
+ <use xlink:href="#DejaVuSans-67" transform="translate(131.787109 0)"/>
1612
+ <use xlink:href="#DejaVuSans-75" transform="translate(195.263672 0)"/>
1613
+ <use xlink:href="#DejaVuSans-73" transform="translate(258.642578 0)"/>
1614
+ <use xlink:href="#DejaVuSans-74" transform="translate(310.742188 0)"/>
1615
+ </g>
1616
+ </g>
1617
+ <g id="LineCollection_4">
1618
+ <path d="M 59.543678 61.084396
1619
+ L 59.543678 50.084396
1620
+ " style="fill: none; stroke: #587f25; stroke-width: 2"/>
1621
+ </g>
1622
+ <g id="line2d_27">
1623
+ <g>
1624
+ <use xlink:href="#m9f3afdf400" x="59.543678" y="61.084396" style="fill: #587f25; stroke: #587f25"/>
1625
+ </g>
1626
+ </g>
1627
+ <g id="line2d_28">
1628
+ <g>
1629
+ <use xlink:href="#m9f3afdf400" x="59.543678" y="50.084396" style="fill: #587f25; stroke: #587f25"/>
1630
+ </g>
1631
+ </g>
1632
+ <g id="line2d_29">
1633
+ <path d="M 48.543678 55.584396
1634
+ L 70.543678 55.584396
1635
+ " style="fill: none; stroke: #587f25; stroke-width: 2; stroke-linecap: square"/>
1636
+ </g>
1637
+ <g id="line2d_30">
1638
+ <g>
1639
+ <use xlink:href="#m6ad4daa390" x="59.543678" y="55.584396" style="fill: #587f25; stroke: #587f25; stroke-linejoin: miter"/>
1640
+ </g>
1641
+ </g>
1642
+ <g id="text_19">
1643
+ <!-- Node -->
1644
+ <g style="fill: #263445" transform="translate(79.343678 59.434396) scale(0.11 -0.11)">
1645
+ <defs>
1646
+ <path id="DejaVuSans-4e" d="M 628 4666
1647
+ L 1478 4666
1648
+ L 3547 763
1649
+ L 3547 4666
1650
+ L 4159 4666
1651
+ L 4159 0
1652
+ L 3309 0
1653
+ L 1241 3903
1654
+ L 1241 0
1655
+ L 628 0
1656
+ L 628 4666
1657
+ z
1658
+ " transform="scale(0.015625)"/>
1659
+ </defs>
1660
+ <use xlink:href="#DejaVuSans-4e"/>
1661
+ <use xlink:href="#DejaVuSans-6f" transform="translate(74.804688 0)"/>
1662
+ <use xlink:href="#DejaVuSans-64" transform="translate(135.986328 0)"/>
1663
+ <use xlink:href="#DejaVuSans-65" transform="translate(199.462891 0)"/>
1664
+ </g>
1665
+ </g>
1666
+ </g>
1667
+ </g>
1668
+ </g>
1669
+ <defs>
1670
+ <clipPath id="pb0c19a4416">
1671
+ <rect x="38.643678" y="25.030177" width="390.356083" height="227.677708"/>
1672
+ </clipPath>
1673
+ </defs>
1674
+ </svg>